複数の方法を使用して、ポートを割り当てたり予約したりできます。
各種の方法は、以下の方法で対話します。
- TCPCONFIG および UDPCONFIG ステートメントの EPHEMERALPORTS パラメーター
- PORT および PORTRANGE ステートメント
- ポートは、PORT および PORTRANGE ステートメントでの特定の使用のために
予約できます。
- ポートは、PORT または PORTRANGE ステートメントによってプロトコルに
予約でき、そのプロトコルの一時ポートとしては使用できません。
ポートが、そのプロトコルの定義済み EPHEMERALPORTS 範囲内にもある場合、
スタックはそれらを一時ポートとして割り当てることはできません。
- GLOBALCONFIG ステートメントの EXPLICITBINDPORTRANGE パラメーター
- EXPLICITBINDPORTRANGE パラメーターは、シスプレックス全体にわたる
固有のポートの範囲を指定します。参加するスタックは、アプリケーションが明示的に
ポート 0 にバインドし、以下のアドレスのいずれかの場合に、この範囲から
ポートを割り当てることができます。
- IPv4 アドレス INADDR_ANY
- IPv6 無指定アドレス (in6addr_any)
- 最近に処理されたプロファイルまたは EXPLICITBINDPORTRANGE パラメーターを
指定する VARY TCPIP,,OBEYFILE コマンドは、シスプレックスのポートの範囲を
定義します。
- EXPLICITBINDPORTRANGE プール内にある明示的にバインド済みのポートは、
EXPLICITBINDPORTRANGE ポートとしてスタックによる割り当てには
使用できません。
- EXPLICITBINDPORTRANGE プールは、EPHEMERALPORTS 範囲内にある
必要はありません。
- EXPLICITBINDPORTRANGE プールは、EPHEMERALPORTS 範囲に
優先します。定義済み EPHEMERALPORTS 範囲内にある EXPLICITBINDPORTRANGE プール内のポートは、
スタックによって一時ポートとして割り当てることは
できません。EXPLICITBINDPORTRANGE プール内のポートは、
EXPLICBINDPORTRANGE の使用にのみ使用可能です。
- VIPADISTRIBUTE ステートメントの SYSPLEXPORTS パラメーター
- EPHEMERALPORTS 処理は、SYSPLEXPORTS 割り振りを制御します。
- 分散 DVIPA に SYSPLEXPORTS およびポート 0 が指定された状態でバインドが
行われた場合、カップリング・ファシリティーは、DVIPA とともに使用するために
シスプレックス・ポートのブロックを EPHEMERALPORTS 範囲からスタックに
割り当てます。スタックは、このブロックからポートを選択します。
- バインドが EPHEMERALPORTS 範囲から特定のポートを指定すると、
カップリング・ファシリティーは、DVIPA のシスプレックス・ポートとして
ポートを割り当てようとします。
- TCP/IP は、EPHEMERALPORTS 範囲をカップリング・ファシリティーと通信して、
シスプレックス・ポートの割り当てが正しい範囲内にあることを確実にします。
- FTP PASSIVEDATAPORTS ステートメントおよび PORTRANGE ステートメントの
AUTHPORT パラメーター
- FTP 構成ファイル内の PASSIVEDATAPORTS ステートメントは、FTP サーバーによって
使用されるポート番号の範囲を割り当てます。PASSIVEDATAPORTS 範囲は、
PORTRANGE ステートメントに AUTHPORT パラメーターを指定して
予約される必要があります。
- この範囲内のポートは、FTP サーバーでの割り当てにのみ
使用可能です。
- この範囲内にあるポートは、EPHEMERALPORTS 範囲内にある
必要はありません。
- この範囲内にあり、EPHEMERALPORTS 範囲内にもあるポートは、
一時ポートの割り当て時にスタックによって使用することはできません。
- BPXPRMxx 内の NETWORK ステートメントの INADDRANYPORT および INADDRANYCOUNT
パラメーター
- INADDRANYPORT および INADDRANYCOUNT パラメーターによって指定される範囲は、
PORT または PORTRANGE ステートメントによってジョブ名 OMVS に
制限される必要があります。これらのポートは、ユーザーがジョブ名 OMVS を持つまで
スタックによって割り当てられません。
- この範囲内にあるポートは、EPHEMERALPORTS 範囲内にある
必要はありません。
- この範囲内にあり、定義済み EPHEMERALPORTS 範囲内にあるポートは、
一時ポートの割り当て時にスタックによって使用することはできません。
これらの方法のいくつかを使用して予約されたポートは
スタックによって一時ポートとして使用できないため、使用可能な一時ポートの
実際の数が EPHEMERALPORTS 範囲内に指定されているポートの数と等しくならない
場合があります。Netstat STATS/-S コマンドを使用して、
スタックによって割り当てることができる一時ポートの実際の数を
表示することができます。Netstat STATS/-S レポートの CONFIGURED
EPHEMERAL PORTS フィールドは、
他の方法によって予約されているために、使用できない EPHEMERALPORTS 範囲内にある
ポートを考慮に入れます。このフィールドは、
スタックによって割り当てることができるポートの実際の数を
反映します。
例えば、TCP/IP プロファイルの以下の部分について考慮します。
GLOBALCONFIG EXPLICITBINDPORTRANGE 30200 100
;
TCPCONFIG EPHEMERALPORTS 30000 39999
;
UDPCONFIG EPHEMERALPORTS 30000 39999
;
PORT 30005 TCP TCPAPPL2
PORT 30015 TCP TCPAPPL3
;
PORTRANGE 30025 5 TCP TCPAPPL6
PORTRANGE 30100 50 TCP AUTHPORT ; FTP passive data ports
PORTRANGE 30500 300 TCP OMVS ; INADDRANYPORT/INADDRANYCOUNT ports
;
PORT 30010 UDP UDPAPPL2
PORT 30015 UDP UDPAPPL3
;
PORTRANGE 30030 5 UDP UDPAPPL6
PORTRANGE 30500 300 UDP OMVS ; INADDRANYPORT/INADDRANYCOUNT ports
この構成は、Netstat STATS/-S レポートの CONFIGURED
EPHEMERAL PORTS フィールドの以下の値のような結果となります。
d tcpip,tcpcs1,netstat,stats
EZD0101I NETSTAT CS V2R1 TCPCS1
.
.
.
TCP STATISTICS
.
.
.
CONFIGURED EPHEMERAL PORTS = 9543
EPHEMERAL PORTS IN USE = 0
EPHEMERAL PORTS MAX USAGE = 0
EPHEMERAL PORTS EXHAUSTED = 0
UDP STATISTICS
.
.
.
CONFIGURED EPHEMERAL PORTS = 9693
EPHEMERAL PORTS IN USE = 0
EPHEMERAL PORTS MAX USAGE = 0
EPHEMERAL PORTS EXHAUSTED = 0
END OF THE REPORT
TCP の場合、構成済みの一時ポートの合計数は 10000
(ポート 30000 から 39999) であり、この数字は以下の数量によって
削減されます。
- 100。GLOBALCONFIG EXPLICITBINDPORTRANGE 設定 (ポート 30200 から 30299) による
- 2。TCP 一時ポート範囲内にあるポートを持つ 2 つの PORT ステートメント
(ポート 30005 および 30015) による
- 355。TCP 一時ポート範囲内にあるポートを持つ 3 つの PORTRANGE ステートメント
(ポート 30025 から 30029、30100 から
30149、および 30500 から 30799) による
これらのポートを減算すると、CONFIGURED
EPHEMERAL PORTS 値が 9543 になります。CONFIGURED
EPHEMERAL PORTS 値は、EPHEMERALPORTS 範囲外のポートを含む
PORT および PORTRANGE ステートメントには影響
されません。
UDP の場合、構成済み一時ポートの合計数は 10000
(ポート 30000 から 39999) であり、この数は、以下の数量によって
削減されます。
- 2。UDP 一時ポート範囲内にあるポートを持つ 2 つの PORT ステートメント
(ポート 30010 および 30015) による
- 305。UDP 一時ポート範囲内にあるポートを持つ 2 つの PORTRANGE ステートメント
(ポート 30030 から 30034 および 30500 から 30799) による
これらのポートを減算すると、CONFIGURED
EPHEMERAL PORTS 値が 9693 になります。CONFIGURED
EPHEMERAL PORTS 値は、EPHEMERALPORTS 範囲外のポートを含む
PORT および PORTRANGE ステートメントには影響
されません。