ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] 用于 Pod 的 IPv4 地址通常是从 RFC1918 私有地址块分配的,因此不可公开路由。 Cilium 会自动将离开集群的所有流量的源 IP 地址伪装为节点的 IPv4 地址,因为节点的 IP 地址已在网络上可路由 目前有两种方式实现IP地址伪装 1. 基于iptables(默认) 2. 基于eBPF >[danger] IPv6 流量目前不支持基于 eBPF 的伪装 # 必要条件 - [Cilium替换KubeProxy](./kubeproxy-free.md) 已完成 # 操作步骤 ```shell # 获取当前版本号 cilium_version=$(helm -n kube-system ls | awk '/cilium/ {print $NF}') echo $cilium_version # 备份上一次安装的参数 helm -n kube-system get values cilium > cilium_custom.yaml sed -i '1d' cilium_custom.yaml # 添加参数 cat <<EOF | tee -a cilium_custom.yaml >> /dev/null bpf: masquerade: true EOF # 修改参数 helm -n kube-system upgrade cilium cilium/cilium --version $cilium_version -f cilium_custom.yaml # 重启cilium kubectl -n kube-system rollout restart daemonset cilium kubectl -n kube-system rollout status daemonset cilium ``` # 验证 ```shell $ crictl logs `crictl ps --name cilium-agent -q` 2>&1 | egrep masquerade $ crictl exec -it $(crictl ps -name cilium-agent -q) cilium status | grep Masquerading ```