TCP/IPとは、インターネットや多くのネットワークで使用される通信プロトコルのセットで、データの送受信を管理します。重要性は、異なる機器やネットワーク間の通信を標準化し、互換性と信頼性を確保する点にあります。
試験で問われること
- TCP/IPの4層モデルの各層を列挙し、それぞれの役割を説明せよ。
- TCPとUDPの違いを比較し、それぞれの用途を述べよ。
- IPv4とIPv6のアドレス形式の違いを説明せよ。
- サブネットマスクの役割を説明し、具体例を示せ。
- ルータの役割を説明し、主要なルーティングプロトコル(RIP、OSPF、BGP)の違いを述べよ。
- DNSの役割とドメイン名解決のプロセスを説明せよ。
- DHCPの役割と動作を説明せよ。
- NATの重要性とその役割を説明せよ。
- TCP/IPモデルのアプリケーション層で使用される主要なプロトコルを列挙せよ。
- ICMPの役割を説明し、どの層で使用されるかを述べよ。
- IPアドレスのクラス(A、B、C、D、E)を列挙し、それぞれの特徴を述べよ。
- ARP(Address Resolution Protocol)の役割を説明せよ。
- パケットのルーティングにおいて、ホップ数がどのように使用されるかを説明せよ。
- ネットワークインターフェース層で使用されるプロトコルの例を挙げよ。
- TCPのスリーウェイハンドシェイクプロセスを説明せよ。
- UDPが使用される典型的なアプリケーションを挙げ、その理由を説明せよ。
- IPフラグメンテーションとは何か、なぜ必要かを説明せよ。
- DNSキャッシュポイズニング攻撃の仕組みとその対策を述べよ。
- プライベートIPアドレスとグローバルIPアドレスの違いを説明せよ。
- TCP/IPスタックの各層に関連する代表的なプロトコルとその用途を述べよ。
TCP/IPの基本概念
TCP/IP(Transmission Control Protocol/Internet Protocol)は、インターネットや多くのネットワークでデータ通信を行うためのプロトコルのセットです。TCP/IPの主な役割は、データの送受信を管理し、異なる機器やネットワーク間の通信を標準化して互換性と信頼性を確保することです。
4層モデルの紹介
TCP/IPは4つの層で構成されています。それぞれの層には異なる役割があり、特定のプロトコルが使用されます。
- アプリケーション層
- 役割: ユーザーとアプリケーションがネットワークを利用するためのインターフェースを提供します。
- 主なプロトコル: HTTP(Webページの閲覧), HTTPS(セキュアなWebページの閲覧), FTP(ファイル転送), SMTP(メール送信), DNS(ドメイン名解決)など。
- トランスポート層
- 役割: データの信頼性、順序、誤り訂正を提供し、データが正しく伝達されるようにします。
- 主なプロトコル
-
-
- TCP(Transmission Control Protocol): コネクションを確立し、信頼性の高いデータ転送を行う。
- UDP(User Datagram Protocol): コネクションレス型で、信頼性は低いが高速なデータ転送を行う。
-
- インターネット層
- 役割: パケットのルーティングとアドレス指定を行い、データが送信元から目的地まで適切に到達するようにします。
- 主なプロトコル:
- IP(Internet Protocol): パケットの送受信を管理し、ネットワーク上のデバイスを一意に識別するアドレス(IPアドレス)を使用します。
- ICMP(Internet Control Message Protocol): エラーメッセージの送受信やネットワーク診断を行います。
- ARP(Address Resolution Protocol): IPアドレスからMACアドレスを取得するためのプロトコル。
- ネットワークインターフェース層
- 役割: 実際のハードウェアと物理的な伝送を管理し、データリンク層と物理層の機能を提供します。
- 主なプロトコル: イーサネット(有線ネットワーク)、Wi-Fi(無線ネットワーク)など。
各層の詳細とプロトコル
- アプリケーション層
- 役割とプロトコル: HTTP, HTTPS, FTP, SMTP, DNSなど。
- トランスポート層
- 役割とプロトコル: TCPとUDPの違いと用途。
- インターネット層
- 役割とプロトコル: IPアドレス、ICMP、ARPなど。
- ネットワークインターフェース層
- 役割とプロトコル: イーサネット、Wi-Fiなど。
IPアドレスとサブネット
TCPとUDPの比較
プロトコル | 特徴 | 用途 |
---|---|---|
TCP | 信頼性が高く、順序保証、誤り訂正、コネクション型、フロー制御を提供 | HTTP/HTTPS, SMTP, FTPなど |
UDP | 非信頼性があり、順序保証なし、誤り訂正なし、コネクションレス型、軽量プロトコル | VoIP, オンラインゲーム, DNS, DHCPなど |
TCPとUDPの特徴
TCPの特徴
- 信頼性:
- 順序保証: データが送信された順序で受信されることを保証します。
- 誤り訂正: 送信中に発生したエラーを検出し、再送することでデータの完全性を保ちます。
- コネクション型: データ送信前に接続を確立し、データの送受信中に接続を維持します。
- フロー制御: 送信者と受信者の間でデータの送信速度を調整し、受信側が処理可能な速度でデータを受け取れるようにします。
- 用途: ウェブブラウジング(HTTP/HTTPS)、メール送信(SMTP)、ファイル転送(FTP)などの信頼性が求められる通信。
UDPの特徴
- 非信頼性:
- 順序保証なし: データが送信された順序で受信されることを保証しません。
- 誤り訂正なし: 送信中に発生したエラーを検出せず、再送も行いません。
- コネクションレス型: データ送信前に接続を確立せず、データの送信が完了すると接続も終了します。
- 軽量プロトコル: ヘッダ情報が少なく、オーバーヘッドが低いため高速なデータ転送が可能です。
- 用途: リアルタイムアプリケーション(VoIP、オンラインゲーム)、ブロードキャストやマルチキャスト(DNS、DHCP)などの高速性が求められる通信。
ルーティングの基本
ルータの役割
ルータは、異なるネットワーク間でデータパケットを転送する役割を持つネットワークデバイスです。ルータは、ネットワークの境界に位置し、パケットが適切な経路を通って目的地に到達するようにルーティング(経路選択)を行います。
- パケット転送: ルータは受信したパケットの宛先IPアドレスを解析し、最適な経路を選択して次のネットワークへ転送します。
- ネットワーク分離: ルータは異なるネットワークを分離し、ブロードキャストトラフィックを制限してネットワーク効率を向上させます。
- セキュリティ: ルータはアクセス制御リスト(ACL)を使用して、ネットワークへの不正アクセスを防ぐことができます。
ルーティングプロトコルの種類
ルーティングプロトコルは、ルータ間で経路情報を交換し、最適な経路を決定するために使用されます。主なルーティングプロトコルには以下のものがあります:
1. RIP(Routing Information Protocol)
- 特徴: 距離ベクトル型ルーティングプロトコルで、経路の選択はホップ数に基づいて行われます。
- ホップ数の制限: 最大ホップ数は15で、16ホップを超える経路は到達不能とみなされます。
- 更新頻度: 定期的(通常30秒ごと)にルーティング情報を全ルータに送信します。
- 用途: 小規模ネットワークに適しており、設定が簡単。
2. OSPF(Open Shortest Path First)
- 特徴: リンクステート型ルーティングプロトコルで、経路選択はリンクコストに基づいて行われます。
- コスト計算: 各リンクにコストが割り当てられ、最小コストの経路を選択します。
- 更新頻度: トポロジの変更時にのみルーティング情報を送信し、ネットワークの効率が高い。
- 階層構造: エリアと呼ばれる階層構造を持ち、大規模ネットワークに適している。
3. BGP(Border Gateway Protocol)
- 特徴: パスベクトル型ルーティングプロトコルで、インターネット上の自律システム(AS)間の経路選択に使用されます。
- 経路選択基準: 複数の属性(ASパス、メトリックなど)を基に経路を選択します。
- 用途: インターネットのバックボーンネットワークや大規模企業ネットワークにおいて、異なるAS間のルーティングに使用されます。
- スケーラビリティ: 非常に大規模なネットワークに対応可能。
その他の重要ポイント
DNSの役割: ドメイン名の解決方法
DNS(Domain Name System)は、インターネットやプライベートネットワーク上でドメイン名とIPアドレスを相互に変換するシステムです。これにより、ユーザーは覚えやすいドメイン名を使用してウェブサイトにアクセスできます。
ドメイン名の解決方法
- ユーザーのリクエスト: ユーザーがウェブブラウザにドメイン名(例:www.example.com)を入力します。
- リゾルバの問い合わせ: ブラウザはDNSリゾルバにドメイン名のIPアドレスを問い合わせます。
- キャッシュの確認: リゾルバは最初にローカルキャッシュを確認し、キャッシュにIPアドレスが存在する場合、その情報を返します。
- DNSサーバへの問い合わせ: キャッシュにない場合、リゾルバはルートDNSサーバから順にTLDサーバ、権威DNSサーバへ問い合わせを行います。
- IPアドレスの取得: 権威DNSサーバからIPアドレスを取得し、リゾルバはブラウザにIPアドレスを返します。
- ウェブサイトへのアクセス: ブラウザは取得したIPアドレスを使用してウェブサイトにアクセスします。
DHCPの役割: IPアドレスの自動割り当て
DHCP(Dynamic Host Configuration Protocol)は、ネットワークデバイスに対してIPアドレスやその他のネットワーク設定を自動的に割り当てるプロトコルです。
DHCPの動作
- DHCPディスカバリ: クライアントデバイスがネットワークに接続されると、DHCPサーバに対してIPアドレスを要求するブロードキャストメッセージを送信します。
- DHCPオファー: DHCPサーバは、利用可能なIPアドレスを含むオファーメッセージをクライアントに返します。
- DHCPリクエスト: クライアントは受け取ったオファーの中から1つを選び、そのIPアドレスを要求するメッセージをサーバに送信します。
- DHCPアクノレッジ: DHCPサーバはリクエストを確認し、選ばれたIPアドレスをクライアントに割り当てることを確認するメッセージを送信します。
NATの重要性: プライベートIPとグローバルIPの変換
NAT(Network Address Translation)は、内部ネットワークのプライベートIPアドレスを外部ネットワークのグローバルIPアドレスに変換する技術です。
NATの役割と重要性
- アドレス空間の節約: 複数の内部デバイスが同じグローバルIPアドレスを共有できるため、IPv4アドレス空間の節約に寄与します。
- セキュリティの向上: 内部ネットワークのデバイスが直接外部に公開されないため、セキュリティが向上します。
- ネットワークの柔軟性: 内部ネットワークのアドレス体系を外部に依存せずに設計・変更できるため、ネットワークの運用が柔軟になります。
まとめ
TCP/IPの基本と関連するネットワーク技術について解説しました。
TCP/IPは、データ通信の基盤であり、4層モデル(アプリケーション層、トランスポート層、インターネット層、ネットワークインターフェース層)で構成されています。
TCPは信頼性の高いデータ転送を提供し、UDPは高速で軽量な通信に適しています。ルータはネットワーク間でパケットを転送し、RIP、OSPF、BGPなどのルーティングプロトコルを使用します。
DNSはドメイン名とIPアドレスの変換を行い、DHCPはIPアドレスを自動的に割り当てます。
NATはプライベートIPアドレスをグローバルIPアドレスに変換し、アドレス空間の節約とセキュリティ向上に寄与します。
これらの知識を理解することで、ネットワークの構築と管理に必要な基礎が身につきます。