初めに
Web技術を学び始めてすぐに
「ポート番号(Port Number)」というを目にすると思います。
よく部屋番号と比喩されて解説される記事を見かけますが、
それだけではイメージが掴めなかったので、より具体的な事例や比喩を交えて解説していきます。
(何となくでもイメージできるように知ることが目的のため、厳格や正確性に欠ける部分が生じます、ご了承ください🙇)
まずはイメージをざっくりと掴もう!
ポート番号とは 「どのサービス、アプリケーションがどの通信を受け取るかを識別するための番号」 です。
① マンションの部屋番号と郵便受け
早速何言ってんだお前ってなりますよね、もう少しだけお付き合いください
マンションにはたくさんの部屋がありますが、それぞれ 部屋番号(101号室、202号室など) が割り振られています。
郵便配達員が 「102号室の人に荷物を届けたい」 と思ったら、
- 住所(IPアドレス)でマンション全体を特定
- 部屋番号(ポート番号)で特定の人を識別
という流れで荷物を届けることができます。
このように、ポート番号は 特定のサービスを区別するための部屋番号 のような役割を果たしています。
② レストランの注文カウンター
レストランでは「受付窓口」が複数あります。
す○家を想定しましょう(レストラン...?)
- 注文カウンター(注文用、券売機とか)
- 受け取りカウンター(料理の受け取り)
それぞれ 異なる目的の窓口 があり、正しいカウンターを利用しないと適切な対応が受けられません。
コンピュータも同じように、
- Webの通信(HTTP/HTTPS)はポート80/443
- メール送信はポート25
- リモート接続はポート22(SSH)
といったように、異なるサービスごとに 決められたポート番号 を使っています。
少し踏み込んでみよう
ポート番号についてもっと詳しくなるために、以下の前提知識が必要です。
・IPアドレス
・プロセス
※少々の前提知識がある方向けの説明になるので、全くわからない場合はここはスキップしてください🙇
ネットワーク上で通信が発生する場合、IPアドレスの指定が必須でしたよね。
それがよく住所と例えられますね。
では先ほどの説明でした部屋番号ってなんでしょう...?
住所であるIPアドレスだけで十分じゃね?
と鋭い方は思ったかもしれません。
ここでも簡単な説明にとどめますが
それぞれのアプリケーションを区別するためです。
例えば、
- Chromeでブラウザ検索して
- Icloudメールでメールのやり取りして
- Spotifyで音楽聞いて
と、同時にいろんなアプリケーションを利用するじゃないですか?
このそれぞれのアプリケーションの実行単位をプロセス
といい
このプロセスに対しそれぞれポート番号を割り当てることで通信が正しくできます。
Chromeで検索して帰ってきたレスポンスがSpotifyに来たら困りますよね?(そもそも受け取れるようにはなっていないです、これもポート番号のおかげと言えますね)
という感じです
いろんなポート番号を見てみよう
① よく使われるポート番号
ポート番号 | プロトコル | 役割・用途 |
---|---|---|
80 | HTTP | Webページの閲覧 |
443 | HTTPS | 安全なWeb通信 |
21 | FTP | ファイル転送 |
25 | SMTP | メール送信 |
110 | POP3 | メール受信 |
22 | SSH | サーバー接続 |
53 | DNS | ドメイン名解決 |
このように、インターネットの通信は 適切なポート番号 を利用して行われています。
② ポート番号の分類
ポート番号は 0~65535 の範囲で定められ、以下のように分類されます。
-
ウェルノウンポート(0~1023):
- 一般的なサービス用のポート(例:HTTP, HTTPS, FTP)
-
登録済みポート(1024~49151):
- 特定のアプリケーションで使用(例:ゲームや専用ソフト)
-
ダイナミックポート(49152~65535):
- 一時的な通信(例:PCからサーバーに接続するときのランダムなポート)
まとめ
- ポート番号は「どのサービス、アプリケーションが通信を受け取るかを識別するための番号」。
- マンションの部屋番号やレストランのカウンターのように、適切な窓口を通して通信が行われる。
- 80番(HTTP)、443番(HTTPS)など、サービスごとに決まったポート番号がある。
- ポート番号は 0~65535 の範囲で、用途に応じて分類されている。
ポート番号の仕組みを理解すると、ネットワークやサーバーの動きがより分かりやすくなります!
ポート番号について以下の解説記事が非常に参考になるので見てみてください。
▼参考記事
補足
プロトコルについて詳しく知りたい方は、以下の記事も参考にしてみてください。