ZBLOG

容器内无法获取正确的 arp

问题描述:

在容器内执行 arp -n 命令,发现无法获取正确的 ARP 表信息,所有 MAC 地址都是同一个。

原因分析:

容器内部网络是隔离的,与宿主机器和外网之间需要经过 NAT 转换。在这个转换过程中,会改变 ARP 表信息。

解决方法:

  1. 在容器内使用 ip neigh show 命令查看邻居表信息,可以获取到正确的 MAC 地址。

  2. 使用 docker exec 命令进入宿主机器,在宿主机上执行 arp -n 命令即可获取正确的 ARP 表信息。

  3. 如果需要在容器内获取正确的 ARP 表信息,可以通过设置 Docker 网络模式为 host 模式来实现。这样容器就直接使用宿主机的网络,并且不需要进行 NAT 转换。例如:

   docker run --net=host ...

参考资料:

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://sdn.0voice.com/?id=922

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?