今回の記事ではポート番号について解説します。
ポート番号の概要や、コマンドを使って実践的に理解できるように解説します。
目次
【ITパスポート講座⑦】ポート番号とは?
では早速、ポート番号について解説します。
ポート番号とは、インターネットで標準的に用いられるプロトコル(通信規約)であるTCP/IPにおいて、同じコンピュータ内で動作する複数のソフトウェアのどれが通信するかを指定するための番号。単に「ポート」と略されることもある。
(IT用語辞典より)
つまり、ポート番号とはサービスの番号ということです。
ポート番号は役所の窓口
PCやサーバー内ではさまざまなサービスが動作しています。
大量のデータが送られてきても、受け付ける窓口がないと、このデータはどのサービスのデータなのか混乱してしまいます。
メールサーバーにwebのデータを送っても何も動作しないですよね。
PCはサービスごとに専用の窓口を設けて、メールの通信はメールの窓口で、ウェブの通信はウェブの窓口で受け付けるようになっています。
つまり、役所の窓口のように、サービスごとに窓口を設けているのです。その窓口をポート、窓口の番号をポート番号といいます。
サービスごとに決められているポート番号
ポート番号はサービスごとに決められています。
前回の記事のプロトコルで紹介した、IT パスポートでよく出題されるサービスのポート番号を紹介します。
・DHCP・・・udp/67, udp/68
・FTP・・・tcp/20, tcp/21
・DNS・・・tcp/53, udp/53
・SMTP・・・tcp/25
・POP3・・・tcp/110
・IMAP・・・tcp/143
・HTTP・・・tcp/80
・HTTPS・・・tcp/443
TCPとUDPとは、通信を保証するかどうかです。
TCPはPC同士で通信を確立してからデータを送ることで、
UDPは通信が確立しているかどうかに関わらず、データを送ることです。
netstatで自分のPCで通信しているポートを確認する
では、「netstat」というコマンドを使って、自分のPCの通信しているポートを確認してみましょう。
コマンドプロンプトを起動して、以下のコマンドを入力します。
netstat -na
コマンドを入力すると現在自分のPCで開けられているポート、通信しているポートが表示されます。
WEBに通信すると相手サーバのTCP/80やTCP/443にアクセスしていることが分かります。
状態でLISTENINGになっているポートは待ち受けているポート
ESTABLISHは現在通信してるポートです。
TELNETコマンドを使って空いているポートに接続する
次に「telnet」コマンドについて説明します。
「telnet」コマンドは通信先のポートを指定して接続を行うコマンドです。
リモートからネットワーク機器やサーバーを操作するときにtelnetコマンドをよく使います。
では早速使ってみましょう。
まず、telnetコマンドを有効にしましょう。
「コントロールパネル」→「プログラム」→ 「windowsの機能の有効化または無効化」→「telnet client」にチェックを入れる
コマンドプロンプトを開いて、以下のコマンドを入力します。
telnet 127.0.0.1 445
文法は telnet “通信先のIPアドレス” “ポート” です。
今回は自分のPC(127.0.0.1)の445番ポートにアクセスしています。
enterを押して実行すると、、、画面が黒くなりました。
一応アクセスはできていると思います。
WEBサーバーやメールサーバに対してtelnetでアクセスするとコマンドプロンプトからコマンドを打てるようになります。
最後に
今回の記事ではポート番号について解説しました。
ポート番号は通信を理解するために必要な知識です。
また、セキュリティを今後勉強していく人も必須な知識です。
不要なポートが開いているとそこから侵入されるからです。
ポート番号は基礎的な知識なので、しっかり理解しましょう。