记录一次 OpenStack 集群在创建虚机后无法获取 IP 的问题
现象
所有的组件状态都是正常工作的,DHCP 服务正常工作,在个个虚拟网络设备端口抓包,发现 OpenVSwitch 上 DHCP 包可以通行,虚机获取 DHCP Discover 请求可以正常发出,但是无法收到回包。
抓包命令
tcpdump -i eth0 udp port 67 or port 68 -vvv
抓包点
网络节点上对应的网络空间的的 DHCP 服务网卡上、br-int、patch、虚机的网桥、虚机两端的 veth-pair 设备。
异常点
从虚机中发出的 DHCP Discover 包在进入到网桥上后就不出去了不知道跑哪里去了。
问题推理
关于 OpenStack 上虚机为啥要接网桥再接 br-int 上这个迷惑的行为稍有过研究的同学就会知道这个是由于 OpenStack 的安全组是通过 iptables 规则生效的,但是 iptables 不能作用于 OVS。那么可以怀疑的是上面的iptables出现了问题。
问题确认
由于此 OpenStack 机器安装是发生的错误,Kolla 对于 Docker 的配置错误,没有正确的清理 docker 的 iptables 规则导致网络不同。
处理方案
清空 iptables 上的规则,重启网络即可(重启机器)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通