見出し画像

port番号とは何か?

port番号が必要な理由

TCP/IPネットワークにおいて、相手側(サーバー)のコンピューターを特定するときにIPアドレスを使用する。

しかし、IPアドレスで特定ができるのは、相手側のコンピューターまでとなる。

そのコンピューター上のどのサービスと通信をするのかはIPアドレスだけでは特定することができない。

たとえば、1台のサーバー上でメールサーバーとWebサーバーが一緒に動いている場合、メールサーバーに接続してメールを閲覧、送信がしたいのか、Webサーバーに接続してWebページを閲覧したいのかどうか、IPアドレスだけでは区別することができない。

そこで登場するのが「port番号」で、サービスの区別を行い、通信相手となるサービスをしてする。

つまり「port番号」は、コンピュータが通信する際の、プログラムを識別するための番号だ。

TCP/IPネットワーク上でコンピュータ同士が通信を行う際は、 IPアドレスとポート番号をセットで用いて通信を行う。

URL(URI)の一部として指定する場合、
「http://www.example.com:80/」
「https://192.168.1.1:443/」
のように、ホスト名やIPアドレスの末尾にコロン(:)を付して追記する。

port番号とは

port番号は16ビットの整数であり、 0番~65535番まである。

代表的なポート番号を紹介すると、以下となる。

•	TCP 20 : FTP (データ)
•	TCP 21 : FTP (制御)
•	TCP 22 : SSH
•	TCP 23 : Telnet
•	TCP 25 : SMTP
•	UDP 53 : DNS
•	UDP 67 : DHCP(サーバ)
•	UDP 68 : DHCP(クライアント)
•	TCP 80 : HTTP
•	TCP 110 : POP3
•	UDP 123 : NTP
•	TCP 443 : HTTPS

Webサーバーは80番のportでパケットを待っていることが多い。

port番号には、下記のような三つの種別が存在する。

WELL KNOWN PORT NUMBERS

0番~1023番

使用目的が定められたport番号で、Internet Assigned Numbers Authority (IANA)という組織が管理している。

先ほど挙げたport番号80番も、 このWELL KNOWN PORT NUMBERSに該当する。

ポート番号の一覧は下記のIANAのWebサイトで見ることができる。

REGISTERED PORT NUMBERS

1024番~49151番

IANAが登録を受け付け、 公開しているport番号となる。

特定のアプリケーションなどが使用することになっているportの集まりと言える。

DYNAMIC AND/OR PRIVATE PORTS

49152番~65535番

これらの番号は、誰でも自由に使用できるportとして開放されており、IANAに登録をする必要もない。

おまけ

以下のサイトが、図入りでわかりやすい。



コメントお待ちしています☕ また、mondにて匿名の質問・メッセージを募集しています。なんでも送ってね👍 https://mond.how/ja/hovinci_jp