web-dev-qa-db-ja.com

ドロップされたパケットの送信元IPを追跡する

CentOS 7を実行しているLinuxサーバーがあり、RXドロップパケット数が増え続けるという問題に直面しています。ネットワーク内のケーブル/コネクタの不良が原因である可能性があります。ただし、すべての接続をチェックして問題を見つける方法はありません。ドロップされたパケットがどのIPから送信されているかを確認する方法はありますか?

3
Gustavo Silva

nmap を使用すると、ネットワークに関するさまざまな情報を取得できます。これは、パケット損失の追跡に非常に役立ちます。 --packet-traceオプションは、すべてのパケットを追跡するのに役立ちます。オンラインで利用可能なnmapを使用するための例とガイドは多数ありますが、開始する簡単な方法は次のようになります。

nmap -sP --packet-trace 192.168.1.0/24

ネットワークをスキャンしてホストを探し、タイムアウトが発生した場合はパケットを追跡しますローカルネットワークでこのようなものを取得しました

 nsock_read(): Read request from IOD #1 [192.168.1.42:53] (timeout: -1ms) EID 66

Nmap呼び出しは、さまざまな方法でカスタマイズおよびスクリプト化して、ネットワークに関する詳細情報を取得し、接続不良を取り除くことができます。

nmapに加えて、 wireshark と呼ばれるグラフィカルツールがあります。これは、ドロップされたパケットの不良リンク/ソースの検索など、ネットワークプロファイリングタスクのホスト全体に使用できます。

使用するスイッチとネットワークハードウェア、およびアクセスレベルによっては、環境内のスイッチに組み込まれている管理インターフェイスを使用して、パケットのドロップ率が異常に高い物理ポートを探すことができる場合があります。特定のブランドの管理可能なスイッチでは、この種のタスクはおそらくスクリプト化/自動化することさえできます。このような操作の正確なセマンティクスは、特定のネットワークハードウェアと構成によって異なります。 Simple Network Management Protocol (SNMP)を使用する適切な種類の環境では、あまり手間をかけずにネットワークからこのすべての情報(物理スイッチポートでドロップされたパケットなど)を収集する新しい方法かもしれません。

編集:上記の例では EIDはDNSリソースレコード(RR) であり、Endpoint IDentifier(EID)の略語です。

5
Matt