2017-03-16 43 views
1

私はLinux Azure VMを作成しました。私はそれから私の家のIPアドレスにtraceroutesを送りたいと思います。しかし、tracerouteはすべてのホップでタイムアウトします。 私は、静的な静的IPアドレスを持つようにVMを設定しました。 また、すべてのポートに対してインバウンドとアウトバウンドのルールを設定します。Linux Azure VMからtraceroutesを送ることはできますか?

誰もが正常にtracerouteを送信するために、そこに設定する必要があります他に何を知っていますか?

興味深い事実は、トレースルートは、Windows ServerのAzureのVMからではなく、LinuxのUbuntuの16.04から成功するということです。

VMには、LinuxとWindowsの両方の静的IPが接続されています。

詳細:Windows Azure VMでは、最初の5ホップは応答しませんが、他のホップは応答しません。 Linux Azure VMでは、すべてのホップは応答しません。

答えて

1

tracertと異なる方法でtraceroute動作するため。
Windowsで 、tracertICMPに基づいており、私たちは外へAzureのVMからの接続をテストするためのtracertを使用することができます。
Linuxでは、tracerouteはデフォルトでUDPに基づいています。私たちはICMP上でtracerouteを動作させるためのパラメータを追加することができますが、私のテストではtracerouteがICMPで動作していても、とは異なり、tracertのです。回避策として

[email protected]:~# 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

+0

ありがとうございました。 Tracepathは本当にいくつかの結果を与えます。はい、最初のいくつかのホップは応答がありませんが、これはWindows Azure VMの動作と一貫しています。 –

+0

通常のtracerouteが動作しない理由(すべてのホップは返信しません)に関する説明があるかどうか疑問に思っています。 –

+0

@MaksymBondarenkoルータの1つが 'タイプ11(TTL期限切れ)'をブロックしたので、ルータの中央を見つけることはできませんが、パケットが最終的な宛先に到達したことがわかります。 –

1

Jason Ye - MSFTの情報が正しいですが、彼の答えは、実際にあなたの質問に答えていません。

Traceroueはデフォルトblocks all ICMP trafficで、アズールので、Azureの上では動作しません。 tracerouteは各ホップからICMPパケット(ICMP Time to Live expired)を受信することでホップを識別するため、ホップは表示されません。

これは、pingがインターネットからAzure内のマシンまで機能しないのと同じ理由です。

これを回避するには、give your VM an instance IP addressがあります。

+0

ありがとう!静的IPが実際にAzure LinuxとWindows VMに割り当てられていることに気付かなかった。静的IPがなければ、traceroutesはWindows上でも動作しません。 Linuxから送信されたときに、tracerouteコマンドがすべてのホップでタイムアウトする理由はまだ分かりません。 私はCAIDAのScamper:https://www.caida.org/tools/measurement/scamper/を使用してしまいました。詐欺師はうまくいきます。 –

関連する問題