「80番ポートって何?」「ポートフォワーディングって?」——ポートの概念を理解するとネットワーク設計が格段にわかりやすくなります。
ポートとは「建物の窓口番号」
IPアドレスが「建物の住所」だとすると、ポートは「その建物の何番窓口か」です。1台のサーバーで複数のサービスを同時に動かす際に、どのサービス宛のデータかを区別するために使います。
192.168.1.100:80 → Webサーバー(HTTP)
192.168.1.100:443 → Webサーバー(HTTPS)
192.168.1.100:22 → SSHサーバー
192.168.1.100:3306 → MySQLサーバー
# ポート番号の範囲
# 0〜1023 :ウェルノウンポート(OSの管理。root権限が必要)
# 1024〜49151:登録済みポート(一般的なアプリが使用)
# 49152〜65535:動的ポート(一時的な通信に使用)よく使うポート番号一覧
| ポート | プロトコル | サービス |
|---|---|---|
| 20, 21 | TCP | FTP(ファイル転送) |
| 22 | TCP | SSH(安全なリモート接続) |
| 25 | TCP | SMTP(メール送信) |
| 53 | TCP/UDP | DNS(名前解決) |
| 80 | TCP | HTTP(Web) |
| 110 | TCP | POP3(メール受信) |
| 143 | TCP | IMAP(メール受信) |
| 443 | TCP | HTTPS(暗号化Web) |
| 3306 | TCP | MySQL |
| 5432 | TCP | PostgreSQL |
| 6379 | TCP | Redis |
| 8080 | TCP | HTTPの代替(開発・プロキシ) |
Linuxでのポート確認
# 開いているポートを確認(ssコマンド推奨)
$ sudo ss -tuln
# -t: TCP -u: UDP -l: LISTEN状態 -n: 数値表示
Netid State Local Address:Port
tcp LISTEN 0.0.0.0:22 # SSH
tcp LISTEN 0.0.0.0:80 # HTTP
tcp LISTEN 0.0.0.0:443 # HTTPS
# プロセス名も表示
$ sudo ss -tulnp
# 特定ポートを使用しているプロセスを確認
$ sudo lsof -i :80
$ sudo lsof -i :22
# ポートが開いているか外部からチェック(ncコマンド)
$ nc -zv 192.168.1.100 80
$ nc -zv 192.168.1.100 22まとめ
- ポートはIPアドレスの「窓口番号」。1台のサーバーで複数サービスを区別する
- 0〜1023はウェルノウンポート。80(HTTP)・443(HTTPS)・22(SSH)・53(DNS)は必須知識
ss -tulnでListenしているポートを確認。-pでプロセス名も表示lsof -i :ポート番号で特定ポートを使用しているプロセスを特定できる
📋 Phase 3 ネットワーク基礎チートシートで全コマンドをまとめて確認できます。



コメント