<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>CNI on Ops FreeEdge</title>
    <link>https://ops.freeedge.uk/tags/cni/</link>
    <description>Recent content in CNI on Ops FreeEdge</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 03 Apr 2026 18:30:00 +0000</lastBuildDate>
    <atom:link href="https://ops.freeedge.uk/tags/cni/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Tailscale Kubernetes CNI 插件：Tailscale 作为 Kubernetes 网络 Overlay</title>
      <link>https://ops.freeedge.uk/posts/tailscale-kubernetes-cni-plugin-network-overlay/</link>
      <pubDate>Fri, 03 Apr 2026 18:30:00 +0000</pubDate>
      <guid>https://ops.freeedge.uk/posts/tailscale-kubernetes-cni-plugin-network-overlay/</guid>
      <description>&lt;h2 id=&#34;引言&#34;&gt;引言&lt;/h2&gt;
&lt;p&gt;Kubernetes CNI（容器网络接口）插件是为 Pod 提供 pod 间通信、服务发现和网络策略的核心组件。Tailscale 作为基于 WireGuard 的零配置安全网络，能否充当完整的 Kubernetes CNI 插件，将 tailnet 转变为 Pod 的网络 overlay？&lt;/p&gt;
&lt;p&gt;Tailscale &lt;strong&gt;官方并未提供 CNI 插件&lt;/strong&gt;，但社区实现与 Tailscale 官方 Kubernetes 集成使其成为可能。本文深入解析社区 CNI 实现、官方替代方案、权衡取舍以及实操指南。&lt;/p&gt;
&lt;h2 id=&#34;什么是-kubernetes-cni-插件&#34;&gt;什么是 Kubernetes CNI 插件？&lt;/h2&gt;
&lt;p&gt;CNI 插件在 Pod 创建/删除时配置网络接口。主流 CNI 包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Calico/Flannel&lt;/strong&gt;：Overlay 网络（VXLAN）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cilium&lt;/strong&gt;：基于 eBPF&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multus&lt;/strong&gt;：多网络支持&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Tailscale CNI 的核心能力：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;为 Pod 分配 Tailscale IP&lt;/li&gt;
&lt;li&gt;将 Pod 流量通过 Tailscale mesh（DERP 中继或直接 WireGuard）路由&lt;/li&gt;
&lt;li&gt;无需 VPC 对等互连即可实现跨集群/节点安全通信&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;社区-tailscale-cnirmb938tailscale-cni&#34;&gt;社区 Tailscale CNI：rmb938/tailscale-cni&lt;/h2&gt;
&lt;p&gt;主要社区项目为 &lt;a href=&#34;https://github.com/rmb938/tailscale-cni&#34;&gt;rmb938/tailscale-cni&lt;/a&gt;（概念验证，非生产级）。&lt;/p&gt;
&lt;h3 id=&#34;系统要求&#34;&gt;系统要求&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;所有 Kubernetes 节点上已安装并运行 Tailscale（&lt;code&gt;tailscale up&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;Kubernetes 集群已配置 pod-network-cidr（如 &lt;code&gt;kubeadm init --pod-network-cidr=172.18.0.0/16&lt;/code&gt;）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;安装步骤&#34;&gt;安装步骤&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;构建并发布 Docker 镜像&lt;/li&gt;
&lt;li&gt;部署 Kustomize 清单，覆盖镜像地址&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;局限性&lt;/strong&gt;：&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
