はじめに
皆さんも開発の時によく見るであろう、このURL。
画像では8080番ですが、3000やら4000やら他の番号も見たことがあると思います。
① 通信プロトコル
② 自分のコンピュータ
③ ポート番号
今回は、このポート番号について、その意味と重要性を深く掘り下げていきます。
ポート番号とは
ポート番号は、ネットワークとコンピュータ間でのデータ転送時に使用される「ドア」に割り当てられる識別番号です。この番号によって、どのドアを通してデータが送受信されるかが決定されます。
ポート番号は以下の3つのカテゴリに分類されます。
- ウェルノウンポート(0〜1023)
- ユーザーポート(1024〜49151)
- ダイナミックポート(プライベートポート)(49152〜65535)
ウェルノウンポート
IANA(Internet Assigned Numbers Authority)という団体によって、あらかじめ用途が決められているポート番号です。
サービス名 | ポート番号 | 用途 |
---|---|---|
ssh | 22 | リモートログインと ファイル転送(セキュア) |
telnet | 23 | リモートログイン(非セキュア) |
smtp | 25 | メール送信 |
domain | 53 | DNSクエリと応答 |
http | 80 | ウェブサイトとウェブサービスのアクセス (非セキュア) |
https | 443 | ウェブサイトと ウェブサービスのアクセス(セキュア) |
レジスタードポート(ユーザーポート)
特定のアプリケーションなどが使用することになっているポート郡です。IANAが登録を受け付け、公開しています。
サービス名 | ポート番号 | 用途 |
---|---|---|
MySQL | 3306 | データベース管理とアクセス |
PostgreSQL | 5432 | データベース管理とアクセス |
Redis | 6379 | キャッシュとインメモリデータストア |
HTTPの 代替ポート |
8080 | 開発環境でのウェブサーバーアクセス |
HTTPSの 代替ポート |
8443 | 開発環境でのセキュアなウェブサービスの 代替アクセス |
ダイナミックポート/プライベートポート
IANAによる制約がないポート番号です。世界中の誰でも自由に設定することができます。
自作のWebアプリなどで、よくポート50000番などが利用されたりしますが、それは50000番がIANAの制約がないためです。
終わりに
ネットワークスペシャリストの試験やらいろんな試験でポート番号は問われます。
ポート番号を理解しておくことは、ネットワークのトラブルシューティング、セキュリティ強化、システム管理、ファイアウォール設定、アプリケーション開発における効率と安全性を向上させるために不可欠です。なので、しっかり覚えておきたいです!