是否可以从Linux Azure VM发送跟踪路由?

是否可以从Linux Azure VM发送跟踪路由?,linux,azure,traceroute,Linux,Azure,Traceroute,我已经创建了一个Linux Azure虚拟机。我想把跟踪路由从它发送到我的家庭ip地址。然而,跟踪路由在每一跳都超时。 我已将VM配置为具有公共静态IP地址。 并为所有端口制定入站和出站规则 有人知道为了成功发送跟踪路由还需要在那里配置什么吗? 一个有趣的事实是,跟踪路由从Windows服务器Azure VM成功,但不是从Linux Ubuntu 16.04成功 VM在Linux和Windows两种情况下都连接了静态IP 还有一个细节:在WindowsAzure虚拟机上,前5个跃点不响应,但其他

我已经创建了一个Linux Azure虚拟机。我想把跟踪路由从它发送到我的家庭ip地址。然而,跟踪路由在每一跳都超时。 我已将VM配置为具有公共静态IP地址。 并为所有端口制定入站和出站规则

有人知道为了成功发送跟踪路由还需要在那里配置什么吗?

一个有趣的事实是,跟踪路由从Windows服务器Azure VM成功,但不是从Linux Ubuntu 16.04成功

VM在Linux和Windows两种情况下都连接了静态IP


还有一个细节:在WindowsAzure虚拟机上,前5个跃点不响应,但其他跃点响应。在Linux Azure VM上,每个跃点都不会应答。

因为
tracert
traceroute
的工作方式不同。
在windows中,
tracert
基于ICMP,我们可以使用tracert测试从Azure VM到外部的连接。
但在Linux中,
traceroute
默认基于UDP。我们可以添加一个参数使traceroute在ICMP上工作,但在我的测试中,即使traceroute在ICMP中工作,它也与tracert不同

root@ubuntu:~# traceroute -I 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  google-public-dns-a.google.com (8.8.8.8)  1.599 ms  1.593 ms  1.783 ms

作为一种解决方法,我们可以使用其他工具来测试连接,例如,
tracepath

,因为
tracert
traceroute
的工作方式不同。
在windows中,
tracert
基于ICMP,我们可以使用tracert测试从Azure VM到外部的连接。
但在Linux中,
traceroute
默认基于UDP。我们可以添加一个参数使traceroute在ICMP上工作,但在我的测试中,即使traceroute在ICMP中工作,它也与tracert不同

root@ubuntu:~# traceroute -I 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  google-public-dns-a.google.com (8.8.8.8)  1.599 ms  1.593 ms  1.783 ms
作为一种解决方法,我们可以使用其他工具来测试连接,例如,
tracepath

的信息是正确的,但他的答案实际上并没有回答您的问题

默认情况下,Traceroue在Azure上不工作,因为Azure。由于跟踪路由通过从每个跃点接收ICMP数据包(ICMP生存时间已过期)来识别跃点,所以您看不到任何跃点

这也是为什么ping不能在Azure中从互联网到机器之间工作的原因

要解决这个问题,你可以。

的信息是正确的,但他的答案实际上并没有回答你的问题

默认情况下,Traceroue在Azure上不工作,因为Azure。由于跟踪路由通过从每个跃点接收ICMP数据包(ICMP生存时间已过期)来识别跃点,所以您看不到任何跃点

这也是为什么ping不能在Azure中从互联网到机器之间工作的原因


要解决这个问题,您可以。

谢谢Jason。Tracepath确实给出了一些结果。是的,前几个跃点没有回复,但这与Windows Azure VM行为一致。我想知道您是否有一些解释,说明为什么通常的跟踪路由不工作(所有跃点都不回复)。@MaksymBondarenko似乎有一个路由器阻塞了
类型11(TTL过期)
,因此我们找不到路由器的中间,但是我可以看到包裹到达了最终目的地。谢谢杰森。Tracepath确实给出了一些结果。是的,前几个跃点没有回复,但这与Windows Azure VM行为一致。我想知道您是否有一些解释,说明为什么通常的跟踪路由不工作(所有跃点都不回复)。@MaksymBondarenko似乎有一个路由器阻塞了
类型11(TTL过期)
,因此我们找不到路由器的中间,但是可以看到包裹到达了最终目的地。谢谢Malt!我忘了注意到静态IP实际上已分配给Azure Linux和Windows VM。如果没有静态IP,跟踪路由即使在Windows上也无法工作。从Linux发送traceroute命令时,为什么每个跃点上的traceroute命令都会超时,现在还不清楚。我最终使用了CAIDA的Scamper:。斯坎普很好用。谢谢你,麦特!我忘了注意到静态IP实际上已分配给Azure Linux和Windows VM。如果没有静态IP,跟踪路由即使在Windows上也无法工作。从Linux发送traceroute命令时,为什么每个跃点上的traceroute命令都会超时,现在还不清楚。我最终使用了CAIDA的Scamper:。斯坎珀很管用。