1

私は単純な tcp サーバー プログラムを作成し、ポート 80 でリッスンするようにしました。

netstat -tulpn|grep "tcp"

TCP サーバーのリッスン ポートがランダムなポートに変更されますが、80 には変更されません。

のような他のポートを試してみ2000ました。tcp サーバー プログラムは正常に動作し、そのポートでリッスンできますが、でき80ません。

ポート 80 でリッスンしている他のプロセスがあるかどうかを確認しました。最初は がありましたがhttpd、強制終了しましたが、TCP サーバーはポート 80 でリッスンできません

何台か試してみましたが現象は同じです 何か原因はありますか?私のプログラムがポート80でリッスンする方法は?

4

2 に答える 2

3

1024 未満のポートは制限されています。ただ遊んでいるだけなら、プログラムをルートとして実行するのは簡単ですが、セキュリティ上の理由からルートとして実行したくないが制限付きポートにバインドできるアプリケーションを作成したい場合は、Linux 機能システムを調べてください。

setcapLinux でユーティリティを使用する方法に関する回答へのリンクを次に示します。.

于 2013-04-24T15:32:09.080 に答える
1

1024 未満のポートをリッスンするには、root になる必要があります。

于 2013-04-24T15:11:11.353 に答える