Linux虚拟机ping能通traceroute不可达原因

  在进行网络调试的时候,发现属于同一网段的两台主机,一台是windows虚拟机、一台linux虚拟机,traceroute同一目的IP的时候,windows能够完整打印出整个路由路径,而linux则打印两跳之后就显示星号不可达了。
  由于两台主机属于同一网段,所以中间网络的ACL策略是一样的,不会是策略差异的问题。

  原因是:linux虚拟机在traceroute时,默认使用UDP报文,而不是使用ICMP报文;而防火墙为了方便网络调试是放行了ICMP报文,但没有放行UDP报文,这就导致了linux虚拟机的traceroute报文(UDP)被防火墙拦截了,windows虚拟机的traceroute报文(ICMP)正常通行。

  解决方法:linux虚拟机在traceroute的时候可以加上选项-I,则traceroute会使用ICMP报文发送。
traceroute -I 192.168.1.1

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容