1つのPCから別のPCにUDPパケットを送信しています。 Wire Sharkを使用してアクティビティ全体を監視しています。しばらくの間、あるシステムから別のシステムへのパケットのスムーズな送信があることに気づきました。その後、突然ICMP
パケットにエラー'port unreachable'
が表示され始めます。その後、しばらくの間それらは消え、UDPパケットのスムーズな送信が再びあります。次に、これらのICMPパケットは同じ「ポート到達不能」エラーで再び表示されます。その後、これらのICMPパケットは再び消えます。そして、これは定期的に続きます。
誰もがその理由である可能性があることをいくつかの光を当てることができますか?.
ポート到達不能メッセージに関連付けられている可能性のある奇妙なエラーの1つは、通常は動作している会話がポート到達不能メッセージによって中断されたときに見られます。会話を調べると、到達不能なポートが問題なく機能していたことがわかります。フレームがポート番号を行き来していたとき、突然-ポート到達不能。これは、レポートしているホストの過負荷状態またはプロセスの優先順位の構成の問題を示しています。問題のプロセスはメモリからスワップアウトされ、到達不能の表示を回避するのに十分な速さでスワップバックできませんでした。
ソース: https://www.savvius.com/resources/compendium/tcp_ip/unreachable#port_unreachable
これが発生する理由は、そのポートで待機するプロセスがレシーバーにないためです。
ソケットが開いているクライアントがあり、そのポートに対してbind()を実行している必要があります。