更新:2024/10/30

ポート番号とは?ゆるーくわかりやすく解説

はるか
はるか
ポート番号は「出入り口」…番号の降られたドアみたいなもの。
ふゅか
ふゅか
家の住所がIPアドレスなら、ポート番号は部屋番号って感じで、対応してるの。

1. ポート番号とは何か?

ポート番号は、インターネットやネットワークを通じて、さまざまなデバイスやアプリケーション間でデータの送受信を管理するための「出入り口の番号」のようなものです。データがどこに向かうか、どのアプリケーションで処理されるべきかを特定するために使われます。

ネットワーク上のデバイスには、通常、IPアドレスという住所のようなものが割り振られています。しかし、IPアドレスだけでは、どのプロトコルで通信を行うかがわかりません。そこで、ポート番号を使って、データが正しい場所に届けられるようにします。IPアドレスが「家の住所」だとしたら、ポート番号は「部屋番号」のようなものと考えるとわかりやすいでしょう。

2. ポート番号の役割

2.1.  通信の「宛先」を特定する

ネットワーク上でデータが送受信される際、どのアプリケーションにデータを届けるべきかを特定するために、ポート番号が使用されます。例えば、あるデバイスがIPアドレスを持っているとしても、そのデバイス上で複数のアプリケーションが動作している場合、ポート番号がないとデータがどのアプリケーションに向けて送信されるべきかが分かりません。ポート番号は、送信先アプリケーションの通信を識別するための「宛先ラベル」として機能します。

2.2. 複数の通信を同時に処理する

ポート番号のおかげで、同じデバイス上で複数の通信を同時に行うことが可能です。たとえば、ブラウザでWebページを閲覧しながら、同時にメールを受信したり、ファイルをダウンロードしたりすることができます。それぞれの通信には異なるポート番号が割り当てられているため、データが適切なアプリケーションに分配され、混乱なく同時に処理が行われます。

2.3. サービスの種類を判別する

一般的なサービスには決まったポート番号が割り当てられており、これによってどのサービスが利用されているかを判別できます。たとえば、Webサイトの閲覧にはHTTP(ポート80)やHTTPS(ポート443)が使われます。また、メールの送信にはSMTP(ポート25)、ファイル転送にはFTP(ポート20と21)が割り当てられています。ポート番号によってサービスが区別されることで、ネットワーク通信がよりスムーズに行われるようになっています。

3. ポート番号の構造

ポート番号は0から65535までの範囲で指定されており、16ビットの番号として扱われます。この範囲内で、役割に応じて以下のように分類されています。

はるか
はるか
ポート番号、0から65535まである。範囲で役割が変わる。
ふゅか
ふゅか
へぇ、意外と多いんだね!具体的にはどう分かれてるの?
はるか
はるか
まず、「ウェル・ノウン・ポート」って0から1023までの範囲。これはよく使われるプロトコルに割り当てられてられる。

3.1. ウェルノウンポート (0-1023)

ウェルノウンポートとは著名なプロトコルに割り当てられるためのポート番号です。例えば、Webサイトの閲覧に使う「HTTP」はポート80、セキュリティを強化した「HTTPS」はポート443が使用されます。

3.2. 登録ポート (1024-49151)

IANAによって割り当てられるポート番号です。例えば、データベースの「MySQL」はポート3306が使われます。また、Jupyter-labを起動したときには、ポート番号8888が使われます。

3.3. ダイナミック/プライベートポート (49152-65535)

一時的な通信のために使用されるポートで、通常はクライアントが自動的に割り当てるため、特に決まった役割はありません。

ふゅか
ふゅか
じゃあ最後の範囲、49152から65535は?
はるか
はるか
それが「ダイナミック/プライベートポート」。一時的な通信のためのポートで、特定の役割はない。

4. ポート番号の具体例

4.1. HTTP通信

Webサイトを閲覧するときに使用するHTTPは、通常、ポート80を利用します。

4.2. HTTPS通信

暗号化された通信を行うために、ポート443が使用されます。

4.3. FTP (ファイル転送プロトコル)

ファイルのアップロードやダウンロードに使われ、ポート20および21が割り当てられています。

4.4. メールの送受信

SMTP(送信)はポート25、POP3(受信)はポート110、IMAPはポート143などが使われます。

5. ポートスキャンとセキュリティ

ポートは通信の入り口であるため、悪意のある攻撃者が侵入の手がかりを得ようとポートスキャンを行うことがあります。ポートスキャンは、開いているポートを見つけ出し、利用可能なポート番号を探る手法です。セキュリティの観点から、使用しないポートは閉じるか、ファイアウォールで保護することが重要です。

6. 関連した記事

PR