エフェメラルポート
読み:エフェメラルポート
外語:ephemeral port

 リモート(サーバーなど)宛にリクエストを投げる際に使われるポート。ephemeralは、短命、儚い、などの意。
目次

概要
 サーバーのポート番号は基本的に固定である。例えば、Webサーバーであれば概ね80番である。
 対して、クライアント側は何番でも構わないため、他のプロセスと重複しないように自由に番号が決められる。この時のポートをエフェメラルポートという。

特徴

ポート範囲
 TCPは状態遷移があるため、ポートが一つのみだと一回使用したら長期間使えなくなる。そこで、一定の範囲内で番号を振ることになる。
 どの範囲の番号を使うかは、オペレーティングシステム(OS)、より具体的にはソケットの実装による。
 現在IANAは、49152-65535の範囲を推奨しており、実装は随時この範囲内に設計を変更するようになっている。
 サーバーを稼働させる場合は、このエフェメラルポートを避けてポート番号を設定することになる。サーバーを設計する場合、1024-5000のポートを待ち受けに使うとエフェメラルポートと競合する可能性が高くなるので注意が必要である。

Windows
 Microsoft Windowsでは、一般に次の範囲が使われる。
 この仕様は、古いBSDソケットの実装仕様を引き継いだものである。
 なお、Windows Vista以降では、IANAの推奨通り49152〜65535に仕様変更されている。

FreeBSD
 FreeBSDでは、FreeBSD 5.0からIANAの推奨通りに仕様変更が行なわれた。次の範囲が使われる。
 従来(1024〜5000)と比較して、並列に出ていくことができる接続/ストリームの数が大幅に増加した。
 なお、この範囲は/etc/rc.confにおいて、変更することが可能である。
 ip_portrange_first=49152
 ip_portrange_last=65535

再検索