バインドできない (権限エラー) が、netstat には表示されない TCP/UDP ポート

バインドできない (権限エラー) が、netstat には表示されない TCP/UDP ポート

特定の TCP または UDP ポートをリッスンしようとすると、アクセス許可に関する奇妙なエラー メッセージ (またはバインドに使用されるプログラムによっては一般的なメッセージ) が表示されます。

ドイツ語のメッセージは「Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig」です。これは「アクセス許可によって禁止されている方法でソケットにアクセスしようとしました」という意味だと思います。 (一部のプログラムはより一般的なエラーを返すだけですが、これは ncat によって報告されるエラーです)。

影響を受けるポートは、再起動ごとに変わるようです。今回は、ポート 61974 ~ 63949 が影響を受けるようです。前回のセッションでは、ポート 63014 ~ 64989 が影響を受けました。(両方の範囲は、ちょうど 1976 ポートの長さです。) TCP と UDP の両方が同じポートで影響を受けます。

TCPView/netstat では、これらのポートに関して何も表示されません。nmap ポート スキャンでは、影響を受けるポートと影響を受けないポートの間に違いは見られませんでした。

このような動作の原因は何でしょうか?

答え1

試行錯誤(サービスをシャットダウンしてポートをバインドできるかどうかをテストする)を経て、原因はインターネット接続共有 (ICS) サービスどうやら、インターフェイスでこれを有効にしていたようです (テストに使用するホストされた Wi-Fi をインターネットで提供するため)。おそらく、それらのポートが NAT 用に予約されていたのでしょう。

一般的に、プログラムがポートをバインドしても、それをリッスンしないことは可能です。ポートをブロックすることはできますが、netstatには表示されません。私は別の質問このようなポート/プログラムを検出する方法について。

関連情報