仕組みを知る

ポート番号とは?IPアドレスとの違いと80・443の意味

ポート番号は、同じIPアドレスの中で、どのアプリやサービスに届けるかを見分ける番号です。80番、443番、URLでの見え方、ファイアウォールやVPN接続後の確認ポイントを一つずつ確かめます。

ポート番号とは?IPアドレスとの違いと80・443の意味

30秒でわかる答え

ポート番号は、同じIPアドレスの中で、どのアプリやサービスに届けるかを見分ける番号です。番号を変えただけで安全になるわけではなく、認証やアクセス制限なども必要です。

TERM PRIMER

先に知っておく言葉

ポート番号
同じサーバーの中で、どの窓口に通信を届けるかを表す番号です。
IPアドレス
ネットワーク上の機器やサーバーを見つけるための住所のような番号です。
HTTP
Webで「このページをください」というお願いと、データや結果を伝える返事をやり取りするためのルールです。
HTTPS
HTTPの通信を暗号化して、より安全にやり取りするためのしくみです。
サーバー
データを保存したり、ほかの端末に届けたりする役割を持つコンピューターです。
ファイアウォール
通してよい通信とそうでない通信を決めて、機器やネットワークを守る仕組みです。

URLからポート番号を探してみる

次のURLを見て、ポート番号がどこにあるか考えてみてください。

  • http://localhost:3000/dashboard
  • https://example.com/
  • https://example.com:8443/admin

1つ目は 3000、3つ目は 8443 が見えるポート番号です。2つ目は見えていませんが、HTTPSの一般的な入口として443番が使われることがあります。

建物の中で入口を分ける

イト

VPNトンネルを出たら、80番とか443番のドアが並んでいたよ

ユイ

IPアドレスだけでは、建物の中のどの受付かまでは決まらないんですね

ピコ

それがポート番号の入口だよ。同じ住所の中で、どのサービスに届けるかを分けるんだ

IPアドレスがサーバーの住所だとすると、ポート番号は建物の中にある受付番号です。同じサーバーでWeb、メール、管理用接続、開発用アプリなど複数のサービスが動く場合、どの入口に届けるかを番号で分けます。

第56話「ポート番号はどの入口を選ぶ?」では、VPNトンネルの出口に並ぶ番号付きドアを見ます。80番、443番、URLに出てくる :3000 のような表示が、画面のむこう側で何を指しているのかを一つずつ確かめます。

IPアドレスとポート番号で通信先を分ける

たとえば、同じIPアドレスのサーバーに、Webサイトの入口と管理用の入口があるとします。住所が同じでも、Webサイトに届ける通信と管理用の通信は別の受付へ向かいます。この受付を見分けるために使うのがポート番号です。

ラボのたとえでは、IPアドレスが建物の住所、ポート番号が建物内のドア番号です。住所だけでは建物までは行けますが、どのドアへ入るかまでは決まりません。

イトとユイとピコが、同じサーバー建物の中にある複数のサービス入口を見ている
ポート番号は、同じIPアドレスの中でどのサービスに届けるかを分ける入口番号です。

ポート番号の役割とよく見る番号

ここでいうポート番号は、USBやLANケーブルを差す物理的な穴の番号ではありません。TCPやUDPの通信で使う番号で、同じ数値でもTCPとUDPは別に扱います。通信の区別には、送信元・宛先のIPアドレスとポート番号、通信方式などが関わります。

代表的なポート番号には、よく知られたものがあります。

ポート番号よく使われる用途
80HTTPのWeb通信
443HTTPSのWeb通信
22SSHなどの管理用接続
25メール送信に関係するSMTP
53DNS
3000, 5173など開発中のローカルサーバーで見かけることがある

ただし、ポート番号と用途の対応は設定によって変わる場合があります。80番がHTTP、443番がHTTPSとしてよく使われますが、開発環境や社内システムでは別の番号を使うこともあります。

URLのポート番号が表示・省略される仕組み

ポート番号は、URLに見える場合があります。

たとえば、次のようなURLです。

  • http://localhost:3000/
  • https://example.com:8443/

localhost:3000 の 3000 がポート番号です。開発中のWebアプリを手元で動かすとき、3000、5173、4321 のような番号を見ることがあります。

一方で、通常のWebサイトではポート番号がURLに出ないことも多いです。https://example.com/ のように書いた場合、HTTPSなら一般的に443番が使われます。HTTPなら一般的に80番です。よく使う番号は省略されることがあります。

マコト

URLに見えないときでも、裏側では入口番号が使われている場合があるんだね

ユイ

よく使う番号は省略されることがある、と考えると見え方がつながりますね

IPアドレス・ドメイン・ポート番号の関係

Webページを開くとき、いくつかの情報が組み合わさります。

言葉役割のたとえ
ドメイン名人が読みやすい建物名
IPアドレス通信で使う建物の住所
ポート番号建物内のサービス入口
パス入口に入ったあとのページや場所

たとえば、https://example.com/articles/ なら、example.com という名前をIPアドレスへ結び、HTTPSの入口である443番へ向かい、さらに /articles/ という場所を取りに行く、と考えられます。

もちろん実際のWeb通信では、DNS、TLS、HTTP、サーバー設定などが関係します。複数のサーバーへの配信はCDNとはでも確認できます。ポート番号だけで全部が決まるわけではありませんが、「同じ住所の中の入口を分ける番号」と押さえると、URLとは や IPアドレスとは の見方も楽になります。

マコトとピコが、建物名カード、住所マーカー、建物内の入口へ進む流れを立体模型で見ている
Web通信では、名前、住所、サービス入口、ページの場所が組み合わさって目的地へ進みます。

受け手だけでなく、送り手側にもポート番号があります。端末が一時的な番号を選ぶ場合があり、相手が443番だから自分も443番を使う、という決まりではありません。ブラウザのタブ一つに、必ずポート一つを固定で割り当てるわけでもありません。番号だけで通信内容の正しさや安全性が証明されるものではない点も押さえます。

接続トラブルで見るポイント

ポート番号は、接続できないときの確認にも出てきます。

たとえば、VPNへつながったのに社内の管理画面が開かない場合、VPN自体は動いていても、目的のサービスのポートに届いていない可能性があります。ファイアウォールが特定のポートを止めている、サーバー側でサービスが起動していない、URLのポート番号が違う、といった原因が考えられます。

確認するときは、次のように分けます。

  1. IPアドレスやドメイン名は合っているか
  2. 目的のサービスはどのポート番号を使うか
  3. URLに必要なポート番号が入っているか
  4. サーバー側でそのサービスが動いているか
  5. ファイアウォールやVPNの設定で止まっていないか
  6. HTTPとHTTPSを取り違えていないか

利用者としては、管理者から案内されたURLを正しく使うことが入口です。運用者や開発者としては、サーバーの待ち受け設定、ファイアウォール、リバースプロキシ、TLS設定なども関係します。

ポート番号で注意すること

ポート番号は入口を示しますが、入口を開ければ安全という意味ではありません。

外から見えるポートを増やすほど、確認すべき入口も増えます。不要なサービスを公開しない、管理用の入口を守る、認証やアクセス制限を設定する、といった運用が必要になります。

また、ポート番号を変えただけで安全になるわけでもありません。知られにくくなる場合はありますが、認証、更新、権限、ログ確認などの基本を置き換えるものではありません。

ポート番号でよくある疑問

Q1. ポート番号を一文でいうと?

ポート番号は、同じIPアドレスの中で、どのアプリやサービスに届けるかを見分ける番号です。

Q2. HTTPSでよく使われるポート番号は?

443番です。HTTPでは80番がよく使われます。

Q3. ポート番号を変えれば安全になりますか?

それだけで安全とは言えません。認証、権限、ファイアウォール、更新なども合わせて考えます。

LAB WHITEBOARD

自分の言葉で説明してみよう

「ポート番号がIPアドレス内のサービス入口を分ける番号であること、URLで見える場合、HTTP/HTTPSとの関係、接続トラブル時の確認ポイントを説明できるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。

編集部の実践ガイド

初めてのレンタルサーバーの選び方

自分でサイトを作ってみたくなったら、サーバーとドメインの選び方を確認できます。