GNU/Linux >> Linux の 問題 >  >> Linux

カスタム アプリの静的ポート番号を選択する方法は?

アプリケーションが実行される正確な種類の環境を予測できない場合は、気にしないでください。 1024 を超える任意の番号を選択し、構成可能にして、別のサービス/アプリケーションと競合した場合にユーザーが変更できるようにします。

もちろん、8080 (代替 HTTP) または 3128 (squid などのプロキシ)、1666 (perforce) などの非常に一般的なポートを回避することもできます。ここで既知のポートの包括的なリストを確認するか、/etc/services を参照してください。 .


ポート番号を気にせず、プログラムが実行されるたびに変更されることを気にしない場合は、リッスンする前にポートをバインドしないでください (または、バインドしたい場合はポート 0 でバインドします)。特定の IP アドレス)。どちらの場合も、空きポートを選択するよう OS に指示しています。

聞き始めたら、 getsockname を使用します 選択されたポートを確認します。ファイルに書き込んで画面に表示し、 fork を介して子に継承させることができます など


静的アプリケーションの場合は、/etc/services をチェックすることを検討してください あなたが使用している他のものと衝突せず、他の場所では一般的に使用されていないポートを見つけるため.

$ tail /etc/services
nimspooler      48001/udp                       # Nimbus Spooler
nimhub          48002/tcp                       # Nimbus Hub
nimhub          48002/udp                       # Nimbus Hub
nimgtw          48003/tcp                       # Nimbus Gateway
nimgtw          48003/udp                       # Nimbus Gateway
com-bardac-dw   48556/tcp                       # com-bardac-dw
com-bardac-dw   48556/udp                       # com-bardac-dw
iqobject        48619/tcp                       # iqobject
iqobject        48619/udp                       # iqobject

Linux
  1. 特定のコマンドにカスタムオートコンプリートを指定するにはどうすればよいですか?

  2. N 個のパケットに対してのみ Ping コマンドを実行する方法

  3. カスタム ポートとテキスト ファイルに Wireshark tshark コマンドを使用する方法

  1. Linux から Windows ターゲットへのクロスコンパイル用に Qt を構成するにはどうすればよいですか?

  2. Ubuntu 12.04でJenkinsインストールのポート番号を変更する方法

  3. フィッシュ シェルのカスタム プロンプトをインストール/作成するにはどうすればよいですか?

  1. pandomのインストール方法:Linux用の真の乱数ジェネレーター

  2. 反復回数を変更できるForループを作成するにはどうすればよいですか?

  3. 静的な名前で USB デバイスをバインドする方法は?