ポート番号
ポート番号とは各種サービスの窓口番号
ポート番号とはTCP/IP通信において、 サーバーが提供しているHTTPやFPTなどの各種サービス (プロトコル)を識別するための窓口番号です。
窓口番号は、役所や銀行をイメージするとわかりやすいと思います。 役所や銀行はいろんなサービスを提供していて、 サービスごとに窓口が複数用意されています。 そしてサービスを提供してもらう側は、 その窓口を通してサービスを受けます。
サーバーも同じです。 サーバーはHTTP、FTP、SSH、SMTPなど複数のサービス(プロトコル) を外部に提供しています。 IPアドレスからコンピュータを特定することはできますが、 どのサービス(プロトコル)にパケットを渡せばいいかまではわかりません。 どのサービス(プロトコル)を使うかを識別するための番号がポート番号です。
ポート番号の種類とプロトコル

ポート番号は16ビットの整数です。 0~65535まで用意されていて、 大きく3つに区別されます。
- 0~1023: ウェルノウンポート番号
- 1024~49151: 登録ポート番号
- 49152~65535: ダイナミック・プライベートポート番号
ポート番号を調べたい場合は、
IANA(Internet Assigned Numbers Authority)
のサイトでポート番号の一覧を確認できます。
Service Name and Transport Protocol Port Number Registry
ウェルノウンポート番号
「0~1023」までをウェルノウンポート番号(WELL KNOWN PORT NUMBERS)といい、 IANAによって利用するプロトコルが決められています。
よく使われるウェルノウンポート番号の一部を紹介します。
ポート番号 | 種別 | プロトコル | 概要 |
---|---|---|---|
20 | TCP | FTP | ファイル転送(データ) |
21 | TCP | FTP | ファイル転送(制御) |
22 | TCP | SSH | 遠隔操作の暗号化 |
23 | TCP | Telnet | 遠隔操作 |
25 | TCP | SMTP | メール送信 |
80 | TCP | HTTP | Webページ閲覧 |
110 | TCP | POP3 | メール受信 |
119 | TCP | NNTP | ニュース |
123 | UDP | NTP | 時間取得 |
143 | TCP | IMAP | メール受信 |
443 | TCP | HTTPS | HTTPの暗号化 |
登録ポート番号
「1024~49151」までを登録ポート番号(REGISTERED PORT NUMBERS)といい、 特定のサービス(ソフトウェア)ごとに割り当てられます。 登録ポート番号についてはIANAが登録を受け付けて、公開しています。
例えば、 データベースソフトとして有名な「MySQL」はポート番号「3306」、 「PostgreSQL」は「5342」です。
ダイナミック・プライベートポート番号
「49152~65535」までをダイナミック・プライベートポート番号 (DYNAMIC AND/OR PRIVATE PORTS)といい、自由に使える番号となっています。クライアント側のポート番号
これまで紹介したHTTPが80番、SMTPが25番といったポート番号については、 あくまで各種のサービスを提供しているサーバー側の話であって、 クライアント側(サービスを受ける側)は別の話になります。
クライアント側はセキュリティ等のために、 毎回ランダムにポート番号が割り当てられます。 そしてサーバーとの通信が終わるとポートが閉じられます。 例えば、ある通信のときは50142を割り当て、 次の通信の時には51823のようなランダムなポート番号を割り当てます。
使用するたびに動的にランダムなポート番号を開閉することで、 外部からの侵入のリスクを低くしています。