6

Scapyを使用して、TTL値を変更したダンプされたパケットを再生しています。TTL=1でも非常に奇妙な結果が得られています。

テスト時間を互いに離して実行すると、ICMP time-exceededメッセージで応答されたパケットの約40%から95%を取得できます。次に、未応答のパケットを再帰的に再生し、毎回、以前とほぼ同じ割合の応答済みパケットを取得できます。

何故ですか?

0.1秒間隔でパケットを送信しています。これで大丈夫ですよね?私のタイムアウト値は10秒です。これは非常に控えめなはずです。

ここで何が問題になっていますか?

4

1 に答える 1

5

あなたが言っていることは、基本的に、一定の時間内に到達できない非常に多くのホストしかテストできないということです。考えられる理由の 1 つは、多くのルーターが ICMP メッセージのレート制限を行っていることです。

ping他のことをする前に、ホストへの成功をテストする方がはるかに良いです。このようにして、到達可能性を確実に確認できます。欠点は、MS Windows がデフォルトで ping をブロックすることです。

最初にできない場合はping、プローブ間の時間を増やすか、ICMP メッセージを返すルーターの ICMP 到達不能率を上げる必要があります。

編集:

コメントによると、scapyのトラフィック処理能力が限界に達しているようです。過去にトラフィックを受信するためにバックグラウンドで送信scapyおよび生成することにより、スループットを改善しました。tcpdump

于 2012-06-05T18:28:09.883 に答える