K8s网络问题:容器发出的网络包无法通过宿主机物理网卡原创
2人赞赏了该文章
353次浏览
编辑于2021年07月30日 18:13:11
背景:k8s集群中的机器A上的容器A1无法连接宿主机所在网段的机器C
在容器中发出ping机器C的怕ping包,通过抓包命令抓取宿主机的物理网卡的所有icmp网络包(tcpdump -i 网卡名 icmp)发现没有任何icmp包,推断包并未到达物理网卡。于是抓取容器对应的虚拟网卡。
容器对应网卡的查询方法:、
查看容器IP,以红框为例子:
查看对应的路由,就可以看到对应的虚拟网卡:
通过抓包命令看数据包是否到达虚拟网卡。发现没有到达,由此推断是系统环境的网络参数没有正确设置,具体的设置方法
(XXX为自定义名字)
cat <<EOF > /etc/sysctl.d/XXX.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1EOF
sysctl --system
推荐阅读