前回のつづき——「どの機器か」の、その先へ

前回のC-03では、通信が「どの機器か」というところまで正しく届くようになりました。ですが実際には、1台の機器の上で複数のプログラムが同時に通信を待っています。Webを表示するプログラムも、開発中のアプリも、それぞれが別々に待ち構えているのです。そこで今回は、届いた通信を「どのプログラム宛か」まで細かく仕分けるための番号を学びます。
このスライドのポイント
- C-03で、通信は「どの機器か」まで正しく届くようになった
- しかし1台の機器の上では、複数のプログラムが同時に通信を待っている
- 届いた通信を「どのプログラム宛か」まで仕分ける番号が必要
ポート番号とは

ポート番号とは、1台の機器の上で、複数のサービス、つまり通信を待っているプロセスを見分けるための番号です。プロセスはB-02で見たとおり、動作中のプログラムのことでした。ポート番号は0から65535までの範囲で決められています。よく使われる例として、80番はWebの標準、443番は保護されたWebの標準、3000番は開発中のアプリでよく使われます。番号ごとに待ち受けるプログラムが分かれている、と考えてください。
このスライドのポイント
- ポート番号=1台の機器の上で、複数のサービス(通信を待つプロセス)を識別する番号
- プロセスはB-02で見たとおり、動作中のプログラムのこと
- 番号の範囲は0〜65535
- よく使われる例: 80(Webの標準)、443(保護されたWebの標準)、3000(開発中のアプリでよく使う)
なぜ必要か

この番号を知らないと、バイブコーディングで毎日目にする「localhost:3000」の、うしろに付いた「:3000」の意味がわからないままになります。また、開発中に頻出する「ポートが使用中です」というエラーにも対処できません。これは、前回起動したプロセスが終了せずに残っていて、同じ番号を後から使えない状態です。番号の仕組みを知っていれば、慌てずに原因を切り分けられます。
このスライドのポイント
- 知らないと「localhost:3000」の「:3000」の意味がわからない
- 頻出する「ポートが使用中です」エラーに対処できない
- これは前回起動したプロセスが終了せず残っている状態(B-02で触れた)
構造——住所と部屋番号

全体像を、建物のたとえで整理します。IPアドレスが建物の住所だとすれば、ポート番号はその建物の中の部屋番号にあたります。ただしこれはあくまで理解のための補助で、正確には1台の機器の中でプログラムを見分ける番号です。1台のサーバーの上で、Webアプリは443番の部屋で、開発中のアプリは3000番の部屋で、それぞれ別々に通信を待っています。宛先は住所と部屋番号の両方がそろって、はじめて一つに決まります。
このスライドのポイント
- IPアドレス=建物の住所、ポート番号=その建物の中の部屋番号(理解のための補助)
- 1台のサーバー上で、Webアプリは443番の部屋、開発中アプリは3000番の部屋で待つ
- 宛先は「住所+部屋番号」の両方がそろって一つに決まる
処理の流れ——起動と「使用中」

具体例を見てみましょう。開発中にアプリを起動すると、画面に「3000番で待ち受けを開始しました」といった表示が出ます。ここでもう一つ同じアプリを起動しようとすると、今度は「3000番は使用中です」と怒られます。これは、同じ部屋番号を2つのプロセスが同時に取ることはできないためです。対処は単純で、先に動いている片方を終了させるか、もう一方を別の番号で起動するかのどちらかになります。
このスライドのポイント
- 起動すると「3000番で待ち受け開始」と表示される
- もう一つ起動しようとすると「3000番は使用中」と表示される
- 同じ部屋番号を2つのプロセスが同時には取れないため
- 対処: 片方を終了する/もう一方を別の番号で起動する
技術サンプルカード

スライドの図は、1台の機器の中でポートがどう分かれているかを示しています。住所192.0.2.1の機器の中に、443番ではWebアプリが、3000番では開発中のアプリが、それぞれ待機しています。読み方のポイントは二つです。一つ目は、宛先は住所と部屋番号のセットではじめて一つに定まること。二つ目は、同じポートは同時に一つのプロセスしか使えないことです。AIには「ポート3000が使用中というエラーが出ました。原因と、安全な対処の選択肢を教えてください」と聞くとよいでしょう。
このスライドのポイント
- 種別: diagram
- 目的: 1台の機器の中で、ポートごとにプロセスが分かれる様子を確認する
- サンプル本体:
混同しやすい概念

混同しやすいのが、IPアドレスとポート番号の関係です。IPアドレスは「どの機器か」を指し、ポート番号は「その機器の中のどのプログラムか」を指します。役割がまったく違うので、片方だけでは宛先は決まりません。前回学んだ住所と、今回の部屋番号、この両方がそろってはじめて、通信は目的のプログラムまでたどり着きます。
このスライドのポイント
- IPアドレス=どの機器か
- ポート番号=その機器の中のどのプログラムか
- 両方そろってはじめて宛先になる
バイブコーディングでの確認点

AIを使うときの確認点です。「使用中」エラーの相談に対して、AIが「そのプロセスを終了させるコマンド」を提示してくることがあります。このとき、どのプロセスを止めるのかを必ず確認してから実行してください。間違ったプロセスを止めると、別の作業が巻き込まれて壊れることがあります。これはA-09で見た、実行前に立ち止まって判断すべき場面にあたります。
このスライドのポイント
- 「使用中」エラーでAIが「プロセスを終了させるコマンド」を出したら、どのプロセスを止めるのかを確認してから実行する
- 間違ったプロセスを止めると別の作業が壊れる(A-09の判断)
- 質問例: 「このコマンドが止めるプロセスはどれですか。別の作業に影響しませんか」
まとめと次回

最後に一問一答です。1台の機器の中で、宛先のプログラムを区別する番号は何でしょうか。答えは、ポート番号です。30秒でまとめます。IPアドレスが機器を指し、ポート番号がその中のプログラムを指す。二つがそろって宛先になり、同じポートは同時に一つのプロセスだけが使えます。次回は、自分自身に接続する特別な名前、localhostへ進みます。関連資料は「エラー文の読み方」「Webアプリ構成図入門」です。
このスライドのポイント
- 一問一答: 1台の中で宛先のプログラムを区別する番号は? → ポート番号
- 30秒まとめ: IPアドレス=機器、ポート番号=機器の中のプログラム。両方で宛先。同じポートは同時に1プロセスだけ
- 次回: 自分自身に接続する特別な名前、localhostへ
- 関連資料: 「エラー文の読み方」「Webアプリ構成図入門」