コンテンツにスキップ

1. ネットワークの基礎知識

1.1. ネットワークと通信方式

ネットワークはパソコンやネットワーク機器(ハブやルータなど)の要素がケーブル等で接続されて通信可能な状態のものを指す。

ネットワークを構成する要素、例えばクライアント(PC)やサーバ、ルータなどはノード、ノード同士を結ぶ線をリンク、リンク上のデータ流れをフロー、ネットワーク上の流れる情報やその量をトラフィックという。

1.1.1. LANとWAN

ネットワークの種類はLANWAN、インターネットに分類される。

LAN

家庭、企業、ビルなどの施設単位の範囲で利用するネットワーク。 LAN内で自由に機器や配線等を設定できる。

WAN

地理的に離れたLANとLANを接続するネットワーク。 WANではLANの通信管理者が機器設定配線は行えないため、利用には通信事業者が提供するWANサービスを利用する。

インターネット

たくさんのネットワークを接続した地球規模の巨大ネットワークを指す。 広義の意味ではWANに含まれる。

インターネットへの接続はISP(インターネットプロバイダ)を介して接続を行える。 インターネットを利用して構築されたLANはイントラネットと呼ばれる。

1.1.2. ネットワークトポロジ

ネットワークトポロジは端末やネットワーク機器の接続形態を指す。

複数の型のネットワークトポロジを組み合わせた形態はハイブリッド型と呼ばれる。

ネットワークトポロジ

バス型

バスに障害が発生するとノード間通信ができなくなる。

リング型

ノードを円形接続する形態で1か所障害が発生すると全体に影響が出る。

スター型

現在主流の接続形態であり、中央装置にノードを接続する。

メッシュ型

リンク間をそれぞれ接続する接続形態。 1か所で障害が起きても他ノードを経由して通信が可能なため障害に強い

すべてのノードがたがいに接続されている状態はフルメッシュ。 部分的にメッシュとなっている状態はパーシャルメッシュと呼ばれる。

1.1.3. 通信の種類

1.1.3.1. コネクション型通信

コネクション型通信はデータ転送前に通信相手と正常に接続できているか確認したうえで通信を行う方式である。

代表的なプロトコルにはTCPが上げられる。

1.1.3.2. コネクションレス型通信

コネクションレス型通信は事前の接続確認を行わずいきなりデータ転送を始める通信方式である。

コネクションレス型通信はコネクション型通信とは異なり、事前にコネクションの確立を行わない。 したがって、転送元のコンピュータは好きなタイミングで好きなだけデータを転送することが可能。

代表的なプロトコルにはUDPやIPが上げられる。

1.1.3.3. パケット交換方式と回線交換方式

回線交換方式は1対1の通信を行う場合において回線を占有しながら通信を行う通信方式です。代表的なものには「電話」があります。

この方式では1つの回線を占有して通信を行うため、その間他の機器とは通信を行うことができない。

パケット交換方式は複数:複数で回線を共有して通信を行う方式のことです。 パケット交換方式では、データを1つ1つの小さな小包(=パケット)に分けて、郵便配達のようにデータを届けます。

1.1.4. IPアドレスとMACアドレス

ネットワークにおける代表的なアドレスにはIPアドレスMACアドレスがある。

いずれもネットワークを利用するためにコンピュータに一意に割り当てられた識別子であり、これらのアドレスには一意性や階層性がある。

2つのアドレスはまとめるとこのように考えることができる。

  • MACアドレス => 機器の識別番号
  • IPアドレス => 機器の住所情報

IPアドレス

IPにおいてパケットを送受信する機器を判別するための識別番号のことであり、MACアドレスと同様に世界中で一意の番号となる。

IPアドレスは「ネットワーク上の住所」と説明される。

MACアドレス

ネットワークにつながるすべての機器に割り当てられている識別番号のことでNICに割り当てられる。これらはイーサネットや無線LANなどに接続されているノードを一意に識別するために利用される。

MACアドレスは0~9、A~Fの16進数・12桁で表され、48bitで構成される。この番号は、世界中で一意の番号となる。 隣接するコンピュータ間の通信を可能にするアドレスといえる。

前半24bitのベンダ識別子はOUIと呼ばれ、IEEEが管理している。後半24bitはベンダーが独自に割り当てられる。

MAC

1.1.5. 通信の方式

通信の方式は宛先の指定により4種類に分けられ、それぞれの方式で使用するアドレスが異なる。

ブロードキャストやマルチキャストでのデータ複製はネットワーク途中の集線装置がデータの複製を行う。

1.1.5.1. ユニキャスト

特定のあて先にのみデータを送信する方式。

1対1で通信を行う。

1.1.5.2. マルチキャスト

ネットワーク内の特定のグループに対してデータを送信する方式。

1対グループの通信となる。

1.1.5.3. ブロードキャスト

不特定多数に対して同じデータを送信する方式。 ただし、多数といっても対象は同一のネットワーク内の端末である。

1対多数での通信となる。

ブロードキャストでは通信と必要としない端末にも通信が届くため、ブロードキャスト通信が多い場合ネットワーク、通信を確認する端末に負荷がかかる。

ブロードキャスト通信はARPやDHCPで使用される。

またブロードキャストでフラッディングが止まらなくなる現象はブロードキャストストームと呼ばれ、ネットワークに負荷がかかり輻輳が発生する原因となる。

1.1.5.4. エニーキャスト

ネットワーク内で、同じアドレスを共有する複数のノードのうち、最も近い相手にデータを送信する方式。

IPv6などに用意されている仕組みであり、比較的特殊な方式である。

1.2. プロトコルとOSI参照モデル

1.2.1. プロトコル

プロトコルはコンピュータでデータをやりとりするために定められた手順や規約、信号の電気的規則、通信における送受信の手順などを定めた規格を指します。

ネットワークではネットワーク通信手順や規約を定めたものを通信プロトコルと呼ぶ。

異なるメーカーのソフトウェアやハードウエア同士でも、共通のプロトコルに従うことによって正しい通信が可能になる。

プロトコルを階層的に構成したもの(プロトコルスタック)と呼ばれ、その階層化例にはOSI参照モデル、TCP/IP階層モデルがある。

1.2.2. OSI参照モデル

OSI参照モデルはISO(国際標準化機構)により定められた階層モデルである。異なるベンダー間が製造する通信規格を統一化するために作成された。

OSI参照モデルでは7つの階層を定義している。

OSI

OSI参照モデルには以下のようなメリットがある。

  • 階層ごとに機能を分けるとネットワークやアプリの設計者/開発者が役割を理解しやすい
  • 階層が分かれているためネットワーク障害などの問題の切り分け等が容易
  • プログラムの開発改修が簡単

カプセル化/非カプセル化

各階層の上から下へ各レイヤーのヘッダをデータに付けて、上位階層の通信データをそのままデータとしていくことはカプセル化とよばれ、その逆を非カプセル化と呼ばれる。

PDU/ペイロード

各階層で扱う通信データ単位はPDU(Protocol Data Unit)と呼ばれる。

レイヤー4(トランスポート層)ではセグメント。 レイヤー3(ネットワーク層)ではパケット。 レイヤー2(データリンク層)ではフレームと呼ばれる。

PDUからその層のヘッダを除いた部分はペイロードと呼ばれる。

1.2.3. TCP/IPモデル

TCP/IPは現代(1990年代から現在)のインターネットで利用されているプロトコル。

TCP/IP階層モデルではOSI参照モデルのレイヤー7からレイヤー5はアプリケーション層として、レイヤー2からレイヤー1はリンク層として扱い、4層構成となっている。

TCP/IP階層モデルのアプリケーション層

代表的なプロトコルには以下のようなものがある。

プロトコル 説明
HTTP Webサイトの閲覧などでサーバ-クライアント間通信で利用される
SMTP メールの送信に利用
POP3 メールの受信に利用
IMAP メールの受信に利用
FTP ファイルの転送に利用

TCP/IP階層モデルのトランスポート層

トランスポート層ではアプリケーション層のプロトコル間の通信を制御する。

プロトコルは主にTCPUDPがあり、前者はデータの信頼性、後者はデータの伝送速度を重視する。

TCPを利用するアプリケーション層のプロトコルはHTTPやFTP、POP3などがある。

UDPを利用するアプリケーション層のプロトコルにはDHCPやDNS、SNMPなどがある。他にもリアルタイム性を重視する通信に利用される。

TCP/IP階層モデルのインターネット層

インターネット層ではエンドーツーエンド通信の制御が役割であり、以下に代表的なプロトコルを記載する。

プロトコル 説明
IP IPアドレスを使用したデータ配送
ICMP 宛先までのルートが使用可能か確認などを行う, pingコマンドはこれを利用
IGMP データのマルチキャスト通信で宛先端末のグループ化を行う
IPsec 暗号化通信を行う
ARP IPアドレスからMACアドレスを取得
RARP MACアドレスからIPアドレスを取得

TCP/IP階層モデルのリンク層(NIC層)

物理的な2機器間を結ぶ線をリンクと呼ばれることからリンク層と呼ぶ。 代表的なプロトコルは以下。

プロトコル 説明
Ethernet(イーサネット) ほとんどのLANで使用されるプロトコル
PPP 2台機器を接続して通信を行うプロトコル

1.3. イーサネットLAN

1.3.1. イーサネット

イーサネットはOSI参照モデルでいう、物理層とデータリンク層で動作するプロトコルで、LANで最も利用されています

1.3.2. イーサネットLANケーブルと規格

1.3.2.1. LANケーブルの種類

ネットワーク機器を構築する際に機器や環境に応じて様々な種類のケーブルを使い分けます。

種類 説明
ツイストペアケーブル(LANケーブル) 銅線を2本ずつペアにしより合わせたケーブルでSTPとUTPがある。
同軸ケーブル 伝送用の1本銅線を絶縁体で囲んだケーブル
光ファイバケーブル 光信号を反射させ利用するケーブル、FTTxやGbitイーサネットがある。

LANケーブル

1.3.2.2. ツイストペアケーブルの種類

ツイストペアケーブルにはSTPUTPがある。

STPはノイズに強いシールドがついたもので工場などの電磁波を発生する設備/機器がある場所にネットワークを構築する場合などに使用される。

UTPは一般的なツイストペアケーブルであり、主流である。

1.3.2.3. LANケーブルのタイプとMDI/MDI-X

ツイストペアケーブルにはさらに別にストレートケーブルクロスケーブルの2種類があり

ケーブル端のピン(8つ存在)の並びにそれぞれ違いがある。

ツイストペアケーブルを差し込むポートにはMDIMDI-Xの2種類があり機器により差し込む仕様が決まる。

種類 説明 機器例
MDI 8ピンのうち1,2番目を送信、3,6番目を受信に使用 PCやルータ
MDI-X 8ピンのうち1,2番目を受信、3,6番目を送信に使用 ハブやレイヤー2スイッチ

つまちMDIとMDI-Xを接続する場合はストレートケーブル、同じ種類のポートを接続したい場合はクロスケーブルを使用する。

またAuto MDI/MDI-X機能がある機器ではケーブルのタイプを気にすることなく接続可能である。

1.3.2.4. イーサネットの規格

イーサネットはIEEE 802.3 委員会により標準化され以下のような規格がある。

なおTが付く規格はUTPケーブル(つまりLANケーブル)が使用されていること、Fが付く規格は光ファイバが使用されていることを示す。

規格 伝送速度 ケーブル種類 伝送距離 予備説明
10BASE-2 10Mbps 同軸 185m
10BASE-5 10Mbps 同軸 500m
10BASE-T 10Mbps UTP,STP 100m
10BASE-F 10Mbps 光ファイバ 1000/2000m
100BASE-TX/T2/T4 100Mbps UTP 100m
100BASE-F 100Mbps 光ファイバ 0.2/20km FastEthernet
1000BASE-T/TX 1Gbps UTP 100m GigaEthernet
1000BASE-SX/LX 1Gbps 光ファイバ 0.55/5km GigaEthernet
1000BASE-CX 1Gbps 同軸 25m GigaEthernet
10GBASE-T 10Gbps UTP 100m
10GBASE-LR 10Gbps 光ファイバ 10km
10GBASE-SR 10Gbps 光ファイバ 300m

イーサネットの規格の覚え方

LANによく使われるUTPはカテゴリに分けられる。

カテゴリ 対応規格
Cat5E 100BASE-TX, 1000BASE-T
Cat6 1000BASE-T, 1000BASE-TX
Cat6A 10GBASE-T
Cat7 10GBASE-T
カテゴリ 最大伝送速度 最大伝送距離 最大周波数
Cat3 10Mbps 100m 16MHz
Cat4 10Mbps 100m 20MHz
Cat5 100Mbps 100m 100MHz
Cat5E 1Gbps 100m 100MHz
Cat6 10Gbps 55m 250MHz
Cat6A 10Gbps 100m 500MHz
Cat7 10Gbps 100m 600MHz

1.3.2.5. PoE

PoEはイーサネットケーブルで電力を供給する仕組み。 コンセントがない場所やIP電話、アクセスポイントなどへの電力供給で使用する。

通常はL2スイッチが給電機器(PSE)として電力を供給し、受電機器(PD)と呼ぶ。

PoEはCat5以上のイーサネットケーブルを利用する。

またCissco製の場合、PSEはPDからのCDP情報に基づいてPoEの電力クラスを割り当てる。 他社製品を使う場合はCDP情報に基づいて電力クラスを割り当てることができない。 そのためデフォルトでポートに最大電力を割り当てる。

PoEはPSE-PD間で電力供給前にネゴシエーションが行われ電力供給すべきか自動で判断する。またPDの消費電力がPSEの供給電力を上回る場合は、ポートを自動シャットダウンしDisable状態にするため、電力不足になりPSE自体が止まるのを阻止する機能がある。

またPoEには以下規格がある。

名称 供給能力 使用対数
PoE 15W 2対
PoE+ 30W 2対
UPoE 60W 4対

1.3.2.6. 光ファイバケーブル

光ファイバーケーブルは大きくSMFMMFの2種類に分けられる。 またコアとクラッドというパーツで構成される。

SMFは単一の伝搬炉モードを提供するケーブルで、光が分散しにくいため長距離伝送に向いている。 MMFは複数の伝搬モードを提供するケーブルで、光が分散しやすいため長距離伝送に向いていない。

SMF、MMFは帯域幅や伝送距離によって分類されそれぞれコア径が異なる。またSMFでは接続に使用する光トランシーバがMMFより高価なため、SMFのほうが導入コストがかかる

規格 モード コア佳
OS1 SMF 8~10μm
OS2 SMF 8~10μm
OM1 MMF 62.5μm
OM2/3/4/5 MMF 50μm

1.3.2.7. コネクタ

コネクタはケーブルとネットワーク機器を接続する部分でLCコネクタSCコネクタの2種類がある。 LCコネクタはSFPモジュール(光トランシーバ)に接続し、SCコネクタはGBICトランシーバに接続する。

SFPモジュールの特徴としてはホットスワップ(≒ホットプラグ)に対応している。

1.3.2.8. イーサネットインターフェイスの種類

種類 最大伝送速度 表示記号例
Gigabit Ethernet 1Gbps Gi0/1
Fast Ethernet 100Mbps Fa0/1
Ethernet 10Mbps E0/1

特徴として対向と異なるインターフェースで接続している場合は、通信速度の遅い方にあわせて動作する。

イーサネット

1.3.3. イーサネットLANのデータ転送

1.3.3.1. イーサネットのアドレス(MACアドレス)

MACアドレスはNIC(インターネットインターフェスカード)に割り振られている識別子であり、物理アドレスとも呼ばれる。

48bit(6Byte)で構成され、OUIとベンダーが独自に割り当てるIDで構成される。

MACアドレスの種類

アドレスの種類 説明
ユニキャストアドレス 単一の機器を識別するためのMACアドレス
マルチキャストアドレス ネットワーク上の特定グループを識別するMACアドレス。最初の24bitが0x01, 0x00, 0x5Eで25bit目が0となり、残りのビットはIPアドレスから算出。
ブロードキャストアドレス ネットワーク上のすべての機器を指定するためのMACアドレス。 48bitのすべてが1のFF-FF-FF-FF-FF-FFがブロードキャストアドレス

1.3.3.2. イーサネットフレーム

イーサネットで扱うデータをイーサネットフレームと呼ぶ。 イーサネットフレームには主に二種類あり、IEEE802.3形式とEthernet 2形式があり、現在普及しているのは後者のEthernet2形式である。

イーサネット

プリアンブルは1/0のビット列信号で、イーサネットフレームでは通信の同期をとるために使用される。

FCSは受信したデータに誤りがないかチェックするためのものである。

1.3.3.3. 半二重通信と全二重通信

イーサネットでは半二重通信全二重通信で通信を行う。

半二重通信ではデータの送受信を同時に行わず、送信側受信側が交互にデータをやり取りする方式となる。 半二重通信の環境は同軸ケーブルやリピータハブの接続などがある。

全二重通信はデータの送受信が同時に行える方式である。 一般的にツイストペアケーブル(LANケーブル)が使用される環境下ではほとんどが全二重通信となる。

1.3.3.4. CSMA/CDによるアクセス制御

半二重通信では同時にデータを送信するとコリジョンが発生する。 アクセス制御をすることで通信を制御しデータの送受信をスムーズにできるようにする。

半二重通信ではCSMA/CD方式でアクセス制御を行う。

CSMA/CD方式では通信端末はルート上にデータが流れていないか確認してからデータを送信します。またその後データの衝突が発生していないか監視する。データの衝突が発生した場合はジャム信号を送信し、回線を占有中のほか端末はその信号を受け取るとデータの送信を中止し、ランダム時間待機後にデータを再送信する。

1.3.4. イーサネットLANの機器

1.3.4.1. リピータハブ

リピータハブは受信した電気信号を中継する機器で端末から届いた電気信号の増幅と整流機能がある。 また宛先を見る機能はないためポートから電気信号を受信すると、受信したポート以外のすべてのポートにデータを送信する

リピータハブ

1.3.4.2. L2スイッチ(スイッチングハブ)

L2スイッチはOSI階層モデルのデータリンク層で動作する機器で、リピータハブと異なり目的の場所にデータの送信が可能で、同時に複数端末と通信も可能である。

L2スイッチにはフィルタリング機能、MACアドレスの学習、フロー制御の3機能がある。

スイッチングハブ

1.3.5. L2スイッチの仕組みと機能

1.3.5.1. L2スイッチの3機能

フィルタリング機能はポートに接続している端末のMACアドレスを紐づけたMACアドレステーブルを宛先MACアドレスを基に検索し該当するポートにデータを送信する機能を指す。これはフィルタリングと呼ばれる。

MACアドレスの学習は以下の手順で実行される。

  1. 端末からフレームを受信し、送信元MACアドレスと受信ポートを紐づけMACアドレステーブルに登録する
  2. 宛先MACアドレスがMACアドレステーブルに存在しない場合、受信したポート以外のすべてのポートにフレームを送信(フラッディング)
  3. 宛先の端末だった場合データを受信、そうでない場合は破棄
  4. 1から3を繰り返してMACアドレステーブルにMACアドレスと受信ポートの情報が登録されていく

なお学習したMACアドレスは一定時間が経過するとMACアドレステーブルから削除される。これはMACアドレスのエージングと呼ばれる。

フロー制御はL2スイッチ上のバッファメモリ(受信したフレームが一時保存される場所)の処理が追い付かなくなり、あふれそうになった時に接続ポートに信号を送り、フレーム送信を制御する機能のこと。

フロー制御はバックプレッシャ制御IEEE802.3xフロー制御の2種類存在する。

バックプレッシャ制御はCSMA/CD方式を応用した制御でIEEE802.3xフロー制御はPAUSEフレームを基にした制御を行う。

1.3.5.2. フレームの転送方式

L2スイッチのフレーム転送方式にはいくつかあるが、主流なのはストアアンドフォワード方式である。

転送方式 説明
カットスルー フレーム先頭6バイトを読み込み転送する。転送速度は速い一方、通信品質は良くない
フラグメントフリー フレーム先頭64バイトを読み込み転送する。転送速度はストアアンドフォワードより良く、通信品質はカットスルーより良い
ストアアンドフォワード 1フレーム全体を受信した後メモリに保存しFCSによってエラーチェックを行い問題がない場合転送する。転送速度は遅いが通信品質が最も良い

1.3.5.3. コリジョンドメインとブロードキャストドメイン

コリジョンドメインはコリジョンが起こる範囲のことを指す。 リピータハブに接続される端末で構成されるネットワークは1つのコリジョンドメインとなる。

またコリジョンドメインで1台の端末だけが帯域を占有できるようにする構成はマイクロセグメンテーションと呼ばれる。これはコリジョンドメインを分割することになるので、これを行うと通信効率が良くなる。

ブロードキャストドメインはブロードキャストが届く範囲のことを指す。

ネットワークの機器 コリジョンドメイン ブロードキャストドメイン
ルータ 分割される 分割される
ブリッジ/L2スイッチ 分割される 分割されない
リピータハブ 分割されない 分割されない

1.3.5.4. オートネゴシエーション

オートネゴシエーションは接続ノードにより、自動で通信速度や通信のモード(半二重通信/全二重通信)を切り替える機能を指す。

オートネゴシエーションはノード間でFLP(Fast Link Pulse)バーストを交換し合うことで相手の通信速度や通信モードの検知を行い、優先順位表に従ってそれらを決定する。

オートネゴシエーションは最近のほとんどのルータ/L2スイッチ/L3スイッチに搭載されているが、片方の通信速度や通信タイプを固定、またはオートネゴシエーションを無効にする場合、オートネゴシエーションによる通信が非常に不安定となる。

1.4. ネットワークの構成要素

1.4.1. 通信媒体とデータリンク

データリンクのプロトコルは直接接続された機器間(レイヤー2)で通信するプロトコルである。

データリンク名 規模 通信媒体
Ethernet(イーサネット) LAN 同軸、ツイストペアケーブル、光ファイバ
Fast Ethernet LAN ツイストペアケーブル、光ファイバ
Gigabit Ethernet LAN 光ファイバ
FDDI LAN~WAN 光ファイバ、ツイストペアケーブル
ATM LAN~WAN 光ファイバ、ツイストペアケーブル
X.25 WAN ツイストペアケーブル
Frame Relay WAN ツイストペアケーブル、光ファイバ
ISDN WAN ツイストペアケーブル、光ファイバ

1.4.2. ネットワークの構成機器

1.4.2.1. ネットワークインターフェス(NIC)

ネットワークインタフェース(NIC)はコンピュータをネットワークに接続するための装置である。

NIC

1.4.2.2. リピータ

リピータはネットワークを延長する装置。 ケーブル上に流れてきた電機や光の信号を増幅や波形整形などを行う。 これらの信号はあくまで信号を整形するだけであるため、エラーフレームもそのまま再送される。

ネットワークの延長ではリピータの段数制限がある場合がある。これは少しずつ波長が乱れ信号を正しく識別できなくなるため。

1.4.2.3. ブリッジ/リピータハブ/L2スイッチ

リピータハブは受信した電気信号を中継する機器で端末から届いた電気信号の増幅と整流機能がある。 また宛先を見る機能はないためポートから電気信号を受信すると、受信したポート以外のすべてのポートにデータを送信する。

L2スイッチとブリッジは以下の様な違いがある。

ブリッジ L2スイッチ
処理 ソフトウェア主体 ハードウェア主体
処理速度 遅い 早い
ポート密度 2~16 複数
ポート仕様 MDI MDI-X

L2スイッチではCPUではなくASICと呼ばれるチップでデータ転送処理が行われる。

1.4.2.4. ルータ/L3スイッチ

ルータはネットワーク層の処理を行い、ネットワーク間の接続をしパケット転送を中継する装置。

ルータにはプライベートアドレスとグローバルアドレスを変換するNATの機能があり、L3スイッチ(マルチレイヤスイッチ)にはLANを論理的に分割するVLANの機能がある。

ルータ L3スイッチ
処理 ソフトウェア/ハードウェア ハードウェア
速度 低速~高速処理 高速処理
インターフェス LANインターフェス数が少ない インターフェス数が多い
拡張性 低い~高い 低い
価格 安価~高価 高価
利用規模 小~大規模 大規模
機能 少ない~多い 少ない

1.4.2.5. ゲートウェイ

ゲートウェイはOSI参照モデルにおけるトランスポート層からアプリケーション層までの階層においてデータを中継する装置のことを指す。

ゲートウェイは互いに直接通信できない2つの異なるプロトコルの翻訳作業を行い互いに通信可能にするものである。

1.5. ネットワーク層の機能と概要

1.5.1. ネットワーク層の概要とルーティング

ネットワーク層(L3)には通信相手のアドレスを指定するアドレッシングと目的の場所までのルートを選択するルーティングがある。

ネットワーク層ではIPがこれらの機能を提供する。

IPで扱うデータはIPパケットと呼び、IPヘッダはそこに含まれIPアドレスはIPヘッダに含まれる。

1.5.2. IPアドレッシングとIPヘッダ

IPアドレスはMACアドレスが物理アドレスと呼ばれるのに対し、論理アドレスと呼ばれる。

IPヘッダはIPアドレスを含み以下のようなフォーマットとなる。

IPヘッダ

IPアドレスにはIPv4アドレスとIPv6アドレスの2種類があり、IPアドレスといえば基本的にはIPv4のアドレスを指す。

またL3ヘッダからデータはMTUと呼ばれ1回の転送で送信可能な最大のパケットサイズを示す。

1.5.3. ルータとルーティングテーブル

IPパケットの転送には宛先に向かうための最適ルートの情報が登録されているルーティングテーブルを参照し、宛先の該当ルートがあればパケットを転送する。

上記の機能はルーティングと呼ばれる。

1.6. IPv4アドレッシング

1.6.1. IPv4アドレス

現在多くのネットワークで使用されているIPのバージョンはIPv4で32bitのサイズとなっている。

IPv6はIPv4アドレスが将来的に枯渇する懸念を受け新しく作成されたプロトコルである。

IPv4アドレスの消費を抑えるためのプライベートIPアドレス(RFC1918)やNAT(RFC1631)は同じくIPv4アドレスの消費を抑えるための規格にあたる。

1.6.2. プライベートアドレスとグローバルアドレス

IPアドレスはインターネット上で利用されるグローバルIPアドレスプライベートIPアドレスに分類される。

プライベートIPアドレス

プライベートIPアドレスの範囲のIPアドレスは同一LAN内で重複しない限りは自由割り当てが可能で、グローバルIPアドレスへの変換はNATで行う。

グローバルIPアドレス

インターネット(広義ではWAN)でやりとりされるIPアドレスで一意。

1.6.3. IPv4アドレスのクラスと特別なアドレス

1.6.3.1. IPv4アドレスのクラス

IPv4アドレスはネットワーク規模によって5つのクラスに分けられます。 これはサブネットマスクがないころにIPアドレスのネットワーク部とホスト部の境界範囲を分けるのに使用されていました。

クラス 範囲 ネットワーク部 ホスト部 割り当て可能ネットワーク数
A 0.0.0.0 ~ 127.255.255.255 8bit 24bit 126
B 128.0.0.0 ~ 191.255.255.255 16bit 16bit 16384
C 192.0.0.0 ~ 223.255.255.255 24bit 8bit 2097152
D 224.0.0.0 ~ 239.255.255.255 IPマルチキャスト用
E 240.0.0.0 ~ 255.255.255.255 実験用の予約

インターネット普及当時、クラスAは大規模ネットワーク用、クラスBは中規模ネットワーク用、クラスCは小規模ネットワーク用で使用されていましたが、IPv4アドレス枯渇問題懸念後はサブネットマスクを使用したIPアドレス分配が進むようになりました。

クラスに沿ったアドレス割り当てをクラスフル、サブネットマスクによるアドレス割り当てをクラスレスと呼ぶ。

1.6.3.2. IPv4アドレスの特別クラス

IPアドレスには予約されており、ホストに割り当てられないものがあり、それは予約済みIPアドレスと呼ばれ以下のようなものがある。

範囲(1バイト目) 用途
0 デフォルトルートに使用
127 ローカルループバックアドレス等に利用
224~239 IPマルチキャストアドレスとして利用
240~255 実験などのために予約

特殊なアドレスには以下のようなものがある。

特殊なアドレス 範囲 説明
プライベートアドレス 10.0.0.0~10.255.255.255, 172.16.0.0~172.31.255.255, 192.168.0.0~192.168.255.255 LAN内で自由に割り当てられるアドレス
ローカルループバックアドレス 127.0.0.1~127.255.255.254 ネットワーク機器自身のアドレス(Localhost)
リンクローカルアドレス 169.254.0.0~169.254.255.255 DHCP環境下でIPアドレスが割り当てられない際に割り当てられる
ネットワークアドレス - ホストがすべて0のアドレス
ブロードキャストアドレス - ホストのビットがすべて1(255)のアドレス

1.6.4. IPアドレスとサブネットマスク

1.6.4.1. IPアドレスの構成

IPアドレスはネットワーク部ホスト部に分けられ、IPv4の場合は32bitでIPアドレスは構成される。

ネットワーク部の長さは一定ではなく、割り当てられたIPアドレスにより異なり、それを表すのにサブネットマスクを使用する。

1.6.4.2. サブネットマスク

サブネットマスクはIPアドレスと同じく32bitで構成され、IPアドレスとサブネットマスクをAND演算(論理積)をとるとネットワークアドレスを算出できる。

またサブネットマスクを/24のように表記する方法はCIDR表記と呼ばれ、/24の数字部分はプレフィックス長と呼ばれる。

例:192.168.11.1/22

上記の場合ネットワーク部は左から22bitで、残り10bitがホスト部となる。 ホスト部のアドレスがすべて1のアドレスはブロードキャストアドレスとなる。

下記式で割り当てに必要なホスト部のビット数を算出可能。

2^n - 2 ≧ 使いたいアドレス数 nがホスト部のビット数となる。

1.6.5. サブネット化

サブネット化は1つのネットワークを複数の小さなネットワークに分割することを指す。これはセキュリティの向上、ブロードキャストの制御、IPアドレスの節約などのメリットがある。

なお各IPアドレスのクラスとサブネットのプレフィックス長はデフォルトでは以下関係。

クラス プレフィックス長
A 8
B 16
C 24

サブネット化のための分割可能なサブネット数や接続可能なホスト数は以下式で求められる。

サブネット数 = 2^n :nはサブネット部(サブネットのプレフィックス長-クラスによるIPアドレスのプレフィックス長)のbit数

VLSM

元のネットワークを分割した際に分割したネットワークですべて同じプレフィックス長を使うことはFLSM(固定長サブネットマスク)と呼ばれる。

逆にVLSM(可変長サブネット)は1つのネットワークを異なるサブネット長で複数のサブネットに分割することを指す。

1.7. IPv6アドレッシング

1.7.1. IPv6アドレス

IPv6アドレスはIPv4の枯渇問題の根本解決手段として用意されたプロトコルである。

また以下のような特徴が上げられる。

  • IPアドレス自動設定
  • ブロードキャストアドレスの廃止
  • パケットヘッダ簡素化
  • 階層化されたアドレス
  • セキュリティ/モビリティ強化

また簡単に種類をまとめると以下のようになる。

アドレスの種類 タイプ 割り当て範囲 説明
ユニキャスト グローバルアドレス 2000::/3 世界中で一意となるアドレス。IANAにより管理
ユニキャスト リンクローカルアドレス fe80::/10 ホスト間で一意となる
ユニキャスト ユニークローカルアドレス fc00::/7(fc00::/8,fd00::/8) LAN内で自由に使えるプライベートアドレスのようなもの
マルチキャスト マルチキャストアドレス ff00::/8 マルチキャスト用のアドレス

1.7.1.1. IPv6アドレスの特徴

IPv4は32bitで約43億個使用できるのに対し、IPv6アドレスは128bitで2^128個使用可能。

またIPv6アドレスは「手動設定」「DHCPサーバによる設定」「SLAACによる設定」が行える。

SLAACはオートコンフィギュレーションと呼ばれ以下手順でIPv6アドレスを生成します。

  1. ルータがLAN上ホストにネットワークアドレスを送信
  2. ホスト側で受信したネットワークアドレスとホストのMACアドレスからIPv6アドレスを生成(EUI-64形式)

またネットワークに接続するために必要な情報を自動で設定する機能はプラグアンドプレイと呼ばれる。

IPv6

1.7.1.2. IPv6アドレスの表記と構造

IPv6アドレスはサブネットプレフィックスインターフェスIDに分ける構造となっている。

サブネットプレフィックスはネットワークを表し、インターフェスIDがホスト部を表す。

IPv6アドレスは16進数8フィールドで構成され、後ろの/以下はサブネットプレフィックス長を示す。

IPv6

IPv6アドレスは省略記法が可能で以下ルールに基づく。

  • 各フィールドの先頭0は省略する
  • 0000のフィールドが連続する場合1回だけ::に省略する

IPv6アドレスはインターフェスIDを手動生成するか、EUI-64形式で自動生成が可能で、EUI-64形式ではMACアドレスから自動生成される。

インターフェスIDをEUI-64で生成する場合の手順は以下。

  1. 48bitのMACアドレスを半分に分ける
  2. 16bitのFFFEを真ん中に挿入
  3. 先頭から7bit目を反転させる
  4. 16進数に戻すことでインターフェスIDとなる

また、IPv6の機能には「エラー通知」「近隣探索(NDP)」がある。

1.7.2. IPv6アドレスの種類

IPv6アドレスにはユニキャストアドレスマルチキャストアドレスエニーキャストアドレスの3種類存在する。

1.7.3. IPv6ユニキャストアドレスの種類

IPv6のユニキャストアドレスの種類。

種類 説明
グローバルユニキャストアドレス インターネット上で一意のアドレス。集約可能である。
リンクローカルユニキャストアドレス 同じサブネット上で通信可能なアドレス
ユニークローカルユニキャストアドレス ローカルで使用されるアドレス。Ipv4でいうプライベートアドレス
サイトローカルユニキャストアドレス 特定のサイトのみデイ利用可能(現在は利用されない)

1.7.3.1. グローバルユニキャストアドレス

IANAが割り振っているグローバルユニキャストアドレス(集約可能グローバルアドレス)は最初の3bitは001で始まり、2000::/3と表記が可能。

さらに以下表のように分類可能

アドレス範囲 使用用途
2001::/16 インターフェス用IPv6アドレス
2002::/16 6to4用アドレス
2003::/16 ~ 3FFD::/16 未割り当て

グローバルユニキャストアドレス

前半48bitはグローバルルーティングプレフィックスと呼ばれ、ISPから割り当てられるものとなっている。

1.7.3.2. リンクローカルユニキャストアドレス

リンクローカルユニキャストアドレスは最初の10bitが1111111010で始まり、FE80::/10で表記される。

リンクローカルユニキャストアドレスは同一リンク内での通信に利用されるため必須。また必ずインターフェスに設定される。

特徴としては以下の通り。

  • ホスト間で一意になる
  • IPv6を扱うインターフェース全てに設定される
  • 手動で設定しない場合は自動生成されたリンクローカルアドレスが設定される
  • ルーティングの宛先になれない

1.7.3.3. ユニークローカルユニキャストアドレス

ユニークローカルユニキャストアドレスは最初の7bitが1111110で始まり、FC00::/7(または FC00::/8, FD00::/8)と表記される。 なお実際に割り当てられるアドレスはFC00::/8となる。

ユニークローカルユニキャストアドレスはWANでは使用されず、LANのプライベートIPアドレスに該当する。

IPv4のプライベートアドレスとの違いは、LAN内で重複しないようにすることが推奨されている。 これはグローバルで一意である確率が高くアドレスの競合が発生しにくいが、完全に一意であるという保証がないためである。

1.7.3.4. 特殊なユニキャストアドレス

用途が決まっている特殊なユニキャストアドレスを記載する。

アドレス 説明
未指定アドレス 全ビットが0のアドレス。DHCPv6サーバからアドレス取得の際に使用される。
ループバックアドレス 自分自身を表す。::1と表記される
IPv4射影アドレス 先頭80bitすべて0、次の16bitすべて1、残り32bitがIpv4アドレスで構成される

1.7.4. IPv6マルチキャストアドレス

マルチキャストアドレスは特定のグループに対しての通信の際のあて先となる。 IPv6で廃止されたブロードキャストアドレスは、マルチキャストアドレスに機能的に統合されている。

マルチキャストアドレスの最初は11111111で始まりFF00::/8と表記される。

マルチキャスト

フラグはマルチキャストアドレスのタイプを示す。 0000と0001があり、それぞれIANA割り当て、一時割り当てされたマルチキャストアドレスという意味になる。

スコープはマルチキャストアドレスの有効範囲を表す。

16進数表記 フィールド 説明
0001 1 FF01 インターフェイスローカル有効範囲
0010 2 FF02 リンクローカルの有効範囲
0101 5 FF05 サイトローカルの有効範囲
1000 8 FF08 組織ローカルの有効範囲
1110 E FF0E グローバルの有効範囲

予約済みマルチキャストアドレス

以下のマルチキャストアドレスはIANAにより予約済みである。

アドレス 説明
FF02::1 すべてのノードを示す
FF02::2 すべてのルータを示す
FF02::5 すべてのOSPFが操作しているルータを示す
FF02::6 すべてのOSPF DR・BDRを示す
FF02::9 すべてのRIPルータを示す
FF02::a すべてのEIGRPルータを示す
FF02::1:FFxx::xxxx 要請ノードマルチキャストアドレス(IPv6アドレスとMACアドレス解決に使用)

1.7.5. IPv6エニーキャストアドレス

エニーキャストアドレスは複数機器に同じアドレスを割り当て、ネットワークで一番近いところと通信する際に使用されるアドレスとなる。

1.7.6. IPv6アドレスのステートレス自動設定

IPv6のユニキャストアドレスを割り当てる仕組みは3種類ある。

方法 説明
手動設定 プレフィックスとインターフェスIDを手動で危機に設定
DHCPv6サーバによる自動設定 DHCPサーバに割り当ててtもらう方法 (ステートフルアドレス設定と呼ばれる)
オートコンフィギュレーションによる自動設定 ステートレスアドレス自動設定(SLAAC)と呼ばれる

1.7.6.1. ステートレスアドレス自動設定(SLAAC)

SLAACの際はNDP(Neighbor Discovery Protocol)を使用します。これによりデータリンク層のアドレス解決、アドレスの重複チェックも行える。 つまりNDPはIPv6用のICMPのようなものと言える。

NDPで使用されるメッセージは以下の通り。

種類 ICMPv6タイプ 説明
NS 135 特定ノードのMACアドレスを解決するための要求を表し、IPv4のARPパケット要求のようなもの
NA 136 NSに対する応答を示し、IPv4のARP応答と同じ
RS 133 端末からルータに向けて、プレフィックスやデフォルトゲートウェイが知りたい場合に利用される
RA 134 RSへの応答を示す。ルータからは定期的に配信される

またSLAACの動作は以下の通りです。

  1. クライアントがNS/NAメッセージを利用し自身のリンクローカルユニキャストアドレスを決める
  2. ICMPv6パケットにタイプ133を設定しリンクローカル内の全ルータ宛て(FF02::2)にRSメッセージを送信
  3. RSメッセージを受け取ったルータはRAメッセージをクライアントに転送
  4. クライアントはRAメッセージからプレフィックスを受け取り自身のMACアドレスから作成したEUI-64形式のインターフェスIDを付加しIPv6アドレスとして設定する

1.7.6.2. IPv6のMACアドレス解決

IPv6ではICMPv6パケットのNSやNAを利用してMACアドレス解決を行う。

またNSメッセージはARP解決だけではなく、自身のIPv6アドレスが他の機器と重複していないかを調べるのにも利用され、これはDAD(duplicate Address Detection)と呼ばれる。

1.7.7. IPv6パケットヘッダの構成

IPv6ヘッダはIPv4のアドレスと比べると簡素化されている。 またサイズは固定の40Byteとなる。

IPv6ヘッダ

フローラべルはリアルタイム処理の場合、サービス品質の保証等を行いたい場合に使用される。

ホップリミットはパケットが経由するルータの最大数を表しIPv4のTTLと同じ。

1.7.8. IPv6の変換/移行技術

現在のネットワークはIPv4とIPv6を両用しています。 IPv4アドレスとIPv6アドレスの変換のための技術がいくつか存在します。

1.7.8.1. デュアルスタック

デュアルスタックはIPv4/IPv6アドレスを1つのノードで共有させる仕組み。クライアントにIPv4/IPv6のアドレスを両方を設定しておき通信時に使い分ける。

1.7.8.2. トンネリング

トンネリングはIPv4ネットワークを経由してIPv6で通信させるための技術。通信プロトコルを別のプロトコルでカプセル化して異なるネットワークを経由させることができる。

トンネリング

トンネリングには以下技術がある。

種類 説明
手動トンネル 終端ルータでIPv4の送信アドレスと宛先アドレスを相互に設定してトンネルを確立
6to4 ルータ間でトンネル生成し、受信したIPv6宛先アドレスから自動的にIPv4宛先を指定
ISATAP IPv4ネットワークのIPv4対応ホストがIPv6ネットワークに接続するようにするためのトンネル
Teredo インターネット上のTerodoサーバと連携しトンネルを自動生成
GRE IPv6だけではなく様々なネットワーク層のパケットをカプセル化して転送する

1.7.8.3. トランスレータ

トランスレータはIPv6アドレスをIPv4アドレスに変換、またはその逆を行う技術を指す。

パケットを再度カプセル化せず、完全に変換を行う。

名称 説明
NAT-PT ルータがIPv6パケットをIPv4パケットに変換する。ドメイン変換が必要な場合はDNS-ALGと連携
NAT64 ステートフルNAT64、ステートレスNAT64の2種類存在

1.8. ICMPとARP

1.8.1. ICMP

ICMPはネットワーク上での通信状況確認や通信わらーのメッセージ送信などを主な用途として使われるプロトコルである。

疎通確認に使われるpingコマンドはICMPを利用し、応答の有無で通信可能かどうかを判断する。 pingコマンドはICMPのエコー要求エコー応答を利用し通信の可否を判断する。

ネットワークのルート上で設定変更やエラーが発生した場合ICMPで定義されているエラー通知を送信する。到達不能の場合エコー応答の代わりに到達不能メッセージを返却する。

1.8.2. ARP

ARPはIPアドレスからMACアドレスを求めるプロトコルである。 ARPではARP応答とARP応答の2種類のデータを送信しあいMACアドレスを取得する。

ARPの結果はARPテーブルに保存されそこにはIPアドレスとMACアドレスの対応関係が登録される。

またARP要求はブロードキャストで送信されるため宛先MACアドレスはffff.ffff.ffffが使用される。

1.9. TCP/UDPとポート番号

TCPとUDPはトランスポート層(L4)のプロトコルでアプリケーション層のプロトコルでの通信制御をすることが目的である。

1.9.1. TCP

TCPはコネクション型のプロトコルであり、データ転送前に通信できるかどうか確認を行いコネクションを確立してからデータの送信を行う特徴がある。

TCPは上位層から渡されたデータにTCPヘッダを追加し、TCPセグメントとしてネットワーク層にデータを流す。

TCPヘッダ

代表的なパラメータの解説は以下。

パラメータ 説明
シーケンス番号 送信データの順序を管理するためのもの
ACK番号 どこまで受信したか管理する番号
ウィンドウサイズ 確認応答を行わず受信できるデータサイズ

TCPの接続

TCPでは3ウェイハンドシェイクという方法で接続を確立する。

3wayhandshake

SYNフラグはTCP接続の開始を要求する際に使用されるフラグで、ACKフラグは相手からの要求を承認し応答するフラグ。

シーケンス番号は送信データ順序、ACK番号はどこまで受信したかを通知するための番号である。

送信データの順序管理

TCPセグメントで1回に送信できるデータには上限がありそれはMSS(Maximum Segment Size)と呼ばれる。

TCPはデータの信頼性の担保のためにACKと呼ばれる確認応答を必ず返す。

またデータ送信後にACKフラグがオンになった確認応答を受け取るが、確認応答が返ってこない場合、一定時間待機した後にデータを再送する。これはRTO(Retransmission Time Out):再送タイムアウトと呼ばれ、RTOはデータ送信から応答が返ってくるまでの時間を表すRTTを基に判断される。

ウィンドウ制御とフローの制御

TCPの基本動作はACKフラグがONになった確認応答が返送されるものだが、1つ送信するたびにACKを待っていたら効率が悪い。

そこでウィンドウというバッファ領域を用意し、ウィンドウサイズに達するまでは確認応答を待たずにデータをまとめて送るようにすることで転送の効率が上がる。 これはウィンドウ制御と呼ばれる。

ウィンドウサイズを制御しやり取りするデータ量を調整する機能はフロー制御と呼ばれる。

1.9.2. UDP

UDPはコネクションレス型のプロトコルで信頼性は保証されず、相手の状態に関係なくデータの送信を開始する。TCPでは1対1のユニキャスト通信となるが、UDPではブロードキャストやマルチキャストが可能。

UDPでは上位層から渡されたデータにUDPヘッダを付けて、それをUDPデータグラムとしてネットワーク層に渡す。またUDPヘッダを除いたデータ部分はUDPペイロードと呼ばれる。

TCPヘッダ

UDPの動作

UDPはなるべく早くデータを送信することが目的としてある。 そのためTCPよりも単純構造でヘッダもTCPが20Byteに対してUDPは8Byteしかない。

TCPは信頼性を担保するギャランティ型であるのに対し、UDPは信頼性を担保しないベストエフォート型となる。

1.9.3. ポート番号

ポート番号はアプリケーション層で利用されるプロトコルの識別番号を指す。

代表的なものは以下より。

ポート番号 プロトコル L4プロトコル 説明
20 FTP TCP FTPデータ送信
21 FTP TCP FTPデータ制御
22 SSH TCP セキュアなリモート接続
23 Telnet TCP 平文でのリモート接続
25 SMTP TCP メール送信
53 DNS TCP/UDP ドメイン名とIPアドレスの関連付け
67 DHCP UDP DHCPサーバ送信用
68 DHCP UDP DHCPクライアント送信用
69 TFTP UDP 認証なしファイル転送
80 HTTP TCP HTML文書などの公開
110 POP3 TCP メール受信
123 NTP UDP 時間同期用プロトコル
143 IMAP TCP メール送信
443 HTTPS TCP HTML文書などのセキュア通信で公開

ポート番号は以下のように分類される。

名称 ポート範囲 説明
ウェルノウンポート 0~1023 IANAにより定義されたサーバのアプリに割り当てられるポート
登録済みポート 1024~49151 独自に定義されたアプリで使用されるポート
ダイナミックポート 49152~65535 サーバとクライアントのアプリのプロセスに応じて自動割り当てされ使用されるポート

1.10. ネットワークの構成モデル

1.10.1. キャンパスLANモデル

企業/機関などの規模の大きいLANのネットワークには一般的に階層設計が適用されている。役割や機能ごとに層を分けることで拡張性、管理性を向上することが可能。

ネットワーク機器の世界的大手のCISCO社はいくつかの構成モデルを提唱している。

1.10.2. 3階層キャンパスモデル(Three-Tier Campus Design)

3階層キャンパスモデルは3つの層で構成される大規模な環境向けのネットワーク設計

3階層

説明
コア層 ディストリビューション層のL3スイッチやルータを収容し、大量のパケットの処理を行う
ディストリビューション層 アクセス層のL2スイッチを収容し、VLANルーティングを行う、またセキュリティポリシに基づいたフィルタリングを行う
アクセス層 アクセス層同士は接続せず、L2スイッチには多くのポートが必要、また結線はスター型になる

1.10.3. 2階層キャンパスモデル(Two-Tier Campus Design)

2階層キャンパスモデルは3階層モデルにおけるコア層を省略したネットワーク設計。コア層がなくなっているためコラプストコア設計とも呼ばれる。小規模ネットワーク向け

2階層

1.10.4. スパイン&リーフ(Spine and Reaf)

スパイン&リーフはスパイン層とリーフ層の2階層で構成するモデルで、主にデータセンターで採用されている構成

すべてのサーバ間通信が2ホップ以内で完結するため、サーバ間通信において低遅延を実現でき遅延の予測も容易になるというメリットがある。

スパイン&リーフ

特徴は以下の通りです。

  • リーフ層のスイッチとスパイン層のスイッチは全て接続する
  • リーフ同士、スパイン同士の接続はしない
  • エンドポイントはリーフ層に接続する
  • 同じホップ数で全ての宛先に到達可能
  • 帯域幅を増強したい場合はスパイン層にスイッチを追加する
  • エンドポイント用のポートを増やしたい場合はリーフ層にスイッチを追加する
  • リーフ層の機器もレイヤ3プロトコルに対応している(OSPFやBGPの負荷分散などが使用可能)
  • 3階層の構成と比べて障害の影響、機器やケーブルの数を少なくできる

1.10.5. SOHO(Small Office/Home Office)

SOHOは小規模オフィスや一軒家などの小規模に適したネットワーク構成を指す。

SOHO

SOHOで使用されるネットワーク機器には以下のようなものがある.

  • サービス統合型ルータ(スイッチやファイアウォールなどの機能も併せ持つルータ)
  • 自律型アクセスポイント(WLC無しでWLANを構築できるアクセスポイント)

またSOHOの場合はインターネットに接続するための回線は、帯域幅が大きく費用も抑えられるためブロードバンドと呼ばれる回線が適している