2020-07-24T00:00+09:00
ポート番号とは??
データリンクのMACアドレス、IPのIPアドレスと同じように、トランスポート層にはポート番号があります。
- ・MACアドレス→同一のデータリンクに接続されたコンピュータを識別するためのもの
- ・IPアドレス→TCP/IPネットワークに接続されたホストやルーターを識別するためのもの
これらに対して、ポート番号は1台のコンピュータ内で通信を行っているプログラムを識別する際に使用されます。
コンピュータでは、Webブラウザや電子メール、sshでの接続など、様々なアプリケーションプログラムを実行できます。
トランスポートプログラムは、ポート番号を使い、これらのプログラムを識別し、データを渡します。
通信の識別
通信の識別はポート番号とIPアドレスを使用します。
「宛先IPアドレス」「送信元IPアドレス」「宛先ポート番号」「送信元ポート番号」を使用し、通信は識別されます。
🔵 同じコンピュータで2つのブラウザを使用し同じサーバー上のWebサービスを見ようとした場合
送信元ポート番号が異なるため、違う通信であることがわかります。
①
送信元IPアドレス | 宛先IPアドレス | TCP | 送信元ポート番号 | 宛先ポート番号 | データ |
---|---|---|---|---|---|
172.20.100.34 | 172.20.100.32 | 6 | 2001 | 80 | データ |
②
送信元IPアドレス | 宛先IPアドレス | TCP | 送信元ポート番号 | 宛先ポート番号 | データ |
---|---|---|---|---|---|
172.20.100.34 | 172.20.100.32 | 6 | 2002 | 80 | データ |
🔵 違うIPアドレスを持ったコンピュータで同じサーバー上のWebサービスを見ようとした場合
送信元IPアドレスが異なるため、違う通信であることがわかります。
①
送信元IPアドレス | 宛先IPアドレス | TCP | 送信元ポート番号 | 宛先ポート番号 | データ |
---|---|---|---|---|---|
172.20.100.34 | 172.20.100.32 | 6 | 2001 | 80 | データ |
②
送信元IPアドレス | 宛先IPアドレス | TCP | 送信元ポート番号 | 宛先ポート番号 | データ |
---|---|---|---|---|---|
172.20.100.33 | 172.20.100.32 | 6 | 2001 | 80 | データ |
ウェルノウンポート番号
HTTPやFTPなどよく使われるアプリケーションプロトコルには、使用するポート番号が決められています。
これをウェルノウンポート番号と言います。
0~1023まではウェルノウンポート番号として予約されています。
ウェルノウンポート番号はインターネットに公開するサービスでは、そのアプリケーションプロトコルやサービスのために使用することを推奨されています。
動的なポート番号の割当
クライアント側つまり、サービスを受ける、使用する側のポート番号は動的に割り当てることが出来ます。
OSが割当を自動的に行います。その際には、アプリケーションごとに違う値にし、ポート番号が必要になるたびにポート番号の数を増やします。
動的に割り当てるポート番号は49152~65535です。
参考文献
マスタリングTCP/IP入門編 第5版
http://e-words.jp/w/ウェルノウンポート.html#:~:text=ウェルノウンポートとは、TCP,から1023番のこと。