Skip to the content.

最終更新日:2026年8月12日

まず結論

TCPコネクションは、送信元IPアドレス・送信元TCPポート番号・宛先IPアドレス・宛先TCPポート番号の4つの組合せで識別します。

送信元IPアドレス
+
送信元TCPポート番号
+
宛先IPアドレス
+
宛先TCPポート番号
↓
TCPコネクションを識別

この4つの組合せは、4タプル(four-tuple)と呼ばれます。

基本情報技術者試験では、次のように切り分けると判断しやすくなります。

MACアドレス
→ TCPコネクションの識別には不要

IPアドレスが送信元・宛先の両方ある
+
TCPポート番号が送信元・宛先の両方ある
→ TCPコネクションを識別できる

直感的な説明

TCP通信は、「どのコンピュータの、どのアプリケーションから、どのコンピュータの、どのアプリケーションへ通信しているか」を区別する必要があります。

IPアドレス
→ どのホストか

ポート番号
→ そのホスト内のどのアプリケーションか

たとえば、1台のPCから同じWebサーバへ複数のTCP通信を行うことがあります。

192.168.1.10:50001  →  203.0.113.10:443
192.168.1.10:50002  →  203.0.113.10:443
192.168.1.10:50003  →  203.0.113.10:443

宛先IPアドレスと宛先ポート番号は同じでも、送信元ポート番号が異なるため、別々のTCPコネクションとして区別できます。

つまり、宛先だけを見るのではなく、送信元と宛先の両方を見ることがポイントです。

定義・仕組み

IPアドレスの役割

IPアドレスは、ネットワーク上のホストを識別するために使います。

送信元IPアドレス
→ どのホストから送られたか

宛先IPアドレス
→ どのホストへ届けるか

IPアドレスだけでは、同じホスト上で動いている複数のアプリケーションを区別できません。

TCPポート番号の役割

TCPポート番号は、ホスト内の通信先となるアプリケーションやプロセスを区別するために使います。

IPアドレス
→ 建物を特定するイメージ

ポート番号
→ 建物の中の部屋を特定するイメージ

そのため、TCPコネクションを識別するには、IPアドレスとポート番号の両方が必要です。

送信元と宛先の両方が必要

TCPでは、同じサーバの同じサービスへ複数のクライアントが同時に接続できます。

また、同じクライアントから同じサーバへ複数のコネクションを確立することもできます。

そのため、次の4つを組み合わせて区別します。

情報 役割
送信元IPアドレス 送信側のホストを識別
送信元TCPポート番号 送信側の通信を識別
宛先IPアドレス 受信側のホストを識別
宛先TCPポート番号 受信側のサービスや通信を識別

MACアドレスはなぜ含まれない?

MACアドレスは、主に同一リンク上でフレームを届けるための情報です。

ルータを越える通信では、リンクごとにフレームが作り直されるため、送信元MACアドレスと宛先MACアドレスは途中で変わります。

PC
↓  MACアドレスA・B
ルータ
↓  MACアドレスC・D
ルータ
↓  MACアドレスE・F
Webサーバ

一方、TCPコネクションを識別する4つの情報は、TCP/IP通信の端点を表します。

したがって、MACアドレスはTCPコネクションを識別する情報には含めません

MACアドレスとIPアドレスをネットワーク機器の役割とあわせて整理したい場合は、ルータ・ブリッジ・リピータ・ゲートウェイの違いも確認しておくと理解しやすくなります。

科目Aでどう出る?

科目Aでは、MACアドレス・IPアドレス・ポート番号のうち、TCPコネクションの識別に必要な情報を選ばせる問題が出ます。

試験中の判断手順

1. MACアドレスが必要とされていないか確認
2. 送信元IPと宛先IPがあるか確認
3. 送信元ポートと宛先ポートがあるか確認

次の4つがそろっていれば、TCPコネクションを識別できます。

送信元IP
送信元ポート
宛先IP
宛先ポート

選択肢を切る判断表

選択肢の特徴 判断
MACアドレスまで必須としている TCPコネクション識別には不要
宛先IPだけ 送信元を区別できない
送信元・宛先IPだけ 同じホスト内の複数通信を区別できない
IPは両側あるがポートが片側だけ 情報不足
送信元・宛先のIPとポートが全てある 正解候補

「宛先だけ分かればよい」に注意

パケットを宛先へ届けることと、TCPコネクションを識別することは別です。

パケットを宛先ホストへ届ける
→ 宛先IPアドレスが重要

TCPコネクションを区別する
→ 送信元・宛先のIPとポートが必要

問題文が「TCPのコネクションを識別する」と聞いている場合は、4タプルを思い出します。

どんな場面で使う?

TCPでは、Web閲覧、メール、ファイル転送など、多数の通信を同時に扱います。

たとえばWebサーバでは、多数の利用者が同じTCPポート443へ接続します。

利用者A:51001 → Webサーバ:443
利用者B:52001 → Webサーバ:443
利用者C:53001 → Webサーバ:443

宛先ポートが同じでも、送信元IPアドレスや送信元ポート番号が異なるため、それぞれ別のTCPコネクションとして管理できます。

この仕組みによって、サーバは多数の通信を同時に区別して処理できます。

よくある誤解・混同

MACアドレスも通信相手を表すので必要

TCPコネクションの識別には不要です。

MACアドレスはデータリンク層で使われ、ルータを越えるたびに通信区間に応じた値へ変わります。

MACアドレス
→ 近くの通信区間で使う

IPアドレス
→ ネットワーク上のホストを識別

ポート番号
→ ホスト内のアプリケーションを識別

IPアドレスが2つあれば通信を一意に識別できる

同じ2台のホスト間でも複数のTCP通信を同時に行えるため、IPアドレスだけでは不足します。

ポート番号まで含めて区別します。

宛先ポート番号だけ分かればよい

同じサービスへ複数のクライアントが接続できるため、宛先ポート番号だけでは区別できません。

送信元側のIPアドレスとポート番号も必要です。

ポート番号はコンピュータそのものを識別する番号

誤りです。

IPアドレス
→ ホスト

ポート番号
→ ホスト内の通信先

この役割の違いを押さえます。

まとめ(試験直前用)

  • TCPコネクションは4つの情報の組合せで識別する
  • 送信元IP・送信元ポート・宛先IP・宛先ポートの4つが必要
  • IPアドレスはホスト、ポート番号はホスト内の通信先を識別する
  • MACアドレスはTCPコネクション識別には使わない
  • MACアドレスはルータを越える通信では区間ごとに変わる
  • 「TCPコネクションを識別」と出たら4タプルを思い出す

送信元IP+送信元ポート+宛先IP+宛先ポート = TCPコネクション。

© 2024-2026 stemtazoo. All rights reserved.