我是靠谱客的博主 震动摩托,最近开发中收集的这篇文章主要介绍tcpdump没有回包、内网地址和docker分配地址冲突问题排查和解决1 引入2 tcpdump3 route4 解决,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1 引入
起因是近期要开通某两个内网地址之间的网络策略。
这里假定A机器的地址是172.17.1.100
,B机器的地址是10.10.1.100
,我们需要172.17.1.100访问10.10.1.100
。
往常来说,首先找网络部门开通这两个地址之间的硬件防火墙和软件防火墙即可。但是这次网工帮我开通了,我就是telnet不通。
# 在172.17.1.100机器上执行
telnet 10.10.1.100 8000
2 tcpdump
使用tcpdump在B机器上抓包发现,接收到了数据包,但是没有回包:
# 在10.10.1.100机器上执行
tcpdump tcp port 8000 and host 172.17.1.100
3 route
然后在B机器上查看route,发现路由地址中172.17是docker的地址:
# 在10.10.1.100机器上执行
route -n
难怪没有回包,因为包发到docker的网段去了,并没有发到A机器。
4 解决
这里有两个解决方案:
- 修改docker的网段,这个适合docker上没有跑重要业务,把docker冲突的网段修改了就解决了
- 把这台机器上要访问的服务做一个代理转发
最后
以上就是震动摩托为你收集整理的tcpdump没有回包、内网地址和docker分配地址冲突问题排查和解决1 引入2 tcpdump3 route4 解决的全部内容,希望文章能够帮你解决tcpdump没有回包、内网地址和docker分配地址冲突问题排查和解决1 引入2 tcpdump3 route4 解决所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复