そういえば「ポート番号」って何? IPアドレスと何が違うのか:ポート番号とその役割【前編】
ポート番号は、インターネット経由での通信に欠かせない存在だ。その意味ではIPアドレスとも似ている。ポート番号はIPアドレスとはどこが異なるのか。その役割とは。
ネットワークに関わる担当者はもちろん、ネットワークが専門ではない人でも、インターネットやPCを使う中で「ポート番号」を耳にしたこと、目にしたことはあるはずだ。ポート番号は通信に欠かせない仕組みであり、アプリケーションを利用する裏側では日常的に重要な役割を果たしている。
その意味では、ポート番号は「IPアドレス」とも似ているが、両者は区別して考えるべきだ。ポート番号をより深く理解するに当たり、まずはIPアドレスとの役割の違いや関連性から押さえておこう。
「ポート番号」は「IPアドレス」と何が違う?
併せて読みたいお薦め記事
445番ポートに潜むリスク
- 「445番ポート」の“謎” どのような仕組みか? セキュリティのリスクは?
- 「445番ポート」はなぜ攻撃者の標的になるのか あの「WannaCry」でも悪用
- 「445番ポート」悪用攻撃に耐え切る具体的な方法
ポート番号は、インターネットやその他のネットワーク経由でサーバに届いたデータを、サーバ内のどのアプリケーションに転送するのかを識別するための番号だ。ネットワークに接続したデバイスで動作する一部のアプリケーションには、標準的に割り当てられたポート番号が存在する。例えば、WebブラウザとWebサーバ間の通信用のプロトコル「HTTP」(Hypertext Transfer Protocol)は、80番ポートを使う。
ポート番号の概念は、インターネットの前身であるARPANET(Advanced Research Projects Agency NETwork:高等研究計画局ネットワーク)の時代に生まれた。ソケット番号と呼ばれていた初期のポート番号は、現在使用されている「IP」(Internet Protocol:インターネットプロトコル)アドレスのように、通信相手を特定するために使われていた。
IPアドレスは、IPネットワーク上のデバイスを識別し、データの送信先を届けるための住所のような役割を果たす。一方、ポート番号はシステム内の特定のアプリケーションやサービスを識別するための番号だ。例えばインターネットを1つの都市とするなら、各コンピュータが建物で、IPアドレスは建物の住所、ポート番号はその建物の部屋番号に相当する。
IPアドレスは、ネットワーク上のデバイスを識別するための論理アドレスだ。インターネットやネットワークに接続されたデバイスには、それを識別するための固有のIPアドレスが割り当てられる。このおかげで各デバイスはインターネットで互いに通信ができるようになる。
ポート番号はアドレス情報の一部であり、通信の送信者と受信者、およびデバイス内の特定のアプリケーションを識別するために使用される。ポート番号は0から6万5535までの16bit整数で構成される。
例えば、ユーザーが自身のコンピュータからインターネットのリモートサーバにファイルを転送するようリクエストした場合は、ファイル転送プロトコルである「FTP」(File Transfer Protocol)が使われる。ただしその通信が成立するには、両方のデバイスがFTPでファイルを転送できるように設定されていなければならない。
ファイルを転送する際、ユーザーのコンピュータで動作する通信プロトコル「TCP」(Transmission Control Protocol)のソフトウェア層は、FTPの通信を開始するために21番ポートを指定する。このポート番号は、16bitの整数として通信データ中で明記される。サーバ側では、TCP層がその21番ポートを読み取り、サーバのFTPプログラムにリクエストを転送する。
次回は、代表的なポート番号を一つ一つ解説する。
Copyright © ITmedia, Inc. All Rights Reserved.