同一子网中两台Azure VM内容器通过辅助网卡通信失败求助
Azure容器辅助网卡跨VM Ping不通排查思路
基础网卡与IP验证
- 在容器内执行
ip addr,确认辅助网卡已成功移入命名空间,IP地址、子网掩码配置正确,且两台容器的辅助网卡处于同一网段(或跨子网时路由可达) - 先ping自身辅助网卡IP,验证网卡本身正常;再尝试ping同VM内其他容器的辅助网卡IP,排查本地容器网络是否存在问题
- 在容器内执行
Azure平台配置检查
- 确认两台VM的辅助网卡已启用IP转发:可通过Azure门户查看网卡的“IP配置”,或用CLI命令
az network nic show --name <网卡名称> --resource-group <资源组名称> --query 'enableIpForwarding'验证状态 - 检查网络安全组(NSG):包括VM网卡绑定的NSG和子网级NSG,确保入站、出站规则允许ICMP流量(ping使用的协议)
- 核对虚拟网络路由表:同子网场景默认路由即可,跨子网需确认路由表中存在指向目标子网的有效路由,无自定义路由拦截流量
- 确认两台VM的辅助网卡已启用IP转发:可通过Azure门户查看网卡的“IP配置”,或用CLI命令
容器命名空间网络验证
- 执行
ip netns exec <命名空间名称> ip route,查看容器内路由表,确认存在到目标辅助网卡网段的路由(默认路由或专属路由) - 检查容器内防火墙:用
ip netns exec <命名空间名称> iptables -L查看规则,确认没有阻止ICMP或目标网段的策略,必要时临时关闭防火墙测试连通性 - 确认网关配置:跨子网ping时,辅助网卡需配置正确的网关地址,且能ping通该网关
- 执行
数据包追踪定位
- 在源容器内运行
tcpdump -i <辅助网卡名称> icmp,捕获ping请求包,确认数据包已从辅助网卡发出 - 在目标VM的对应命名空间内执行
tcpdump,检查是否收到ping请求:未收到则排查Azure网络层的转发或NSG规则;收到但无回包则检查目标容器的路由、防火墙配置
- 在源容器内运行
内容的提问来源于stack exchange,提问作者Harsha
相关产品推荐
相关产品推荐

