Softlayer ワシントン データ センターでホスティングしているときに奇妙な問題が発生しました。
EC2 インスタンスから Softlayer のサーバーへのテスト:-
[root@EC2-box ~]# ping -f -c 100 MY-SL-BOX
PING MY-SL-BOX (MY-SL-BOX) 56(84) bytes of data.
..................................................
--- MY-SL-BOX ping statistics ---
100 packets transmitted, 50 received, 50% packet loss, time 743ms
rtt min/avg/max/mdev = 2.464/2.906/3.606/0.220 ms, ipg/ewma 7.505/2.927 ms
[root@EC2-box ~]#
EC2 インスタンスから www.softlayer.com (またはその他の Web サイト) へのテスト:-
[root@EC2-box ~]# ping -f -c 100 www.softlayer.com
PING www.softlayer.com (66.228.118.51) 56(84) bytes of data.
--- www.softlayer.com ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 1168ms
rtt min/avg/max/mdev = 35.143/35.485/36.216/0.211 ms, pipe 4, ipg/ewma 11.804/35.518 ms
[root@EC2-box ~]#
SoftLayer のサーバーから EC2 インスタンスへのテスト:-
[root@MY-SL-BOX ~]# ping -f -c 100 7EC2-box
PING 7EC2-box (7EC2-box) 56(84) bytes of data.
.................................................
--- 7EC2-box ping statistics ---
100 packets transmitted, 51 received, 49% packet loss, time 866ms
rtt min/avg/max/mdev = 2.067/2.378/2.679/0.131 ms, ipg/ewma 8.756/2.414 ms
softlayer のサーバーから www.softlayer.com インスタンスへのテスト:-
[root@MY-SL-BOX ~]# ping -f -c 100 www.softlayer.com
PING www.softlayer.com (66.228.118.51) 56(84) bytes of data.
....................................................
--- www.softlayer.com ping statistics ---
100 packets transmitted, 48 received, 52% packet loss, time 1424ms
rtt min/avg/max/mdev = 33.677/34.041/34.693/0.240 ms, pipe 4, ipg/ewma 14.386/34.083 ms
注: 上記のすべてのケースで、「-f」オプションを使用しない場合、パケット損失はまったく発生しません。7EC2-box と MY-SL-BOX は実際の IP です。ここに投稿するためにマスクしました。
サーバーから他の IP に traceroute を実行し、そこに表示されている最初のノードに ping -f を実行しても、50% のパケット損失が表示され、「-f」なしでは損失は表示されません。
サポートに問い合わせたところ、「-f」がなくても問題はないので、問題はないと言われました。
彼らは正しいのでしょうか?
外部ネットワークから任意のサイトへの「ping -f」で損失が表示されないのに、私のサイトだけ損失が表示されるのは奇妙です。
私はもう 1 時間検索していますが、パケット損失をテストするための詳細な手順を教えていただければ幸いです。
答え1
一部のマシン (ホスト、ファイアウォール、ルーター) では、ICMP の通過を許可する場合、過度の ping アクティビティによってパフォーマンス (CPU またはネットワーク) が低下するのを防ぐために、ICMP ping 要求/応答が抑制されます。適切な間隔を設定せずに -f を使用することは (ping の -i パラメーターを参照)、ほとんどの環境では推奨されません。これは、混乱を招く可能性があるためです (実際には -f -c 100 は、間隔を空けずに 100 回の ping 要求を連続して送信します)。自分のネットワークでは -f をパラメーターとして使用することはできますが (常に控えめな -c および/または -i パラメーターを使用)、他のほとんどのネットワーク管理者は自分のネットワークでそれを使用することを望みません。
答え2
Nmap を使用してパケット トレースを実行すると、パケットが失われている場所がわかる可能性があるので、お勧めします。
http://nmap.org/book/output-formats-commandline-flags.html#output-formats-ex-packettrace
別のアイデアとしては、少し遅くするために間隔を指定して実行してみることです。
ping -f -i 0.5 google.co.uk
これほど大量のパケット損失が発生しない場合は、ファイアウォールか何かがブロックしていることを示している可能性があります。
答え3
はい、-f フラッド オプションを削除してみます。おそらくファイアウォールがうまく機能していないのでしょう。通常、両方向で良好な ping を受信していますか? それぞれのトレース ルートはどうなっていますか?