これは、このセクションの複数ページの印刷可能なビューです。 印刷するには、ここをクリックしてください.
通信/ネットワーク基礎
1 - 1.ネットワークの基礎知識
1.1. ネットワークと通信方式
ネットワークはパソコンやネットワーク機器(ハブやルータなど)の要素がケーブル等で接続されて通信可能な状態のものを指す。
ネットワークを構成する要素、例えばクライアント(PC)やサーバ、ルータなどはノード、ノード同士を結ぶ線をリンク、リンク上のデータ流れをフロー、ネットワーク上の流れる情報やその量をトラフィックという。
1.1.1. LANとWAN
ネットワークの種類はLAN、WAN、インターネットに分類される。
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はベンダーが独自に割り当てられる。
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参照モデルには以下のようなメリットがある。
- 階層ごとに機能を分けるとネットワークやアプリの設計者/開発者が役割を理解しやすい
- 階層が分かれているためネットワーク障害などの問題の切り分け等が容易
- プログラムの開発改修が簡単
カプセル化/非カプセル化
各階層の上から下へ各レイヤーのヘッダをデータに付けて、上位階層の通信データをそのままデータとしていくことはカプセル化とよばれ、その逆を非カプセル化と呼ばれる。
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階層モデルのトランスポート層
トランスポート層ではアプリケーション層のプロトコル間の通信を制御する。
プロトコルは主にTCPとUDPがあり、前者はデータの信頼性、後者はデータの伝送速度を重視する。
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イーサネットがある。 |
1.3.2.2. ツイストペアケーブルの種類
ツイストペアケーブルにはSTPとUTPがある。
STPはノイズに強いシールドがついたもので工場などの電磁波を発生する設備/機器がある場所にネットワークを構築する場合などに使用される。
UTPは一般的なツイストペアケーブルであり、主流である。
1.3.2.3. LANケーブルのタイプとMDI/MDI-X
ツイストペアケーブルにはさらに別にストレートケーブルとクロスケーブルの2種類があり
ケーブル端のピン(8つ存在)の並びにそれぞれ違いがある。
ツイストペアケーブルを差し込むポートにはMDIとMDI-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. 光ファイバケーブル
光ファイバーケーブルは大きくSMFとMMFの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アドレスの学習は以下の手順で実行される。
- 端末からフレームを受信し、送信元MACアドレスと受信ポートを紐づけMACアドレステーブルに登録する
- 宛先MACアドレスがMACアドレステーブルに存在しない場合、受信したポート以外のすべてのポートにフレームを送信(フラッディング)
- 宛先の端末だった場合データを受信、そうでない場合は破棄
- 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)はコンピュータをネットワークに接続するための装置である。
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アドレスには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 | 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アドレスを生成します。
- ルータがLAN上ホストにネットワークアドレスを送信
- ホスト側で受信したネットワークアドレスとホストのMACアドレスからIPv6アドレスを生成(EUI-64形式)
またネットワークに接続するために必要な情報を自動で設定する機能はプラグアンドプレイと呼ばれる。
1.7.1.2. IPv6アドレスの表記と構造
IPv6アドレスはサブネットプレフィックスとインターフェスIDに分ける構造となっている。
サブネットプレフィックスはネットワークを表し、インターフェスIDがホスト部を表す。
IPv6アドレスは16進数、8フィールドで構成され、後ろの/
以下はサブネットプレフィックス長を示す。
IPv6アドレスは省略記法が可能で以下ルールに基づく。
- 各フィールドの先頭0は省略する
- 0000のフィールドが連続する場合1回だけ::に省略する
IPv6アドレスはインターフェスIDを手動生成するか、EUI-64形式で自動生成が可能で、EUI-64形式ではMACアドレスから自動生成される。
インターフェスIDをEUI-64で生成する場合の手順は以下。
- 48bitのMACアドレスを半分に分ける
- 16bitのFFFEを真ん中に挿入
- 先頭から7bit目を反転させる
- 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の動作は以下の通りです。
- クライアントがNS/NAメッセージを利用し自身のリンクローカルユニキャストアドレスを決める
- ICMPv6パケットにタイプ133を設定しリンクローカル内の全ルータ宛て(FF02::2)にRSメッセージを送信
- RSメッセージを受け取ったルータはRAメッセージをクライアントに転送
- クライアントは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となる。
フローラべルはリアルタイム処理の場合、サービス品質の保証等を行いたい場合に使用される。
ホップリミットはパケットが経由するルータの最大数を表し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セグメントとしてネットワーク層にデータを流す。
代表的なパラメータの解説は以下。
パラメータ | 説明 |
---|---|
シーケンス番号 | 送信データの順序を管理するためのもの |
ACK番号 | どこまで受信したか管理する番号 |
ウィンドウサイズ | 確認応答を行わず受信できるデータサイズ |
TCPの接続
TCPでは3ウェイハンドシェイクという方法で接続を確立する。
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ペイロードと呼ばれる。
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つの層で構成される大規模な環境向けのネットワーク設計。
層 | 説明 |
---|---|
コア層 | ディストリビューション層のL3スイッチやルータを収容し、大量のパケットの処理を行う |
ディストリビューション層 | アクセス層のL2スイッチを収容し、VLANルーティングを行う、またセキュリティポリシに基づいたフィルタリングを行う |
アクセス層 | アクセス層同士は接続せず、L2スイッチには多くのポートが必要、また結線はスター型になる |
1.10.3. 2階層キャンパスモデル(Two-Tier Campus Design)
2階層キャンパスモデルは3階層モデルにおけるコア層を省略したネットワーク設計。コア層がなくなっているためコラプストコア設計とも呼ばれる。小規模ネットワーク向け。
1.10.4. スパイン&リーフ(Spine and Reaf)
スパイン&リーフはスパイン層とリーフ層の2階層で構成するモデルで、主にデータセンターで採用されている構成。
すべてのサーバ間通信が2ホップ以内で完結するため、サーバ間通信において低遅延を実現でき遅延の予測も容易になるというメリットがある。
特徴は以下の通りです。
- リーフ層のスイッチとスパイン層のスイッチは全て接続する
- リーフ同士、スパイン同士の接続はしない
- エンドポイントはリーフ層に接続する
- 同じホップ数で全ての宛先に到達可能
- 帯域幅を増強したい場合はスパイン層にスイッチを追加する
- エンドポイント用のポートを増やしたい場合はリーフ層にスイッチを追加する
- リーフ層の機器もレイヤ3プロトコルに対応している(OSPFやBGPの負荷分散などが使用可能)
- 3階層の構成と比べて障害の影響、機器やケーブルの数を少なくできる
1.10.5. SOHO(Small Office/Home Office)
SOHOは小規模オフィスや一軒家などの小規模に適したネットワーク構成を指す。
SOHOで使用されるネットワーク機器には以下のようなものがある.
- サービス統合型ルータ(スイッチやファイアウォールなどの機能も併せ持つルータ)
- 自律型アクセスポイント(WLC無しでWLANを構築できるアクセスポイント)
またSOHOの場合はインターネットに接続するための回線は、帯域幅が大きく費用も抑えられるためブロードバンドと呼ばれる回線が適している。
2 - 2.ワイヤレスLAN(無線LAN)
2.1. ワイヤレスLANの説明
ワイヤレスLANは有線ではなく電波を利用した通信技術のことを指す。
また通信方式は半二重通信となるため有線と異なり必ずコリジョンが発生するためCSMA/CA方式で制御を行う。
ワイヤレスLANにおいて電波が届く範囲はセル(ガバレッジ)と呼ばれ、無線クライアントとアクセスポイント間でデータを送受信するにはこの範囲にいる必要がある。 なお電波の信号は距離に応じて弱くなるため、電波の中心から外へ行くほど通信速度が遅くなる。 IEEE802.11はセル半径が150m以下であり、一般的に使用されるAPのセル範囲の半径はAPを起点に30m程度となっている。
2.2. 2.4GHz帯と5.0GHz帯
2.2.1. 2.4GHz帯
2.4GHz帯はワイヤレスLAN以外にも電子レンジ、BlueTooth等にも利用されている周波数帯であり、障害物に強いという特性がある。一方で他電波と干渉しやすいという欠点もある。
2.2.2. 5.0GHz帯
ワイヤレスLAN以外にほとんど利用されていない周波数帯であり、電波の干渉が発生しにくく安定した通信が可能。 一方直進性が強く障害物に回り込みにくいので障害物の影響を受けやすい特徴がある。
2.3. ワイヤレスLANの規格と種類
ワイヤレスLANはIEEE802.11として標準化され、様々な規格が定められている。
規格 | 周波数帯 | 最大伝送速度 | 呼称 | 公開年 |
---|---|---|---|---|
IEEE802.11a | 5GHz | 54Mbps | - | 1999 |
IEEE802.11b | 2.4GHz | 11Mbps/22Mbps | - | 1999 |
IEEE802.11g | 2.4GHz | 54Mbps | - | 2003 |
IEEE802.11n | 2.4GHz/5GHz | 65~800Mbps | Wi-Fi4 | 2009 |
IEEE802.11ac | 5GHz | 292.5M~6.9Gbps | Wi-Fi5 | 2013 |
IEEE802.11ax | 2.4GHz/5GHz | 9.6Gbps | Wi-Fi6 | 2019 |
IEEE802.11ax | 2.4GHz/5GHz/6GHz | 9.6Gbps | Wi-Fi6E | 2022 |
IEEE802.11be | 2.4GHz/5GHz/6GHz | 46Gbps | Wi-Fi7 | 2024(予定) |
2.3.1. IEEE802.11.b/g
IEEE802.11bとIEEE802.gは両方とも2.4GHz帯の周波数帯を利用する。 チャネル(利用できる周波数帯を分割したもの)とチャンネル幅等の関係は以下。
規格 | 周波数帯 | 最大伝送速度 | チャネル幅 | チャネル範囲 | 同時使用可能な最大チャネル数 |
---|---|---|---|---|---|
IEEE802.11b | 2.4GHz | 11Mbps | 22MHz | 1ch~13ch/5+14ch | 1,6,11,14ch(計4) |
IEEE802.11g | 2.4GHz | 54Mbps | 20MHz | 1ch~13ch | 1,6,11(計3) |
2.3.2. IEEE802.11a
IEEE802.11aは5GHzの周波数帯を利用し最大伝送速度は54Mbpsで、使用可能なチャネル数は20あり、チャネルの周波数は重複しないため電波の干渉を受けずにすべてのチャネルを使用可能。
2.3.3. IEEE802.11nとIEEE802.11ac
IEEE802.11nは2.4GHz/5GHz帯両方を通信に使用可能で最大伝送速度が600Mbpsとなる。
IEEE802.11acは5GHz帯のみの周波数帯の利用可能で最大6.9Gbpsの高速通信が可能。 これらにはMIMOとチャンネルボンディングの技術が関わっている。
2.3.3.1. MIMO
MIMOは送信/受信アンテナを複数使用し、ストリームと呼ばれるデータ通信路を複数確立し通信を分散同時送信をできるようにする技術。 IEEE802.11nでは送受信用に最大4ストリーム。理論上はMAX4倍まで高速化が可能。 IEEE802.11acでは最大8ストリームまで利用ができる。
2.3.3.2. チャンネルボンディング
チャンネルボンディングは隣り合うチャネルを束ねて使用する周波数幅を広げて高速通信を可能にする技術。
2.4. IEEE802.11ヘッダ
ワイヤレスLANで使われるIEEE 802.11ヘッダは以下のフィールドで構成される。
フレーム制御のフィールドにはフレームの種類を示す情報などが入る。 フレームの種類は以下の通り。
- 管理フレーム(認証、関連付け要求、関連付け応答、再関連付け要求など)
- 制御フレーム(送信要求、応答確認など)
- データフレーム
また管理フレームの保護を目的としたIEEE規格にIEEE802.11wというものがある。 IEEE802.11wのプロトコルはPMF(Protected Management Frames)という機能を有効にした管理フレームに対して適用され、管理フレームを使用した攻撃を防ぐ。
2.5. ワイヤレスLANの通信方式
ワイヤレスLANの通信方式にはアドホックモード(IBSS)、インフラストラクチャモードがある。
2.5.1. アクセスポイント
アクセスポイント(AP)はワイヤレスLAN環境で利用される機器で、ワイヤレスLAN同士の通信、有線LANとの接続などを行う。
アクセスポイントはアクセスポイントの識別名であるSSIDの確認/認証、接続要求と応答等を行う。 また通信の盗聴を防ぐために暗号化/復号化も行う。
またアクセスポイントのモードは以下の通り。
モード | 説明 |
---|---|
Local | LAPデフォルトのモード |
FlexConnect | WAN経由でWLCと接続するときに使用するモード |
Monitor | 不正APの検出、IDS・RFID専用モードなどとして動作 |
Rogue Detector | 有線ネットワーク上に不正なAPやクライアントがいないか監視するモード |
Sniffer | 特定チャネルのすべてのトラフィックを収集し指定デバイスに送信するモード |
Bridge | APがブリッジとして動作するモード |
SE-Connect | スペクトルアナライザ専用モード |
2.5.2. BSS/BSSID
BSSは単一アクセスポイントとそのアクセスポイントの電波が届く範囲に存在するワイヤレスクライアントで構成される範囲を表し、BSSIDはBSSを識別するIDで48bitで構成される。
BSSIDは通常、アクセスポイントのMACアドレスと同値になる。
2.5.3. ESS/ESSID
ESSは複数のBSSで構成された範囲を表し、ESSIDはESSを識別するIDで最大32文字まで設定可能。
通常はESSIDとSSIDは同じ意味で用いられる。
2.5.3. ローミング
ローミングはワイヤレスLANクライアントの電波状況に応じて接続するアクセスポイントを切り替える機能。
IEEE 802.11rでは、認証の際にFT(Fast Transition)と呼ばれる高速認証プロトコルを利用することで、高速ローミングが可能となっている。
なおローミングを可能にするには、対象のAPで同じSSID、パスワード、セキュリティポリシーを設定する必要がある。
2.5.3.1. サブネット間ローミング
サブネット間ローミングは異なるサブネットに属しているAPへローミングすることを指す。
2.6. ワイヤレスLANクライアントとアクセスポイントの接続
ワイヤレスLANクライアント-アクセスポイント間通信では、管理フレーム、制御フレーム、データフレームを使用する。
接続時には管理フレームが用いられる。
- アクセスポイントは定期的にビーコンという信号を送信する、ワイヤレスLANクライアントはそこから接続可能なアクセスポイントの情報を取得できESSIDの情報を確認する
- ワイヤレスLANクライアントからアクセスポイントを検索する場合、接続したいアクセスポイントのESSIDの情報を**プローブ要求*で送信し、プローブ応答をアクセスポイントから得る
- 1or2の後、アクセスポイントとワイヤレスLANクライアントで設定した認証方式で認証を行い、クライアントは認証要求を送信し、アクセスポイントは認証が成功すれば認証応答を返す
- 認証後、クライアントからアソシエーション要求という接続要求を行い、アクセスポイントは接続許可をアソシエーション応答で返答する。このやりとりをもって接続が確立する
- 接続後、データの暗号化処理が行われ送受信する
2.7. ワイヤレスLANアーキテクチャ
アクセスポイントは自律型アクセスポイントと集中管理型アクセスポイントの2種類に大きく分けられる。
2.7.1. 自律型アクセスポイント
自律型アクセスポイントはアクセスポイントでIOSが動作し、それを設定することでワイヤレスLANを構築できる。 特徴としてはそれぞれのアクセスポイントに個別で設定管理を行う必要がある。
自律型アクセスポイントは小規模ネットワークの構成に適している。 中・大規模ネットワークでは設定管理が複雑になるため不向き。
また自律型アクセスポイントの認証にはRADIUS認証, TACACS+認証, ローカルデータベース認証が設定可能。
2.7.2. 集中管理型アクセスポイント
集中管理型アクセスポイントはアクセスポイント自体に設定を行わず、ワイヤレスLANコントローラ(WLC)を介し一括で管理設定を行う。
中・大規模ネットワークでは設定管理の手間を大幅に削減できる。 集中管理型のワイヤレスLAN構成では、すべてのトラフィックはワイヤレスLANコントローラとアクセスポイントを経由する。 上記両機器の通信にはCAPWAPというプロトコルが使用される。
集中管理型アクセスポイントを管理するWLCは様々なポートを持つ。 WLCの物理インターフェイスは以下。
ポート | 説明 |
---|---|
コンソールポート | ・コンソールケーブルによりPC接続, ・WLC設定、障害対応を行うために使われる |
ディストリビューションシステムポート | ・LANケーブルによりスイッチと接続(トランクポート), ・通常トラフィック,管理トラフィックの送受信に使用、・LAGに対応 |
サービスポート | ・LANケーブルによるスイッチ接続(アキセスポートモード), ・ネットワーク障害時のシステム復旧/メンテナンスで使用、・アウトオブバンド管理 |
冗長ポート | ・LANケーブルによりWLCと接続, ・大規模ネットワークでWLC冗長化にために使用 |
また論理ポートは以下の通り。
インターフェイス | 説明 |
---|---|
Service Port | アウトバンド管理用のサービスポートと関連付けられるインターフェイス |
Management | WLC管理用インターフェイス |
Virtual | 代理DHCPサーバ、Web認証などの宛先となる仮想インターフェイス |
Dynamic | SSIDとVLANマッピングを行うインターフェイス |
2.7.2.1. CAPWAP
CAPWAPはワイヤレスLANコントローラと集中管理型アクセスポイント間のやり取りで使われるプロトコル。 CAPWAPを使用し両機器の間でCAPWAPトンネルを生成してデータをカプセル化して転送を行う。
※LWAPPはCAPWAPの元となったプロトコル
CAPWAPではCAPWAP制御メッセージとCAPWAPデータの2種類がやりとりされる。
種類 | 説明 |
---|---|
CAPWAP制御メッセージ | アクセスポイントの構成/操作/管理に使用される |
CAPWAPデータ | データ転送に利用される |
2.7.3. スプリットMACアーキテクチャ
スプリットMACアーキテクチャは自律型アクセスポイントと集中管理型アクセスポイントを使用したワイヤレスLAN構成でアクセス制御の役割をAPとWLANコントローラで分割(スプリット)する方式のこと。
通信の暗号化などのリアルタイム性が高い処理はAPが行い、認証などのリアルタイム性が低い処理はWLANコントローラが行う。 スプリットMACアーキテクチャにおける主なAPの処理とWLANコントローラの処理を以下に記す。
機器 | 機能 |
---|---|
アクセスポイント | 電波の送受信 データの暗号化/復号 ビーコン/プローブ応答 他のAP存在の監視 |
ワイヤレスLANコントローラ | セキュリティポリシ設定 認証 ローミング管理 RF管理 モビリティ管理 |
スプリットMACアーキテクチャのAP処理とWLCの処理系の違いは以下のとおり。
2.7.4. DCA
DCA(動的チャネル割り当て)はWLCの機能のひとつでオーバーラップ(周波数が重なること)しないようにチャネルの割り当てを行う機能のことを指す。
DCAでは電波強度・干渉・ノイズ・負荷・利用率を解析することで、複数あるチャネルの中から最適なものを選択し、APに割り当てる。
2.8. ワイヤレスLANのセキュリティ
2.8.1. ワイヤレスLANセキュリティ
ワイヤレスLANは有線LANと異なりデータは特定のケーブルを流れるわけではなく電波で流れるため、有線よりもと盗聴のリスクが高い。
そのためワイヤレスデータの暗号化とクライアント端末の認証に焦点を当ててセキュリティ実装する必要がある。
ワイヤレスデータの暗号化
ワイヤレスデータはアクセスポイントとクライアント間を電波でやり取りされる。 そのため周囲の不特定多数の相手にデータが容易にわたる可能性が高い。
そのためデータの暗号化が必要である。 データの暗号化はアクセスポイントとクライアント間で共通する暗号化方式を使用してデータをアクセスポイントのみが読み取れるようにする。
ワイヤレスLANで使用される暗号化アルゴリズムはRC4、AESなどがある。
クライアント端末の認証
ワイヤレスLANでは電波による通信の特性上、接続を望まれない端末からの接続できてしまう可能性が存在する。 悪意のある端末が正規接続のクライアントになりすまし接続の拒否をする必要がある。 そのためアクセスポイントは通信相手が正規接続のクライアントか判断するために認証を行う。
ワイヤレスLANではパスフレーズによる事前共有鍵認証、またはRADIUSサービスを利用したIEEE802.1X認証を行う。
事前共有鍵認証
事前共有鍵認証(PSK認証)はアクセスポイントとクライアント端末で同じパスワードを事前に設定し、そのパスワードから暗号鍵が生成され、これを利用し認証を行う。
この方式は小規模無線LAN、公共ワイヤレスネットワークで広く普及している方式であり身近である一方、PSK認証をしているデバイスの紛失や、パスワードの流出の可能性があるためセキュリティ強度は高いとは言えない。
IEEE802.1X認証
IEEE802.1X認証ではユーザの認証を実装できる。 有線LANではスイッチが認証装置となるが、ワイヤレスLANではアクセスポイントがそれとなる。
IEEE802.1X認証ではユーザの認証情報はEAP(Extensible Autholication Protocol)というデータリンク層のプロトコルがデータの送受信に使用される。
EAP
EAPはIEEE802.1X認証で使用されるプロトコルで様々な認証方式に対応している。
認証方式 | 説明 |
---|---|
LEAP | クライアント-サーバ間でユーザID,パスワードによる認証を行うCISCO機器特有の認証方式。脆弱性が発見されたため現在は非推奨 |
EAP-FAST | クライアント-サーバ間でユーザID-パスワード認証を行う際にPACという独自のフォーマットで認証を行う方式。電子証明書が不要 |
PEAP | クライアント-サーバ間でユーザID-パスワード認証を行いサーバは電子証明書で認証を行う。Windowsには標準搭載 |
EAP-TLS | クライアント-サーバ間両方で電子証明書で認証を行う。セキュリティは高いが証明書維持管理に手間がかかる、Windowsには標準搭載 |
PKI
PKI(公開鍵基盤)は公開鍵暗号方式による通信を安全に行うための基盤。PKIは「なりすまし」による公開鍵の配布を防ぐ。
公開鍵は認証局(CA)のデジタル署名を添付した電子証明書(公開鍵証明書)の形で配布される。受信側は鍵が本物かどうかを署名と証明書の検証によって確かめることができ、電子証明書は公開鍵と、その所有者の情報、有効期限の情報などを含む。
2.8.2. ワイヤレスLANセキュリティ規格
ワイヤレスLANのセキュリティ規格には現在4つある。
- WEP
- WPA
- WPA2
- WPA3
規格 | WEP | WPA | WPA2 | WPA3 |
---|---|---|---|---|
策定年 | 1999年 | 2002年 | 2004年 | 2018年 |
暗号化方式 | WEP | TKIP or CCMP(任意) | CCMP or TKIP(任意) | GCMP or CCMP |
暗号化アルゴリズム | RC4 | RC4 | AES | AES |
認証方式 | OSA, SKA | PSK, IEEE 802.1X/EAP | PSK, IEEE 802.1X/EAP | SAE, IEEE 802.1X/EAP |
改竄検知(MIC) | CRC-32 | Michael | CBC-MAC | CBC-mAC/GMAC |
セキュリティレベル | × | △ | 〇 | ◎ |
IVサイズ | 24bit | 48bit | 48bit | 48bit |
暗号化キー長さ | 40/104bit | 128bit | 128bit | 192/256bit |
2.8.3. WEP
WEPは40bitまたは104bitの固定長WEPキーなる共通鍵を用いて認証/暗号化を行う方式。 WEPキーはワイヤレスLANクライアントとアクセスポイント両方に登録し認証を行う。
WEPキーから生成された暗号鍵を利用しRC4という暗号化アルゴリズムで暗号化を行う。 しかしながら上記暗号化方法は時間をかければ解読可能であるという脆弱性が見つかったため2022年現在ほとんど利用されていない。
2.8.4. WPA
WPAは暗号化化方法にTKIP(Temporal Key Integrity Protocol)を使用し堅牢なセキュリティとなっている。
WPAの特徴としては暗号化アルゴリズム自体はWEPと同じくRC4を採用しているが、TKIPを利用して一定時間ごとに暗号鍵を変更する処理をすることで暗号の解読を困難にしている。 つまりRC4とTKIP方式の暗号化を組み合わせた認証システムである。なお認証には事前共有鍵(PSK)で行う。
TKIPはデータ部分にMICというフィールドを付加することでデータの改ざんを検知できる。
2.8.5. WPA2
現在のワイヤレスLANにおいて最も普及しているセキュリティ規格である。 機能はWPAとWPA2はほとんど同じですが、暗号化方法にCCMP(Counter Mode-CBC MAC Protocol)を用いてAES(Advanced Encryprion Standard)と呼ばれる暗号化アルゴリズムを使うことで強度の高いセキュリティを実装している。
CCMPではCMC-MACによりメッセージの改ざんを検知する。
WPA2を用いた事前共有鍵認証(PSK, SAE)はWPA2パーソナル、IEEE802.1X認証/EAP認証はWPAエンタープライズと呼ばれる。
WPA2エンタープライズ
WPA2エンタープライズは企業向けのWPA2の規格で、事前共有鍵(PSK)認証に加えてIEEE802.1X認証/EAP認証やディジタル証明書/OTPなどの認証方式を組みあせた認証を用いるモードのこと。
2.8.6. WPA3
WPA2の脆弱性を悪用したKRACK攻撃が2017年に発見された。その対策の新しい規格として発表されたのがWPA3である。
WPA3ではKRACK攻撃への対策を施したSAE(Simultaneous Authentication of Equals)と呼ばれる新しいハンドシェイクの手順を実装した。 これによって従来手法の4ウェイハンドシェイクの前にSAEハンドシェイクを行わせることでKRACKを無効化する。
またWPA3では辞書攻撃への対策としてパスワード認証を一定回数失敗した場合ブロックできる機能が追加されている。
特徴としては以下の通り。
- 認証方式にSAE
- 前方秘匿性
- PMFの必須化(管理フレーム保護)
- ログイン攻撃防止機能
WPA3が使用する暗号化アルゴリズムAESでは、暗号化に必要となる暗号鍵として128bit、192bit、256bitのいずれかの鍵長を用いることができる。 またWPA3にはWPA3パーソナル、WPA3エンタープライズ、WPA3エンタープライズ192bitモードの3つのモードがある。
WPA3パーソナル、WPA3エンタープライズでは、128bitのAES暗号鍵を使用するAES-128(CCMP)の実装が最小要件とされてる。 WPA3エンタープライズ192bitモードは、通常のWPA3パーソナルやエンタープライズよりもセキュリティが強化されており、AES-256(GCMP)などの複数のセキュリティ要件の実装が必須となっている。
WPA3エンタープライズ
WPA3エンタープライズは企業向けのWPA3の規格で、事前共有鍵(PSK)認証に加えてIEEE802.1X認証を行うモード。 暗号化強度を192bitに引き上げることで、セキュリティを強化できる。
またWPA3エンタープライズでは新しい暗号化アルゴリズムにCNSAが提供されている。
Enhanced Open
Enhanced Openは主に飲食店やホテルなどの公衆Wi-Fiで使用されるセキュリティ規格であり、分類上はWPA3の拡張機能である。
Enhanced OpenはOWE(Opportunistic Wireless Encryption)という技術を用いて通信の暗号化を行う。 クライアントごとに通信を暗号化してデータを保護するため、公衆Wi-Fiで懸念される通信の覗き見や攻撃を防止することができる。
3 - 3.スイッチング
3.1. スイッチング
3.2. VLAN
VLAN(仮想LAN)はスイッチ内部でネットワークを仮想的に分割する技術を指す。
VLANを使用すると1台の物理的なスイッチで仮想的に複数のネットワークを作成できる。つまるところ1台の物理的スイッチにそれぞれ分割したネットワークの数だけ仮想的なスイッチが構成されるイメージとなる。
VLANのメリットは以下の通り。
- 端末の物理的配置に依存しないネットワークの構成が可能
- ブロードキャストドメインの分割が可能
- セキュリティ対策となる
3.2.1. VLANのポート
VLANのポートはどのVLANに属するかによってアクセスポートとトランクポートに分かれる。
3.2.1.1. アクセスポート
アクセスポートは1つのVLANに属しているポートを指す。 またアクセスポートは通常PCやサーバといった機器が接続されるポートとなる。(デフォルトはVLAN1)
またアクセスポートに接続されたリンクはアクセスリンクと呼ばれる。
スイッチのポートにVLANを割り当てるには2つの方法があり、1つが手動で割り当てるポートベースVLAN(スタティックVLAN)、もう1つが自動で割り当てるダイナミックVLANという。
3.2.1.2. トランクポート
トランクポートは複数のVLANに属しているポートとなる。
トランクポートにつながっていて複数のVLANが通過するリンクはトランクリンクと呼ばれる。 またトランクポートに接続されるポートは通常、複数のVLANの通信が通過するスイッチ間ポートやルータと接続されているポートとなる。
3.2.2. トランキングプロトコル
トランクポートでは複数のVLANの通信が通過するため、通信を識別する必要はある。そのためトランクリンクではフレームにVLANを識別するための情報としてタグが付加される。方法にはCISCO社独自手法のISLとIEEE802.1Qの2つのプロトコルがある。
3.2.2.1. ISL
ISLはCISCO社独自定義のプロトコル。 イーサネットフレームの前にISLヘッダを付加し、新しくFCSを再計算し末尾に負荷する構成となる。
ISLでは通常のイーサネットフレームの最大長の1518ByteにISLヘッダとISL FCSを合わせた30Byteを足して1548Byteの大きさとなる。
ISLでは通信対象の機器もCISCO製品である必要がある。
3.2.2.2. IEEE802.1Q
IEEE802.1Qはイーサネットフレームの送信元MACアドレスとタイプ間にVLANタグを挿入する、タギングプロトコル、と呼ばれる。 IEEE802.1Qでは通常のイーサネットフレームの最大長に4Byteを足した1522Byteとなる。
IEEE802.1QにはNativeVLAN(ネイティブLAN)と呼ばれる機能がある。 これはトランクポートに1つずつ選択でき、ネイティブVLANには指定したVLANからの通信にはタグをつけずに送信し、受信した際にネイティブVLANからの通信と判断する構造となっている。 つまり両スイッチそれぞれでトランクリンクのNativeVLANを合わせておく必要がある。
またIEEE802.1Qのようにフレームにタグフィールドを付加することによって、対向の機器がフレームのVLAN番号を識別できるようにする技術はVLANタギングと呼ばれる。
3.2.3. ベビージャイアントフレームとポートのネゴシエーション
3.2.3.1. ベビージャイアントフレーム
ISLでは最大サイズが1548Byte、IEEE802.1Qでは最大サイズが1522Byteとなるが、このように通常のイーサネットフレームの最大長より少し大きなフレームサイズはヘビージャイアントフレームと呼ばれる。
1600Byteまでのフレームサイズがこう呼ばれ、それ以上大きいものはジャンボフレームと呼ばれる。
3.2.3.2. ポートのネゴシエーション
VLANのポートを自動でアクセスポートかトランクポートを決定するネゴシエーションを行うプロトコルにはCISCO独自定義のDTP(Dynamic Trunking Protocol)がある。
DTP有効下ではデフォルトで30秒ごとにマルチキャストアドレス宛てにDTPフレームを送信し、カプセル化/トランクポートにするかどうかネゴシエーションをします。
ポートの動作モードは以下の通り。
モード | 動作 |
---|---|
trunk | トランクポートとして動作 |
access | アクセスポートとして動作。DTPフレームは自身から送信しない |
dynamic desirable | DTPフレームを送信しネゴシエーションを行う。対向機器が了承した場合自身もトランクポートとして動作 |
dynamic auto | 自身からDTPフレームを送信しない。対向機器からネゴシエーションが行われたときにトランクポートとして動作 |
DTPによるネゴシエーションはVLANの情報を同期させるためのプロトコルのVTPのVTPドメイン名が一致しているときに利用可能。
3.2.4. 音声VLAN
VLANはIPテレフォニー(音声データをデジタル変換してIPパケットに格納しIPネットワークで音声通信を可能にする技術)でも使用されている。
IP電話の通信フレームと通常IPデータ通信のフレームを識別するためにVLANが使用される。 データ用のVLANと音声データ用のVLANを用意し通信を分ける機能は音声VLANと呼ばれる。 なおタグ中にはVLAN番号を以外を示す部分にCoSというフレーム優先度を表す値が格納できるようになっている。
パケットに優先順位をつけて通信品質と速度を保証する技術はQoSと呼ばれ、そのためにVLANは使用される技術である。
トラフィック | 使用するVLAN |
---|---|
データトラフィック | Native VLANを使用して伝送 |
ボイストラフィック | Voice VLANを使用して伝送 |
3.2.5. VTP
VTP(VLAN Trunking Protocol)はCISCO社独自定義のプロトコルでVLANが複数のスイッチにまたがった環境でVLANの管理を簡素化できるというもの。
VTPのバージョンは1,2,3あり、VTPの使用にはバージョンを合わせる必要がある。
3.2.5.1. VLAN情報の同期
VTPを使用すると、あるL2スイッチでVLANの作成/設定を行うとVLANの情報がトランクリンクを通じマルチキャストで他のL2スイッチに伝搬する。その際にVLANの情報はL2スイッチのデータベースに保存される。
しかしスイッチのデータベースに保存されるのは標準範囲(VLAN 1~1005)までなため、CISCO社製のスイッチではvlan.datというファイル上でフラッシュメモリ上に保存される。
なお情報の同期はスイッチが自動で行うが、その際の最新更新情報の判断にはリビジョン番号が使用される。 これはデータベースに付けられる番号で、VLANの作成/更新/削除を行うと可算されていく。 これにより同期後の変更回数を確認できるためこれを基準に、もっとも大きいリビジョン番号を持つスイッチがを基準に他スイッチが同期をとる。
3.2.5.2. VTPドメイン
VTPではドメイン単位でスイッチを管理しVLAN間の情報は同じドメインに所属するスイッチ間でしか行わない。 これはVTPドメイン名で判断が可能。 つまり情報の同期を行いたいスイッチでは同じVTPドメインを指定する必要がある。
3.2.5.3. VTPの動作モード
リビジョン番号、VTPドメインのほかにVLAN情報の同期の設定を行うものとしては動作モードがある。
モード | 説明 |
---|---|
サーバモード | VLANの作成/更新/削除が可能なデフォルトのモード。自身のVLAN情報を他スイッチにアドバタイズする。また他のスイッチに送る情報はVTPアドバタイズメントと呼ばれる。 |
クライアントモード | VLANの作成/変更/削除を行えない。サーバモードから送られたVLAN情報を同期し他のルータにそれを送る。 |
トランスペアレントモード | VLANの作成/更新/削除が可能だが他のスイッチにVLAN情報をアドバタイズしない。また他ルータから情報を受け取っても同期せず他のスイッチにそれを転送する。このモードでは常にリビジョン番号が0となり、VLAN情報はvlan.dat以外にrunning-configにも保存される。拡張範囲LAN(1006~4095)を利用する場合必ずこのモードを使用する必要がある。 |
また動作モードの挙動は以下の表のようになる。
モード | VLANの作成/更新/削除 | VLAN情報同期 | アドバタイズメント |
---|---|---|---|
サーバ | できる | 同期する | 送信する/転送する |
クライアント | できない | 同期する | 送信しない/転送する |
トランスペアレント | できる | 同期しない | 送信しない/転送する |
3.2.5.4. VTPプルーニング
VTPプルーニング(VTP Pruning)はブロードキャストの宛先VLANが存在しない(使われていない)スイッチへはフレームを送らないようにする技術のことを指す。
VTPプルーニングを有効にすることで、不要なトラフィックを減らす事が出来る。
3.2.6. VLAN間ルーティング
VLAN間ルーティングは異なるVLAN間での通信を許可する仕組みをいう。 VLAN間ルーティングはL2スイッチのみではできない、そのためルータ/L3スイッチが必要となる。
3.2.6.1. VLAN間ルーティング構成
下記の構成はルータオンスタティックと呼ばれる。
この構成ではルータ-スイッチ間の物理インターフェイスを仮想的に複数に分ける必要がある。 その方法としてサブインターフェイスを作成する。
3.2.6.2. サブインターフェイスの作成
サブインターフェイスの作成順序は以下の通り。
- サブインターフェイスのカプセル化をISLかIEE802.1Qのどれかに指定する
- サブインターフェイスとして扱う物理インターフェイスを2つに分割する
なおルータとL2スイッチ間はトランクリンクにする必要がある。
3.2.6.3. VLAN間ルーティングのルータ側の設定
ルータオンスティックによるVLAN間ルーティング用のルータに必要な設定は以下の通り。
- VLANごとのサブインターフェースを作成
- VLANカプセル化方式の指定とVLAN IDの指定
- サブインターフェースにIPアドレスを設定
3.2.6.3. L3スイッチを使用したVLAN間ルーティング
L3スイッチを使用してVLAN間ルーティングを行うには以下3つの設定が必要となる。
- ルーティングの有効化
- SVIの作成
- 物理インターフェースへのVLAN割り当て
またL3スイッチ-L2スイッチ間でVLANルーティングではIPアドレスを設定する必要がある。 L3スイッチにはSVIとルーテッドポートの2つのIPアドレスを設定可能なポートがある。
ポート | 説明 |
---|---|
SVI | スイッチ内部の仮想インターフェイス |
ルーテッドポート | VLAN可能なスイッチポートの設定変更を行いL3インターフェイスにしたもの。VLANの割り当ては行えない。 |
3.2.7. VLANの作成
新しいVLANを導入する際の手順は以下の通り。
- VLANを作成する
- VLANに名前を設定する
- VLANをポートに割り当てる
3.3. STP
STP(スパニングツリープロトコル)はIEEE802.1Dとして規定されたL2スイッチで冗長化構成を組んだ際のブロードキャストストーム(L2通信のループ)を防ぐためのプロトコル。 具体的にはネットワークの耐障害性向上のために冗長化を行った際にブロードキャスト通信がループしてネットワークリソースを圧迫するのを防ぐのに使用される。ARP要求などがそのブロードキャストにあたる。
3.3.1. STPの仕組み
STPでは冗長化構成の場合すべてのポートを使用せず一部のポートの通信を行わない状態にする。 ネットワークをツリー構造として考えることでループが発生しないため、ツリー構造となるようにブロックするポートを決定する。
ツリー構造にするにはツリーの起点となる中心スイッチを決定する必要がある。 中心スイッチはルートスイッチと呼ばれている。 STPではルートブリッジから最も遠いポートをブロックする。
ルートスイッチを決定するためにブリッジIDの値を比較し優劣を決定する。 ブリッジIDはブリッジプライオリティとMACアドレスから決定される。 スパニングツリーが有効なスイッチドネットワークでは最小のブリッジIDを持つスイッチがルートブリッジに選出される。
なお比較の際はブリッジプライオリティ(デフォルトで32768)のほうが比較に優先される。
ポートの役割
STPではポートの役割はルートポート、指定ポート、非指定ポートとなる。
選出順序/選出対象 | 特徴 | 選出方法 |
---|---|---|
1.ルートブリッジ | L2ネットワークに1つ | 最小ブリッジID |
2.ルートポート(RP) | ルートブリッジ以外の各スイッチに1つ | 最小ルートバスコスト(ポート)→最小送信元BD→最小ポートID |
3.指定ポート(DP) | 各セグメントごとに1つ | 最小ルートバスコスト(スイッチ)→最小送信元BD→最小ポートID |
4.非指定ポート | L2ループごとに1つ | RP,DPにならなかったすべてのポート |
L2スイッチ間の情報交換
STPではスイッチ間で情報交換するのにBPDUという管理用フレームを用いる。 BPDUは0180.C200.0000というアドレスがマルチキャストアドレスとして使用される。 STPが動作するスイッチはBPDUを送受信して、ルートブリッジや各ポートの役割を決定する。
なおパケット構造でいうとBPDUはL2ヘッダの後ろに格納される。
ルートブリッジ決定の仕組み
L2スイッチは電源投入後にBPDUを2秒間隔で送信する。 決定プロセスは以下図より。
ルートポートは以下基準で算出される。
- 累計のルートパスコストが最小のポート
- 送信元ブリッジIDが最小のBPDUを受けったポート
- 送信元ポートIDが最小のBPDUを受け取ったポート
ポートIDは**ポートプライオリティ(デフォルト値128)とポート番号(インターフェス番号)**の組み合わせで表される。
またSTPでは以下のポートをルートブリッジが決定すると決定する。
- ルートポート … ルートブリッジまでの最短パスコストを持つポート
- 指定ポート … スイッチ間セグメントで最上位のBPDUを送信するポート
- 非指定ポート … 役割が決まらなかったポート(通称: ブロッキングポート)
指定ポートは以下基準で算出される。
- ルートバスコストが最小のBPDUを送信するポート
- 送信元ブリッジIDが最小のBPDUを送信するポート
- 送信元ポートが最小のBPDUを送信するポート
非指定ポートは役割の決定することがなかったポート。 動作としてはユーザからのフレームは送信せず、MACアドレスの学習は行わないがBPDUは受信する。
STPの動作順序はまとめると以下のようになる。
- ルートブリッジの決定
- ルートポートの決定
- 指定ポートの決定
- 非指定ポートの決定
3.3.2. ポートのステータス
ルートポートや指定ポートが決定するとユーザのフレームの転送が可能となる。 各ポートの種類が決定してもすぐに転送は行われず、ポートは状態を遷移しながら転送可能な状態となる。 状態遷移はタイマーを用いて管理され、ポートの状態はステータスで表される。
ステータス | 意味 | MACアドレス | データフレーム |
---|---|---|---|
Disabled | シャットダウン/障害が発生している状態 | 学習しない | 転送しない |
Blocking | BPSDの受信を行い、データフレームは転送しない。初期/非指定ポートはこの状態 | 学習しない | 転送しない |
Listening | BPSDを送受信し、各ポートの役割決定を行う状態 | 学習しない | 転送しない |
Learning | BPSDを送受信し、MACアドレステーブルの学習をしている状態 | 学習する | 転送しない |
Forwarding | データ転送が可能な状態。ルートポート/指定ポートは最終的にこの状態となる | 学習する | 学習する |
ポートの状態遷移
上記の図の遷移が行われすべてのポートの役割が決定する状態はコンバージェンスと呼ばれる。
STPタイマーの種類
STPのタイマーには種類がある。なおこのタイマー設定の変更は非推奨となっている。 下記表よりコンバージェンスまで最大50秒ほどかかわる計算となる。
タイマー | デフォルト値 | 説明 |
---|---|---|
Hello Time | 2秒 | スイッチのBPDUの送信間隔 |
Max Age | 20秒 | ルートブリッジからのBPDUを受信しなくなり障害発生と見なすまでの時間。この20秒間にBPDUを受信しないとSTPの再計算が開始する。 |
Forward Delay | 15秒 | リスニング状態、ラーニング状態にとどまる時間 |
3.3.4. STPの関連機能
3.3.4.1. PortFast
PortFastは通常のSTP状態遷移を経由せずにすぐにFowarding Delayの状態となり通信可能となる機能。 具体的にはBlocking状態からForwardingに状態を省略できる。
これはCis co社が独自に高速化する方法として考案し、ポートの状態がListenning, Learingの状態のときにデータを転送しないために通信できない期間を短縮するためのものとなっている。
なおPortFastはPCが接続されFowardingとなるポートで設定を行う必要があり、L2スイッチ間リンクではループの原因となるため設定してはならない。
3.3.4.2. BPDUガード
BPDUガードはBPDUを受け取るべきではないPortFastの設定がされているポートがBPDUを受け取らないための仕組み。 PortFastの設定ポートがBPDUを受け取ってしまうと意図したスイッチがルートスイッチではなくなりルートが想定どおりに通らなくなってしまう。それを防ぐための機能といえる。
なおBPDUガードはデフォルトで有効化されていないためネットワーク管理者が自動で有効化する必要がある。 BPDUガードが設定されているポートではBPDUを受け取るとErr-Disable状態となりポートはシャットダウンされデータを送受信できなくなる。 なおポートの復旧にはL2スイッチにアクセスしてコマンドを入力する必要がある。
3.3.4.3. ルートガード
ルートガードは既存環境よりもブリッジプライオリティの小さいスイッチが勝手に接続された際に既存のSTPトポロジの変更を防ぐ仕組み。この機能もBPDUガードと同様に既存のSTPトポロジの保護ができる機能となる。
ルートガードを設定ポートにルートブリッジよりも上位のBPDUが送信されるとポートをroot-inconsistent(ルート不整合)状態にする。そうすると通信がブロックされる。 BPDUガードと異なり、上位のBPDUが送られなくなると通常の状態遷移をするようになる。
3.3.5. RSTP
RSTP(ラピッドスパニングツリープロトコル)はSTPを改良したIEEE802.1wで規定されたプロトコル。 このプロトコルはPortFastと異なり、CISCO社製以外のスイッチでも使用することができSTPと互換性があるため併用が可能となっている。
RSTPはSTPの上位互換機能であるため大部分のネットワークで使用されている。 機能としてはコンバージェンスまでの時間が数秒までに短縮されている特徴がある。
ポートの役割
RSTPではSTPのポートの役割(ルートポート、指定ポート、非指定ポート)に加え、非指定ポートをさらに2つに分割している。 その2つのポートが代替ポートとバックアップポートとなる。
代替ポートはルートポートの予備ポートであり障害が起きてルートポートの通信トポロジが崩れた際にルートポートになる。 バックアップポートは指定ポートの予備のポートとなる。 そのためコンバージェンスまでの時間が短縮される構造となっている。
ポート | 説明 |
---|---|
ルートポート | 各スイッチごとにルートブリッジへの最適パスコストを持つポート |
指定ポート | 各セグメントごとにルートブリッジへの最適なパスコストを持つポート |
代替ポート | ルートポートの代替ポート |
バックアップポート | 指定ポートの代替ポート |
ポートのステータス
STPには5つのステータス(Disabled, Blocking, Listening, Learning, Forwarding)がある。 RSTPではDisabled, Blocking, Listeningの機能は同じことからDiscardingというステータスに統一される。
ステータス | 意味 | MACアドレス | データフレーム |
---|---|---|---|
Discarding | BPSDを送受信し、各ポートの役割決定を行う状態 | 学習しない | 転送しない |
Learning | BPSDを送受信し、MACアドレステーブルの学習をしている状態 | 学習する | 転送しない |
Forwarding | データ転送が可能な状態。ルートポート/指定ポートは最終的にこの状態となる | 学習する | 学習する |
RSTPのBPDUのやり取り
RSTPではタイマーにより管理を行わずスイッチ間で直接やり取りしてポートの役割を決定する仕組みを採用している。 仕組みとしてはそれぞれのスイッチでBPDUを作成し下流のスイッチに転送している。 トポロジ変更の検知も上記と同様に行われる。 スイッチ間の生存確認を直接行うためBPDUを3回受け取らなかったら障害発生とみなすようになっている。
なおルートを切り替える場合等はスイッチ間でプロポーサル、アグリーメントとよばれる種類のBPDUをやり取りすることで役割をすぐに決定するようになっている。
エッジポート
RSTPではPC、ルータ等のデバイスが接続されるポートはエッジポートとして扱う。 Cisco社製のスイッチの場合PortFast設定を行ったポートがエッジポートとして扱われる。 またL2スイッチを接続しているポートは非エッジポートとなる。
シェアードリンクとポイントツーポイントリンク
RSTPではスイッチ間の接続をシェアードリンクとポイントツーポイントリンクの2つに分類している。
種類 | 特徴 |
---|---|
シェアードリンク | スイッチ間にハブが入っている状態、またはスイッチのポートが半二重に設定されている場合、STPタイマーを使った収束を行う |
ポイントツーポイントリンク | スイッチのポートが全二重に設定され、スイッチが1対1で接続されている場合、STPタイマーに依存しない高速収束を行う |
3.3.5. VLANとSTPの組み合わせ
3.3.5.1. VLAN共通のスパニングツリー
STPとVLANは標準化された時期が異なるため構成を考える際に工夫する必要がある。 その手法にはCSTがあり、具体的にはVLANが各スイッチにどのように分散されているか関係なくルートブリッジの位置を決定しツリー構成を考える手法となる。
CSTの特徴は以下の通り。
- 複数のVLANを1つのSTPインスタンスで管理するため所属LANによって通信効率が悪いルートを通る場合がある
- STP構成が1種類なためユーザトラフィックが特定リンクに集中してしまう
- STPインスタンスは1つだけの記憶で済むためメモリ負担は小さくなる
- BPDUが1種類で済むためスイッチ間トラフィック量が少なくなる
3.3.5.2. VLANごとのスパニングツリー
CSTの状況を避けるために**PVST+**という独自手法がCISCO製品では使用される。 これはPVSTを改良したものとなる。
PVST+ではプライオリティが拡張システムID(12bit)というものを追加して拡張されている。 PVST+のプライオリティの特徴としてはプライオリティ値は4bit、4096の倍数で指定するなどがある。
特徴としては以下の通り。
- 複数のVLANごとにSTPインスタンスを管理するため各VLANの通信が最適ルートを通ることができる
- VLANごとにSTP構成が異なるためユーザトラフィックが分散される
- STPインスタンスを複数記憶する必要があるためメモリ負荷はCSTより大きくなる
- BPDUがVLANごとに作られるためスイッチ間トラフィックが増加する
なおPVST+以外の似た手法にIEEE802.1sのMSTPと呼ばれるプロトコルがある。
3.3.6. STPの分類とまとめ
3.4. EthernetChannel(LAG)
EthernetChannel(Link Aggregation Group: LAG)は複数の物理リンクを1つの論理的なリンクとみなして複数のリンクを効率よく利用する技術のこと。 これは既存の環境で使用しているスイッチ間の帯域幅を増やしたい場合に使用できる。
3.4.1. EthernetChannelの特徴
EthernetChannelでは最大8本のリンクを1つの論理リンクとして扱うことができる。 複数のリンクを1つの論理リンクとしてまとめることはバンドルと呼ばれ、論理化したポートはPort-channelと呼ばれる。
EthenetChannelを使用するメリットは以下の通り。
- 帯域幅を増やせる
- トラフィック分散(ロードバランシング)が可能
- 耐障害性の向上
3.4.2. EthernetChannel設定の注意/留意点
EthenetChannelはどのポートでもバンドルできない。 条件は以下の通り。
- ポートの通信モードが同じ
- ポートの速度が同じ
- ポートがすべて同一のLAN
- VLANの設定をすべてのポートで同じにする必要がある
また負荷分散方法の設定を適切に行うと通信を複数リンクに効率分散させられる。
EthernetChannelのネゴシエーション
EthernetChannelの利用のためにはバンドルするポートを合わせてそれぞれのポート設定をまず合わせる。 一方で手動で強制的にEthernetChannelを形成する方法がある。
EthernetChannelではPAgP(CISCO独自定義プロトコル)とLACP(IEEE802.3adで規定)と呼ばれる2つのプロトコルを利用して速度/VLAN設定をネゴシエーションを行いEthernetChannelを形成できるか決定することができる。
種類 | モード | 動作 |
---|---|---|
手動 | on | 強制的に有効化 |
自動PAgP | desirable | 自分からPAgPネゴシエーションする(相手から受信して合わせる) |
自動PAgP | auto | 自分からPAgPネゴシエーションしない(相手から受信して合わせる) |
自動LACP | active | 自分からLACPネゴシエーションする(自分から送信する) |
自動LACP | passive | 自分からLACPネゴシエーションしない(相手から受信して合わせる) |
またEthernetChannelはポートセキュリティ/IEEE802.1Xの設定がされているポートでは設定ができない。
3.5. CDP/LLDP
隣接する機器の情報を取得するためのプロトコルとしてCDP、LLDPがある。
3.5.1. CDP
CDPはCISCO社独自定義プロトコルでデータリンク層で動作する。 CDPではデフォルトで60秒ごとに機器の情報をマルチキャストで送信し、受信した情報はデフォルトで180秒の間キャッシュされる。
3.5.2. LLDP
LLDPはIEEE802.1ABとして標準化されたデータリンク層で動作するプロトコル。 異なるベンダーのネットワーク機器間でも使用することが可能。
LLDPは通常デフォルトで30秒ごとに情報をマルチキャストで送信し、120秒間更新がなければ取得した情報を削除する構造となっている。 なおLLDPではCDPでは伝えなかったトポロジの変更情報を伝える。
4 - 4.ルーティング
4.1. ルーティングの基本
ルータはパケットの送信の際に最適なルートをルーティングテーブルから選び転送する。 この動作はルーティングと呼ばれルータの基本動作となる。
4.1.1. ルータの基本動作
ルータのデータの転送の流れは以下のようになる。
- ルーティング対象のIPパケットを受信する
- 宛先IPアドレスからルーティングテーブル上のルート情報を検索して、転送先を決定する
- L2ヘッダを書き換えてIPパケットを転送する
ルータがIPパケットを転送するには、あらかじめルーティングテーブルに転送先のネットワークの情報が登録されていることが前提となる。 ルーティングテーブルの作成方法にはスタティックルーティングとダイナミックルーティングの2通りの方法がある。
4.1.2. スタティックルーティングとダイナミックルーティング
方法 | 内容 |
---|---|
スタティックルーティング | ネットワーク管理者が手動で登録する方法 |
ダイナミックルーティング | ルータ間で情報のやり取りを行い自動でルート情報を設定する方法 |
4.2. ルーティングプロトコル
ダイナミックルーティングで使用されるルーティングプロトコルは複数の種類がある。 代表的なものは以下の通り。
- RIP(Route Information Protocol)
- OSPF(Open Shorttest Path First)
- EIGRP(Enhanced Interior Gateway Routing Protocol)
- BGP(Bourder Gateway Protocol)
- IS-IS(Intermediate System To Intermediate System)
ルーティングプロトコルを語るうえでメトリックとアドバタイズという値が重要になる。
4.2.1. メトリック
メトリックは宛先ネットワークまでの距離を表すものとなる。 これは最適なルート選択際に使用される値であり、最も値が小さいルートが優先されルーティングテーブルに登録される。
ルーティングプロトコル | メトリック値 |
---|---|
RIP | ホップ数 |
OSPF | 帯域幅から計算するコスト |
EIGRP | 帯域幅, 遅延,信頼性, 負荷, MTUを使う複合的なメトリック |
4.2.2. アドバタイズ
ダイナミックルーティングでルータ同士が交換しているルート情報はルーティングアップデートと呼ばれ、ルート情報を隣接ルータに通知することはアドバタイズと呼ばれる。
4.2.3. ルーティングプロトコルの分類
4.2.3.1. 使用場面による分類
ルーティングプロトコルは使用される場面で分けると2つの分けられIGPとEGPに分けられる。
IGPは自律システム内(AS)で経路情報を交換するためのルーティングプロトコルの総称。 ASはある組織がある管理ポリシに従い運用しているルータやネットワークをひとまとめにしたものをさす。 ISPが管理しているネットワークなどがASにあたる。
EGPは異なるAS間でやりとりするためのルーティングプロトコルの総称。
種類 | プロトコル |
---|---|
IGP | RIP, OSPF, EIGRP, IS-IS |
EGP | BGP, EGP |
4.2.3.2. アルゴリズムによる分類
ルーティングプロトコルは最適なルートを導き出すための手順/考え方が異なる。 これはルーティングアルゴリズムと呼ばれ、IGPではディスタンスベクタ型、拡張ディスタンスベクタ型、リンクステート型に分けられる。
型 | 分類されるプロトコル | 説明 | 規模 |
---|---|---|---|
ディスタンスベクタ型 | RIP | 互いのルーティングテーブルを交換する方式。距離と方向情報を基にベルマンフォード法により最適ルートを選択する | 小・中 |
拡張ディスタンスベクタ型(ハイブリッド型) | EIGRP | ディスタンスベクタ型にリンクステート型の特徴を入れた方式。アルゴリズムはDUALを使用し、帯域幅、遅延、信頼性、MTU、負荷にK値と呼ばれる重み係数をかけてメトリック計算を行う。 | 中・大 |
リンクステート型 | OSPF, IS-IS | ルータが自身のインターフェイス情報(LSA)の交換を行う。リンクステートの情報からSPFアルゴリズムを用いて計算を行い最適ルートを選択する | 中・大 |
各項目 | ディスタンスベクタ型 | 拡張ディスタンスベクタ型(ハイブリッド型) | リンクステート型 |
---|---|---|---|
アルゴリズム | ベルマンフォード | DUAL | SPF |
交換情報 | ルーティングテーブル | ルーティングテーブルの一部 | リンクステート(インターフェイス状態) |
コンバージェンス速度 | 遅い | 速い | 速い |
ルータの処理負荷 | 小さい | リンクステートより小さい | 大きい |
帯域消費 | 高い | 低い | 低い |
ルーティングループの発生 | あり | なし | なし |
プロトコル | RIP | EIGRP | OSPF, IS-IS |
4.2.3.3. クラスレスルーティングプロトコル/クラスフルルーティングプロトコル
クラスフスルーティングプロトコルはルーティングのアップデートにサブネットマスク情報を含めることができるルーティングプロトコルのことで、クラスレスルーティングプロトコルはサブネットマスク情報を含めないルーティングプロトコルのこと。
プロトコル | 代表的なプロトコル |
---|---|
クラスフルルーティングプロトコル | RIP(Ver 1.0) |
クラスレスルーティングプロトコル | RIP(Ver 2.0), OSPF, IS-IS, EIGRP, BGP |
4.2.3.4. アドミニストレーティブディスタンス
ルータでは複数のルーティングプロトコルを同時動作させることができる。 その場合どのルーティングプロトコルで得た情報をルーティングに使用するか判断する必要がある。 Cisco製品のルータの場合はアドミニストレーティブディスタンス値(AD値)を使用しそれを決定する。 AD値はルーティングプロトコルに対する信頼性を表す値。
アドミニストレーティブディスタンス値はルーティングプロトコルの優先値であり小さいほど優先度が高い。
プロトコル | アドミニストレーティブディスタンス値 | コード |
---|---|---|
接続接続されているネットワーク | 0 | C |
スタティックルート | 1 | S |
eBGP | 20 | B |
EIGRP | 90 | D |
OSPF | 110 | O |
IS-IS | 115 | i |
RIPv1,v2 | 120 | R |
iBGP | 200 | B |
手動で設定したスタティックルートはアドミニストレーティブディスタンス値(以下ad値)が1となるため優先度が高い。 これは障害発生時にダイナミックルーティングでルート学習できなくなった際にこのルートを使用するといったことが可能。 このスタティックルートはフローディングスタティックルートと呼ばれる。
4.2.4. 最適経路の選択
ルーティングにおいて最適経路は以下の順位で算出される。
- ロンゲストマッチ(最長一致)
- AD値(アドミニストレーティブディスタンス値)
- メトリック
4.2.5. 経路集約
経路集約はRIPv2、EIGRP、OSPFで使用できる機能で複数のサブネットワークのルーティングアップデートを1つに集約して送信できるもの。 これによりルーティングテーブルのサイズが縮小され、コンバージェンス時間も短縮される。
注意点として経路集約を行う際は集約を行うアドレスの上位ビットは同じである必要がある。
4.3. OSPF
4.3.1. OSPFの概要
OSPFは使用用途でルーティングプロトコルを分けた際にIGPに分類されるルーティングプロトコル。現在最も使用されている。 また以下のような特徴を持つ。
- 様々なベンダーのルータで使用可能
- リンクステート型のルーティングプロトコル
- ルーティングプロトコルのトラフィックを削減可能
- コンバージェンスが速い
- VLSM(可変長サブネットマスク)に対応
- ネットワークの階層化が可能
- メトリックとしてコスト削減が可能
- ルーティング認証が可能
OSPFのルーティングテーブルへの登録手順
- LSA(IPアドレスなどのインターフェイス情報)を受け取ったらLSDBと呼ばれるDBに格納する
- 各ルータはLSDBを基にSPFアルゴリズムにより自信を起点としたSPFツリーを作成しそこからの最短経路をルーティングテーブルに登録する
OSPFのルーティングアップデート
OSPFでは通常隣接ルータの生存確認にはHelloパケットのみを送信する。 これによりRIPよりもトラフィックが少なくなる。
OSPFのコンバージェンス
OSPFではあらかじめすべてのルータがネットワーク構成を把握しているため高速にコンバージェンスができる。
OSPFのネットワーク階層化
OSPFではエリアという単位でネットワークを分割できるため、把握すべきルータの台数が増えても記憶すべきトポロジの情報量を減らすことができる。 エリア分割は中心エリア(バックボーンエリア)とその他のエリアに分けて階層化を行い管理する。
OSPFのメトリックを使用したコスト計算
OSPFではメトリックに帯域幅から計算するコストを使用する。
メトリックは簡単に言うと目的地にたどり着くまでの困難さを示す指標
コスト = 10^8 (bps) / 帯域幅(bps)
小数点以下は切り上げを行う。 この算出式より得られるコストの合計が最小になるルートが最適ルートとなる。
なおコストが同じとなる経路が複数ある場合は負荷分散される。 この特性を生かして恣意的に同じコストになるように調整する場合もある。
4.3.2. OSPFの動作
OSPFはコンバージェンスまでに状態を遷移する。 状態の遷移は以下の通り。
- Helloパケットを交換し隣接ルータの発見/生存確認を行う
- 隣接ルータの情報を保持するネイバーテーブルに送信元ルータを登録する
- 相互認識をルータ間で行いLSDB交換準備をする
- ルータ間でDBDパケットの交換をする
- 詳細なLSA情報の交換をする
1. Helloパケットを交換し隣接ルータの発見/生存確認を行う
OSPFを動作させたルータはHelloパケットをマルチキャストアドレス(224.0.0.5)宛てに送信する。 Helloパケットで検知した隣接ルータはネイバーと呼ばれる。
Helloパケットを受け取る前のネイバーの初期状態はDown Stateとなる。
2. 隣接ルータの情報を保持するネイバーテーブルに送信元ルータを登録する
Helloパケットを受け取ったルータは、ネイバー一覧を保存するネイバーテーブルに送信元ルータを登録する。 そのルータの状態はinit stateに設定する。 この状態では一方だけが相手のルータを認識している状態となる。
ネイバーとして登録するにはHelloインターバルとDeadインターバル、スタブフラグ、サブネットマスク、認証の情報、エリアIDを隣接ルータと合わせる必要がある。
3. 相互認識をルータ間で行いLSDB交換準備をする
ネイバーを認識したルータはHelloパケットに自身の認識しているネイバー一覧を確認する。 相手から受け取ったHelloパケットに自身の情報が記録されているとき2Wayステートと呼ばれる状態になる。
4. ルータ間でDBDパケットの交換をする
ルータが互いに2Wayステートになった後、DBDパケットを使用して各ルータが持つLSDBの要約情報を交換する。 OSPFではLSDBをこの手順により同一化する。
DBDパケットの交換の際2つのルータでマスター(シーケンス番号の決定を行うルータ)とスレーブの関係を築く。 役割の決定を終えるとExchange Stateに移行する。
5. 詳細なLSA情報の交換をする
Exchange Stateのときに相手から受け取ったDBDパケットに新しいLSAが見つかったとき、ネイバーにLSRパケットを送信する。 LSRを受け取った隣接ルータは更新用のLSUパケットを送信する。LSUはインターフェイス情報等を保存したLSAのまとまりであり、 それを受け取ったら確認応答としてLSAckパケットを送信する。
LSRパケットとLDUパケットの送信している間はLoading Stateとなり、互いに最新情報を交換しLSDBの動機が完了するとAdjacency(完全隣接関係)となる。この状態にFull Stateとなる。
OSPFの状態遷移とパケットをまとめると以下の通り。
状態 | 説明 |
---|---|
Down State | Helloパケットを受け取る前 |
init State | ネイバーからHelloパケットを受け取ったが、相手側ルータはまだこちらを認識していない状態 |
2-Way State | ルータが相互認識している状態 |
Exstart State | DBDパケットを交換するためのマスター,スレーブを選択している状態 |
Exchange State | DBDパケットを互いに交換しLSDBを同期させている状態 |
Loading State | LSRパケットを送信し、最新のLSAをLSUパケットとして取得している状態 |
Full State | 完全隣接関係を築いた状態 |
パケット | 説明 |
---|---|
Helloパケット | ネイバーの発見/生存確認 |
DBDパケット | LSDB要約情報の送信 |
LSRパケット | 詳細情報の問い合わせ |
LSUパケット | LSDBの更新のため |
LSAckパケット | LSUパケットの確認応答 |
4.3.3. マルチアクセスの際の動作
マルチアクセスはL2スイッチに複数のルータが接続されている状態をさす。 この構成ではトポロジ変更の際に各ルータがLSUを送信するとネットワークトラフィックが増大する。 そのためDR(代表ルータ)とそのバックアップとなるBDR(バックアップ代表ルータ)を選び、完全な隣接関係を全ルータではなく一部に決定する。これによりトラフィックの減少が見込める。
動作的にはDRとBDRのみが完全な隣接関係を結び、集めたLSUを他ルータに転送することで効率を上げている。 なおDRとBDRに選ばれなかったルータはDR-Otherと呼ばれる。
DRとBDRの決定
DRとBDRの選択基準にはルータプライオリティ(デフォルト: 1, 範囲: 0~255)とルータIDがある。
ルータプライオリティはルータのインターフェスごとに決定できる値でHelloパケットに含まれる。 マルチアクセス環境下ではルータプライオリティの値が最も大きいルータがDR、2番目に大きいルータがBDRとなる。
ルータIDはルータプライオリティが同値のときに比較される値。 ルータIDはIPアドレスと同じ書式となりルータIDの値が最も大きいルータがDR、2番目に大きいルータがBDRになる。
ルータIDは1つ値が安定し設定されることが推奨されているため以下手順で決められる。
- コマンドで手動設定する
- ルータの有効なループバックインターフェスのIPアドレスの中で最も大きいIPアドレスが選択される
- 有効な物理インターフェイスのIPアドレスの中で最も大きなIPアドレスが選択される
ループバックインターフェイスは管理者が任意で作成できる仮想的インターフェイスであり、シャットダウンしない限りはダウンしないものとなっている。
4.3.4. OSPFのルート選択
メトリックの計算
経由するインターフェイス数の和をとったときに最小のルートが最短となりルーティングに保存される。
厳密にはコストは10^8/帯域幅(bps)
で求められるが、ファストイーサネット、ギガイーサネットのインターフェスでは1となる。
等コストバランシング
等コストバランシングはCISCO製機器の場合でコストが最短なルートが複数ある場合にデフォルトで4つまでルーティングテーブルに登録できる機能のこと。
この機能によりトラフィックを分散し異なるルータをデータが通れる。
ルート変更
デフォルト(コストがファストイーサネット、ギガイーサネットのインターフェスでは1)の帯域幅をそのまま使用して計算が行われると、帯域幅が1GBpsでも100MBpsでも同じコストになってしまう問題がある。下記のように調整することで対処する。
- インターフェイスのコスト値を直接設定する
- インターフェイスの帯域幅を変えてコストの計算結果を変更する
- コストの計算式の分子(10^18)の値を変更する
4.3.5. OSPFの考慮事項
OSPFはネットワークのタイプにより動作が変わるプロトコルである。 以下にその動作関係をまとめた表を記載する。
タイプ | DRとBDRの選出 | Helloパケットによるネイバー自動検出 | Hello/Deadインターバル | 例 |
---|---|---|---|---|
ブロードキャスト | する | する | 10秒/40秒 | イーサネット |
ポイントツーポイント | しない | する | 10秒/40秒 | PPP |
MBMA | する | しない | 30秒/120秒 | フレームリレー |
ポイントツーマルチポイント | しない | する | 30秒/120秒 | |
ポイントツーマルチポイント(ノンブロードキャスト) | しない | しない | 30秒/120秒 |
パッシブインターフェイス
パッシブインターフェイスはOSPFを有効にしてもHelloパケットを送信しないようにする機能。
これはPCを接続しているインターフェイスからはHelloパケットを送信する意味がないため、そういったケースに対応するための機能といえる。 この場合はOSPFとして、LSA(≒インターフェイス情報)がアドバタイズされる機能が必要なため必要ともいえる。
なおOSPFでパッシブインターフェイスの設定を行うとHelloパケットの送受信を行わなくなる。
MTUサイズの合致
MTUは一回で送信できる最大パケットサイズのことを表す。 OSPFの場合、ネイバーのインターフェイスのMTUと自身のインターフェイスのMTUサイズが異なると完全な隣接関係を築けない。
そのため、MTUサイズは対向ルータと合わせるか、MTUの不一致の検出機能を無効にする必要がある。
4.3.6. マルチエリアOSPF
ネットワークが巨大になりルータの台数が増えトポロジ情報が多くなると経路情報の複雑化と大容量化が進むため計算が膨大になる。 そのためルータの負荷が増加し転送速度低下や切り替え時間が長くなるといった問題が起きる。 その対策機能としてマルチエリアOSPFがある。これはネットワークを階層化して管理するものである。
マルチエリアOSPFの種類には1つのエリアだけでOSPFを動作させることをシングルエリアOSPF、複数のエリアを作成してOSPFを動作させることをマルチエリアOSPFの2種類がある。
エリア作成の注意点
エリアを作成することでルート制御用のトラフィックを減らすことができる。 エリアを作成する際の注意点は以下より。
- バックボーンエリアを作成する
- 他のエリアをバックボーンエリア(エリア番号0)に接するように作成する
- ルータをエリア境界に配置する
ルータの役割
ルータは所属エリアや場所により役割が異なる。
ルータの役割 | 説明 |
---|---|
内部ルータ | すべてのインターフェイスが同エリアに所属、且つ他のエリアに一切接していないルータ |
バックボーンルータ | バックボーンエリアに所属するインターフェイスを持つルータ。 |
エリアボーダルータ(ABR) | インターフェイスが2つ以上のエリアの所属しているルータ。エリア間の境界に位置している。 |
ASバウンダリルータ(ASBR) | インターフェイスが異なるASに所属するルータ |
AS … OSPF以外のRIPなどのルーティングプロトコルが動作しているネットワーク
4.4. EIGRP
4.4.1. EIGRPの概要
EIGRPは使用用途でルーティングプロトコルを分けた際にIGPに分類されるルーティングプロトコル。現在最も使用されている。 また以下のような特徴を持つ。
- クラスレスルーティングプロトコルで自動集約をサポート
- 自身が属しているAS番号内の経路をInternal(内部)、他のAS番号に属している経路やEIGRP以外のルーティングプロトコルで学習した経路をexternal(外部)として識別
- 拡張ディスタンスベクタ型ルーティング(別名:ハイブリッドルーティング)
- 「ネイバーテーブル」「トポロジテーブル」「ルーティングテーブル」の3つのテーブルを保持
- ルーティングアルゴリズムはDUALを使用
- メトリックには、帯域幅・遅延・信頼性・負荷を基に計算する複合メトリックを使用
- メトリックが等しくない経路での負荷分散が可能な不等コストロードバランシングをサポート
- IPだけでなく Novell IPXやAppleTalkのルーテッドプロトコルもサポート
4.4.1.1. 複合メトリック
EIGRPは最適な経路を選択するために、帯域幅・遅延・信頼性・負荷を基に計算する複合メトリックを使用する。 使用する内容は以下の通り。
- 帯域幅:宛先ネットワークに到達するまでに経由するリンクの最小帯域幅(kbps単位)
- 遅延:宛先ネットワークに到達するまでに経由する各インターフェースの遅延(delay)の合計(10マイクロ秒単位)
- 信頼性:宛先ネットワークまでのリンクの信頼性。ビットエラーなどが発生すると信頼性は下がる(最も信頼できるものが255)
- 負荷:宛先ネットワークまでのリンクでのトラフィック量。トラフィックが高いと負荷が上がる(最も負荷が低いものが1)
4.4.1.2. FD/RD
EGIRPではFDとRDの2種類のメトリックがあり、それはサクセサとフィージブルサクセサの決定に関係する。
メトリック | 説明 |
---|---|
FD(Feasible Distance) | 自ルータから宛先ネットワークまでの合計メトリック |
RD(Reported Distance) | ネイバールータから宛先ネットワークまでの合計メトリック(ネイバーが教えてくれたメトリック) |
4.4.1.3. サクセサとフィージブルサクセサ
サクセサはEIGRPの最適経路のネクストホップのことをさす。 サクセサは宛先ネットワークまでのFDが最も小さくなるネクストホップとなる。
フィージブルサクセサはサクセサのFDよりも小さいRDを通知するネイバのことを言う。 フィージブルサクセサの条件である「FD > RD」を満たす経路はルーティングループが発生しないことが保証されるので、フィージブルサクセサはバックアップルートや不等コストマルチパスのネクストホップとして使われる。
4.4.1.4. EIGRPの保持するテーブル
EIGRPではネイバーテーブル、トポロジテーブル、ルーティングテーブルの3つのテーブルを保持/使用する。
ネイバーテーブル … EIGRPのネイバー関係を確立しているルータの一覧表 トポロジテーブル … EIGRPで学習した全経路情報を保持するテーブル ルーティングテーブル … トポロジテーブルからサクセサルートを抽出したテーブル
4.4.1.5. EIGRPの隣接関係構築条件
EIGRPでは以下の条件を満たす場合に隣接関係が構築される。
- ルータが同じ自律システム(AS)に所属している
- メトリックの計算値(K値)が一致している
- 認証情報(キーIDとパスワード)が一致している
- Helloパケットを送受信するインターフェースが同一のサブネットに属している(前提条件)
- Helloパケットを送受信するインターフェースでEIGRPが有効になっている(前提条件)
4.3.2. EIGRPの動作
EIGRPにおける最短経路は以下のように算出される。
- 宛先ネットワークから自身までのすべてのネイバ経由のFDを算出する
- 宛先ネットワークから自身までのFDのうち、最も小さいFDになるネイバを「サクセサ」とする
- サクセサのFDと各ネイバのRDを比較し、FD > RDとなるネイバを「フィージブルサクセサ」とする
- サクセサをネクストホップとする経路をルーティングテーブルに載せる
5 - 5. NAT・DHCP・DNS
5.1. NAT
5.1.1. NATとは
NATはIPヘッダ内のIPアドレスを変換する技術。 当初NATはIPv4の枯渇問題の対応法の1つとして考案された。
NATはインターネットへの接続の際にプライベートIPアドレスをグローバルIPアドレスに変換する際に使用される。
NATの用語
NATを考えるうえでいくつかの用語がある。
アドレス | 意味 |
---|---|
内部ローカルアドレス | 内部ネットワークからみたIPアドレス(プライベートIPアドレスを指す) |
内部グローバルアドレス | 外部ネットワークからみたIPアドレス(グローバルIPアドレスを指す) |
外部ローカルアドレス | 内部ネットワークから見た外部のIPアドレス |
外部グローバルアドレス | 外部ネットワークからみた外部のIPアドレス(通常NATでは外部の2つアドレスは同じ意味) |
5.1.2. NATの通信フロー
グローバルIPアドレスはISPから割り当てられたものを使用する必要がある。また、ルータはNAT変換用のNATテーブルを持ち、そこにアドレスが登録される。
変換後が内部ローカルアドレス、変換前が外部ローカルアドレスを指す。
5.1.2.1. 一方向NAT
一方向NAT(Unidirectional NAT)は内部から通信を始め外部とのやりとりが可能で、外部から始めて内部と通信できないNATを指す。
このタイプのNATは外部から内部へアクセスできないため内部ネットワークを保護することが可能。 一般的なインターネット接続の場合はこの一方向NATとなる。
また一方向NATはTraditional NAT、Outbound NATと呼ばれる。
5.1.2.2. 双方向NAT
双方向NAT(Bi-directional NAT)は内部からも外部からも通信を始めてそれぞれやり取りすることができるNATを指す。
Two-Way NATとも呼ばれる。
5.1.3. NATの種類
NATにはいくつか種類があり、代表的なものにはStatic NAT, Dynamic NAT, NAPT等がある。
5.1.3.1. Static NAT
Static NATは一対一のアドレス変換技術を指す。
Static NATではネットワーク管理者が手動でNATテーブルにグローバルIPアドレスと内部ローカルアドレスの変換組み合わせを登録する。この場合内部ローカルアドレスは外部ネットワークに送信される際に常に同じIPアドレスに変換される。
またStatic NATでは双方向NATの動作も可能となる、しかしStatic NATでは1つの内部ローカルアドレスに対して1つのグローバルアドレスという1対1の関係になるため用意された内部グローバルアドレスの数だけしか同時に外部通信ができない。
5.1.3.2. Dynamic NAT
Dynamic NATでは複数の内部グローバルIPアドレスをプールとして設定する。 内部のクライアントが外部と通信する際にアドレスプールから選択されたIPアドレスに変換される。 Static NATと異なる点は常に同じ内部グローバルアドレスに変換されるわけではない所にある。
Dynamic NATでは外部から通信する際にリアルタイムに自動でNATテーブルに登録されるので内部から通信を行うまで内部ローカルアドレスがどの内部グローバルアドレスに変換されるかわからない。 そのため動作としては一方向NATとなる。
また1対1の割り当て関係となるためアドレスプールに用意されている内部グローバルアドレスの数だけしか外部と通信ができない。
5.1.3.3. NAPT(PAT)
NAPT(PAT,オーバーロードとも呼ばれる)では1つの内部グローバルアドレスに対し複数の内部ローカルアドレスを対応付ける1対多の変換が行えるためアドレス節約が可能となる。 またNAPTはIPマスカレードとも呼ばれる。
またNAPTではTCPまたはUDPのポート番号も変換しNATテーブルに登録する。
NAPTでは1つの内部グローバルアドレスで複数のクライアントが外部通信することができるためIPアドレスの消費を削減できる。
5.2. DHCP
DHCPはPCなどにネットワーク接続をできるようにするためにIPアドレスやサブネットマスクを自動で割り当てるためのプロトコルである。
サーバやルータなどには手動でIPアドレスを設定するのが一般的だが、ユーザが使用するクライアントPCに手動で設定するのは手間がかかる。そこでDHCPを利用してネットワーク接続を簡単にできるようにしている。
DHCPの設定は以下2つのパターンのいずれかで行える。
- DHCPサーバを用意する
- ルータ自身にDHCPサーバ機能を持たせる
5.2.1. DHCPサーバの動作
DHCPはDHCPサーバとDHCPクライアントから成り立つ。
クライアント端末から要求があるとDHCPサーバからIPアドレス、サブネットマスク、デフォルトゲートウェイ、DNS等の情報をが返送される。
- DHCPクライアントからネットワーク全体にDHCP DISCOVERをブロードキャスト(IPv4の場合255.255.255.255)に送信
- DHCP DISCOVERを受け取ったDHCPサーバはクライアントに対しDHCP OFFERを送信し貸出予定のIPアドレスと関連するネットワークの情報を伝達する
- クライアントはDHCPサーバから送信されたDHCP OFFERの情報をに問題がなければDHCP REQUESTをブロードキャスト(IPv4の場合255.255.255.255)で送信し正式なリクエストを送る
- DHCPサーバはDHCP REQUESTに応答する場合、DHCP ACKを送信し、それをクライアントは受け取りネットワークの設定を行う
5.2.2. Gratuitous ARP
Gratuitous ARPはDHCPサーバからクライアントにIPアドレスを割り当てる際にDHCPクライアントが他ホストにすでに同じIPアドレスが割り振られていないか確認するために使用される機能である。
主にIPアドレスの重複検知のために行われる。
5.2.3. DHCPリレーエージェント
DHCPリレーエージェントはブロードキャストされたDHCP要求をユニキャストで転送する機能。
DHCPクライアントはIPアドレスを取得するためにDHCP-DISCOVERメッセージをブロードキャスト送信する。 しかしルータのデフォルト動作ではブロードキャストを転送しないためルータに届いたDHCP-DISCOVERは破棄されてしまう。 そのためDHCPサーバとDHCPクライアントは同一セグメント内に置く必要がある。
DHCPリレーエージェントを設定することで異なるセグメントのDHCPサーバが使用できるようになる。
5.3. DNS
DNSはドメイン名とIPアドレスの対応情報を管理するシステムである。 TCP/IPではIPアドレスでサーバへアクセスを行うが、使い手の人間からすればわかりづらい。 そこでドメインという者を定義し、ドメイン名とそれに対応するIPアドレスを管理するサーバを用意することで、 ドメイン名とIPアドレスを解決する仕組みを提供します。
ドメイン名からIPアドレスを解決する、もしくはその逆は名前解決と呼ばれる。
なお1つのドメインに対するIPアドレスへの対応は、「1対1」 「多対1」 「1対多」のいずれも設定ができる。
5.3.1. DNSの構造
DNSはドメイン名とIPアドレスのデータを分散して管理が行われている。 ドメインの範囲を分けて分散管理するためにDNSは階層構造を取っている。
一番上の階層には「.」であらわされるルートドメインというものがあり、その下に「jp」「com」などのトップレベルドメイン、さらにその下に「co」「ne」などの第2レベルドメイン、その下に第3レベルドメインと続く構造となる。
ドメイン情報を保持しているサーバは権威サーバと呼ばれる。 各DNSサーバは自分の階層を管理している1つ下の階層のサーバのIPアドレスを把握し、それ以外は把握していない。
5.3.2. DNSの動作
クライアントが名前解決を行う際に基本フローは以下の通り。
- クライアントはまずLAN内のDNSキャッシュサーバに問合せる。キャッシュとして対象の情報があればクライアントにIPアドレスを教える、ない場合はルートサーバに問合せる
- ドメイン名から各DNS権威サーバにLANのDNSサーバが問い合わせて最終的に名前解決を行う
- その後LAN内のDNSキャッシュサーバはIPアドレスのキャッシュを行う
5.3.3. DNSルックアップ
DNSルックアップはドメイン名からIPアドレスをと求める、またはその逆を行うこと。これによりホスト名でのTelnet接続などを可能にする。 DNSルックアップにおいてDNSサーバへIPアドレスを問い合わせ、ホスト名を得る方法はリバースルックアップ(逆引き)と呼ばれる。
- DNSルックアップ:「ドメイン名→IPアドレス」or「IPアドレス→ドメイン名」
- フォワードルックアップ:「ドメイン名→IPアドレス」
- リバースルックアップ:「IPアドレス→ドメイン名」
5.3.4. ネームリゾルバ
ネームリゾルバとは名前解決を行うソフトウェアのこと。 ネームリゾルバはDNSクライアントの要求に応じてDNSサーバに名前解決の問い合わせを行う。
6 - 6.WAN・VPN・クラウド
6.1. WAN
WANは広範囲ネットワークを指し、管理は国や自治体から許可を得てケーブルや機器を設置している通信事業者(キャリア)が管理を行っているため、利用にはそのサービスを利用する。
WANサービスの種類には専用線サービス、回線交換サービス、パケット交換サービスがある。
サービス | 説明 | プロトコル |
---|---|---|
専用線サービス | 専用線サービスでは1対1で接続し、回線を占有できる形の利用サービス | PPP, HDLC |
回線交換サービス | 電話網の公衆交換電話網(PSTN)を利用するサービス | - |
パケット交換サービス | インターネットVPNや広域イーサネットなどがあり、回線は他ユーザと共有する | Ehternet, IP |
なおパケット交換サービスは以下のように細分化される。
サービス | 説明 | プロトコル |
---|---|---|
広域イーサネット(イーサネットWAN) | イーサネットインターフェイスの使用、専用線より高速通信が可能、プロバイダ独自回線を使用 | Ethernet |
インターネットVPN | イーサネットインターフェイスの使用、公衆回線を仮想的な専用線のように利用 | IP |
広域イーサネットの主なサービスにはEoMPLS(Ethernet over MPLS)などがある。
6.1.1. WANの構成
6.1.1.1. DTE
DTEは顧客の企業などのLANに構築される機器でDCE経由で通信事業者のネットワークに接続して通信を行う。 DTEは実際の通信やデータなどの送信を行うルータやコンピュータなどの機器がDTEに該当する。
6.1.1.2. DCE
DCEは通信事業者のネットワークに接続するための機器を指す。DCEはWAN種類により異なる。
種類 | 説明 |
---|---|
DSU | デジタルネットワークでの利用 |
モデム | アナログネットワークでの利用 |
ONU | 光ネットワークでの利用 |
6.1.1.3. ローカルループ(アクセス回線)
ローカルループ(アクセス回線)は利用客設備と通信事業者のネットワークの設備との責任境界線(責任分界点)を指す。実際には通信事業者から借りているDCEから通信事業者の基地局の回線までを指す。
ローカルループ | ネットワーク網 | 末端機器 |
---|---|---|
デジタルローカルループ | ISDN | DSU |
アナログローカルループ | PSTN(公衆交換電話網) | モデル |
6.1.2. WANのトポロジ
6.1.2.1. ポイントツーポイント
1対1で接続するトポロジ。
6.1.2.2. フルメッシュ
複数の拠点を接続するトポロジ。 どこかの拠点で影響が発生しても拠点間通信に影響しない。 デメリットとして契約すべき回線数が拠点数が増えるにしたがって増大するため費用が高額になる。
6.1.2.3. パーシャルメッシュ
フルメッシュと異なり重要拠点のみをメッシュ状にするトポロジ。 契約すべき回線数を減らすことができるメリットがある。
6.1.2.4. ハブアンドスポーク
中心となる拠点から拠点に対し接続するトポロジ。 中心となる拠点がハブ、その他の拠点がスポークとなる。 ハブがダウンすると他の拠点と通信ができなくなる特徴がある。
6.1.3. 拠点間の接続
拠点間の接続には以下のようなサービスが使われる。
- インターネット
- 専用線
- VPN
- 広域イーサネット(イーサネットWAN) など
6.1.4. ISPとの接続形態
企業などの組織や家庭でISPと契約してインターネットに接続する場合、いくつかの接続パターンがある。 具体的には接続パターンは「ISPとの接続リンク数」と「接続するISP数」の組み合わせで決定する。
6.1.4.1. シングルホームとデュアルホーム
同一ISPとの接続リンク数によって分類する。
- シングル:ISPと1本のリンクで接続する
- デュアル:ISPと2本以上のリンクで接続する
6.1.4.2. シングルホームとマルチホーム
接続するISPの数によって分類する。
- シングル:単一のISPのみと接続する
- マルチ:複数のISPと接続する
6.2. WANのプロトコル
WANのプロトコルにはHDLC、PPP、フレームリレーがある。
6.2.1. HDLC
HDLCはISOにより標準化されたポイントツーポイントで使用されるプロトコル。
Cisco社製デバイスのシリアルインターフェースではデフォルトでHDLCにてカプセル化を行うようになっている。
またHDLCのフレームにはネットワーク層のプロトコルを識別するフィールドがないため各ベンダーは独自仕様でHDLCを実装する。 Ciscoの場合はISO標準のHDLCにタイプフィールドを追加したHDLCを使用している。
6.2.2. PPP
PPPはポイントツーポイントで使用されるプロトコル。 PPPはダイヤルアップ接続の電話に利用してインターネット接続するダイヤルアップ接続にも利用されている。 また標準化されているためデータ部のプロトコルを識別するフィールドがあるため、ベンダーの異なる機器間でも接続通信が可能。
6.2.2.1. PPPの機能
PPPにはユーザ認証、圧縮機能、また複数のPPPリンクを1つとして扱うマルチリンク機能、エラー検出機能がある。
RFCの定義ではPPPの構成要素は以下で定義される。
- 複数プロトコルのカプセル化
- リンク制御プロトコル
- ネットワーク制御プロトコル
PPPのカプセル化
PPPでは複数のプロトコルがカプセル化できる。
プロトコルフィールドにはデータ部にカプセル化している上位層のプロトコルの識別子が入る。
リンク制御のプロトコル
PPPではリンク制御プロトコル(LCP)でリンクの通信設定/確立/終了等を処理する。
ネットワーク制御プロトコル
PPPではネットワーク制御プロトコル(NCP)でネットワーク層のプロトコルの設定を行う。 ネットワーク層のプロトコルごとにNCPがありIPにはIPCPが使用される。
6.2.2.2. PPPの認証
PPPの認証機能の利用は任意だが、認証時は以下プロトコルのいずれかが使用される。
6.2.2.2.1. PAP
PAPでは2ウェイハンドシェイクで身元確認を行う。 PAPでは平文でユーザ名とパスワードが送信されるため安全な認証プロトコルとは言い難い。
6.2.2.2.2. CHAP
CHAPでは3ウェイハンドシェイクで身元確認を行う。 CHAPの場合ユーザ名とパスワードを直接送信せずに、認証側がチャレンジメッセージという乱数を送信し、受信側(認証される側)はその値とパスワードを基にハッシュ関数を用いて計算し、その結果を返送する。認証側もこの値をハッシュ関数で計算を行い、その値と送られた値を比較して同じであれば認証する。
パスワード解析される危険性はないためPAPより安全な認証方法となる。
6.2.3. PPPのフェーズ遷移
PPPではリンク確率から接続までにいくつかのフェーズがある。
6.2.3. フレームリレー
フレームリレーはX.25というWANサービスからエラー訂正機能を取り除いたWANサービス。 フレームリレーはエラー訂正、確認応答、再送制御等を行わないため高速なデータ伝送が可能。
ちなみに現在の企業ネットワークでは使用されていない。
フレームリレーではHDLCを拡張したLAPFというプロトコルがデータリンク層で使用されている。
6.3. 専用線
6.3.1. 専用線の特徴
専用線は拠点間の接続をするためのサービス。 帯域が完全に保証されているため通信品質の安定が見込め、信頼性やセキュリティも高いサービスとなる。
ただし他のWANサービスに比べると高額となる。 特徴としては以下の通り。
- 帯域幅が完全に保証
- 通信品質/セキュリティが高い
- メンテナンス/設置に関する専門的技術の要求が少ない
- 1対1の接続となる
また専用線ではデータリンクのプロトコルではHDLCまたはPPPが使用される。
6.3.2. 専用線の種類
専用線には様々なニーズにあわせたサービスを提供できるように様々な種類がある。
種類 | 伝送速度 |
---|---|
T4 | 274.176Mbps |
T3 | 44.736Mbps |
T2 | 6.312Mbps |
T1 | 1.544Mbps |
6.4. VPN
最近は拠点間の接続を行う際によく利用されるのがVPNとなっている。 VPNは各拠点のプライベートネットワークが直接つながっているように見せかけることが可能。
VPNには以下の特徴がある。
- 拠点間通信を安全にする
- コストを専用線などよりも抑えることができる
- 拡張性が高い
6.4.1. VPNの種類
6.4.1.1. インターネットVPN
インターネットを利用するVPNサービス。 インターネット上の回線で仮想的な専用線接続を行うことで拠点間を安全に接続する。 インターネットに接続するルータをVPN対応のものに替える必要があるが、インターネット回線自体はそのまま利用できる。
低コストでVPNを構築できる一方、パブリックインターネットをデータが通過するため暗号化が必要となる。 なお帯域幅はインターネットを利用するため常に保証されない、そのため速度の安定化は望みにくい。
6.4.1.2. IP-VPN
通信事業者が用意した閉域網を使用するVPNサービス。 インターネットとは別で隔離されているネットワークなため一般ユーザがアクセスすることはない。インターネットVPNよりも安全に利用でき、専用線よりは安価となる。
IP-VPNでは他の契約者と通信が混在して届かないようにMPLSという技術で宛先の識別を行う。またIP-VPNではインターネットVPNと異なり帯域が保証される場合もある。
またネットワーク層のプロトコルはIPしか利用できない。
6.4.2. MPLS
MPLSは現在のWANサービスのほとんどに使われている技術。 MPLSでは4Byteの固定量ラベルをつけ、それに完全一致するネクストホップをLFIBから検索を行ってからパケット転送する。 これにより転送処理の高速化を実現している。
わかりやすく言うとレイヤ2ヘッダとレイヤ3ヘッダの間にラベルと呼ばれるタグを付加する技術である。 またMPLSはIPv4やIPv6などさまざまなプロトコルをサポートしている。 最近ではMPLSはQoSの実装やIP-VPN網での顧客識別に利用されている。
またMPLSでは顧客側のルータはCE(Customer Edge)と呼ばれ、サービスプロバイダ側のルータはPE(Provider Edge)と呼ばれる。またPE-CE間の回線はアクセス回線と呼ばれる。
6.4.3. インターネットVPNの種類
6.4.3.1. サイト間VPN
サイト間VPNは拠点間のLAN接続のためのVPN接続を指す。 それぞれの拠点にVPN対応ルータを設置し、VPN設定を行うことでトンネルが生成され暗号化や複合化の処理が行われる。なおトンネリングにはIPsecが使用される。
6.4.3.2. リモートアクセスVPN(クライアントVPN)
リモートアクセスVPNはモバイル端末などが社内ネットワーク等に接続するためのVPN接続を指す。 これには拠点にVPNアクセスを受け付ける機器が必要で、アクセスするクライアント端末にVPN接続の専用ソフトウェアをインストールする必要がある。 IPsecやSSL/TLSを使ったVPN(SSL/TLS VPN)接続を行う。
Cisco製品ではCisco AnyConnect Secure Mobility Client(Cisco AnyConnect)とファイアウォール製品であるASAの接続で、SSL/TLS VPNを使用している。
また一般的にSaaS企業が行う一般C向けのVPNを提供するサービスはこのクライアントVPNである。
6.4.4. VPNの技術
6.4.4.1. トンネリング
トンネリングは通信したい端末間にネットワーク上に仮想の専用線を作成するもの。 トンネリングでは通信相手と通信するためのパケットを別のプロトコルのデータ部にカプセル化して隠ぺいする。
6.4.4.2. 暗号化
トンネリングでカプセル化しただけでは盗聴されるとパケットの中身が解析できてしまう。 そのため元のパケット自体を暗号化することで情報を隠蔽する。
なお暗号化はデータを送信する際に送信元の拠点ルータで行われ、宛先の拠点のルータで複合を行う。
6.4.5. トンネリングのプロトコル
6.4.5.1. PPTP
PPTPはPPPを拡張したプロトコル。 PPTPには暗号化機能がないのでMPPEという暗号化プロトコルと組み合わせて利用する。
6.4.5.2. L2TP
L2TPはデータリンク層のプロトコル。 L2TPには暗号化機能がないのでIPsecと組み合わせて使用される。
6.4.5.3. IPsec
IPsecはIPを使った通信でセキュリティを確保するための規格でインターネットVPNでよく利用される。 IPsecで実現できる機能には以下のようなものがある。
- 完全性
- 機密性
- データ発信元の認証
- アンチリプレイ
IPsecはトンネリングと暗号化の両方の機能を備えているが、IPsec単体ではユニキャストのパケットしか転送できない特徴がある。 またAHとESPという2つのセキュリティプロトコルから成り立つ。
プロトコル | 機能 |
---|---|
AH | 認証機能と未改竄の保証 |
ESP | AHの機能+暗号化 |
IKE | 共有鍵の交換を安全に行う |
またIPsecにはトランスポートモード、トンネルモードの2つがある。
現在は通信モードはトンネルモードが主流となっており、パケットの暗号化にはESPが利用される。
- トランスポートモード:IPヘッダの暗号化は行わない
- トンネルモード:IPヘッダを含めたパケットの全体を暗号化する
6.4.5.4. PPPoE
PPPoE(PPP over Ethernet)はPPPの機能をEthernet上で利用できるようにしたプロトコルを指す。 PPPoEはPPPをカプセル化してEthernet上で伝送する。
6.4.5.5. PPPoA
PPPoAはATM(Asynchronous Transfer Mode)のネットワーク上でPPPをカプセル化する技術。
6.4.6. その他のVPN
6.4.6.1. SSL-VPN
SSL-VPNはSSLを利用した暗号化技術。 このタイプのVPNの利用には接続受けする機器(サーバ等)にSSL-VPN対応機器が必要。 なお接続側には不要となる。
また、この技術はリモートアクセスVPNに適した技術といえる。
6.4.6.2. 広域イーサネット(イーサネットWAN)
広域イーサネットは拠点間を接続するためのサービス。 具体的には通信事業者が管理する広域イーサネット網を使用し、データリンク層のプロトコルはイーサネットで通信する。 また共有ネットワークでもある。
IP-VPNではインターネット層のプロトコルはIPしか利用できないが、広域イーサネットではIP以外のネットワーク層のプロトコルで拠点間通信を行うことが可能。
一般的にはイーサネットインターフェスを備えた一般的なルータやスイッチで使用することが可能。
広域イーサネットは共有ネットワークであるため、通信の混雑防止のためにVLANタグを付加する。 しかしながら各拠点のLAN内でVLANを使用している場合もVLAN識別にVLANタグが使われる。その状態で広域イーサネットを使用するとVLANタグが上書きされてしまう問題がある。 そのため広域イーサネットでは銃でVLANタグを付加できる技術が使用されている。またIP-VPNで通信識別するための技術であるMPLSベースのEoMPLSという技術も併せて使用されている。
専用線よりもコストや拡張性面、速度で有利なサービスといえる。
6.4.6.3. IEEE 802.1Qトンネリング
IEEE802.1QトンネリングはVLANタグを二重に付与することで組織ごとに通信を分断する技術。
同一VLANを複数の組織が使用しているときに組織ごとに通信を分断するためISPで主に使用される。
6.4.6.4. GET VPN(Group Encrypted Transport VPN)
GET VPNはトンネルを使用せずVPN接続を可能にする技術。
GET VPNでは、KS(Key Server)と呼ばれるセキュリティポリシーを管理する役割のルータが通信の暗号化および復号化に必要な共有キーを所持する。
各VPN拠点のルータはKSからキー受け取り、そのキーを使用して暗号化された通信を行うためトンネルを使用せず安全なVPN接続が可能となる。
特徴は拠点の追加や管理が容易、大規模なネットワークに適している点である。
6.4.7. GRE
GRE(Generic Routing Encapsulation)はトンネリングプロトコルの1つである。
GREトンネリングでは通信したいL3(ネットワーク層)のプロトコルを他のネットワーク層のプロトコルでカプセル化する。
またGREの特徴は以下のものがある。
- マルチプロトコルへの対応
- マルチキャスト/ブロードキャストのパケットのトンネリングが可能
- IPsecと異なりセキュリティ機能が存在しない
- 動的ルーティングをサポートする
マルチプロトコルへの対応
構造としてはIP以外のプロトコルのパケットにGREヘッダを付加し、それにデリバリヘッダ(例えばIPヘッダ)等を付加して損層が行われる。
マルチキャスト/ブロードキャストのパケットのトンネリングが可能
GREを利用したパケットのカプセル化ではマルチキャストやブロードキャストの通信をユニキャスト化することができる。 なおIPsecでは上記を行うことはできない。
1つの拠点で接続するクライアント数が多い場合Staticルーティングは手間がかかるため不向きで、Dynamicルーティングが適している。 このケースはDynamicルーティングのルーティングプロトコルをGREでカプセル化し、IPsecのトンネリングで転送すると拠点間でルート情報を安全に交換することが可能。
IPsecと異なりセキュリティ機能が存在しない
GREは暗号化機能がないため暗号化されない。 そのため暗号化を行う場合IPsecと組み合わせたGRE over IPsecを用いる。
6.4.7.1. GREトンネリング
GREトンネリングは以下の図のようになる。
6.4.8. VPNの構築手法
6.4.8.1. GRE over IPsec VPN
GRE over IPsec VPNはGREとIPsecを組み合わせてVPNを構築する方法。 特徴は以下の通り。
- IPsecのセキュリティ機能
- GREのマルチキャストに対応可能
上記メリットを兼ね備えたVPNを構築可能となっている。
6.4.8.2. DMVPN(Dynamic Multipoint VPN)
DMVPNはCISCO独自の複数の拠点を接続するVPNの設定作業を簡略化する設計。 特徴は以下の通り。
- ハブアンドスポーク構成を取る
- ハブルータの暗号化にかかる処理負荷を減らすことが出来る
スポーク拠点間の通信時はスポーク拠点同士で動的にGRE over IPsecトンネルを作成することができるため、ハブルータの暗号化処理を削減できる。
DMVPNを構成する技術要素としては以下のものがある。
- mGRE … 複数のポイントと接続するGREトンネル
- NHRP … 宛先アドレスを自動的にマッピングする
- IPsec …(オプション)GREトンネルの暗号化
要素 | 説明 |
---|---|
mGRE(Multipoint GRE) | 1対多で接続可能なGREトンネル。トンネル識別用のキーによって接続すべきトンネルを判断する。 |
NHRP(ネクストホップ解決プロトコル) | ある通信のネクストホップとなる宛先IPアドレスを解決するためのプロトコル |
IPsec | IPパケットの改ざん防止、暗号化を提供するプロトコル |
6.5. クラウド
クラウドはコンピュータ/ネットワーク資源の利用形態の1つである。正式にはクラウドコンピューティングと呼ぶ。
クラウドではクラウドサービス事業者が用意した大規模のデータセンターにある多数のサーバ上に構築されたリソースを、インターネットを介して利用者が使うものとなる。 メリットとしてはソフトウェアの購入/インストール/更新、メンテナンスなど管理にかかる費用を削減できる。
クラウドで提供されるサービスにはアプリケーションの機能を提供するもの(SaaS)、アプリケーションの実行基盤を提供するもの(PaaS)、オンラインストレージ、データベース、仮想マシンなどの基盤構築環境自体を提供するもの(IaaS)などがある。
自前で社内などに物理的なサーバやネットワークなどのリソースを構築/運用/配置することはオンプレミスと呼ばれる。
6.5.1. クラウドの技術
クラウドは仮想化と呼ばれる技術が根幹技術となっている。
6.5.1.1. 従来のオンプレミスサーバ
仮想化技術登場以前では1台の物理的なマシンに1つのOSをインストールしてサービスを展開するのが主流の方式であった。
この当時は異なるOSを扱いたい場合その数分だけサーバ台数が増えてしまい導入コスト/運用保守コストが増大する問題があった。
6.5.1.2. 仮想サーバ
仮想化されたサーバでは1つの物理サーバ上に複数の異なるOSを動かすことができる。
仮想化基盤にはハイパーバイザ型、ホスト型、コンテナ型がある。
ハイパーバイザ型では仮想マシンが動く。 また代表的な技術と種類の関係は以下の通り。
技術/製品 | 種類 | 特徴 |
---|---|---|
Vmware ESXI/vSphere | ハイパーバイザ型 | vSphereは仮想マシンの管理、クラスタリング、リソースプールなどの高度な機能を提供する |
Proxmox VE | ハイパーバイザ型 | KVMとLXCを組み合わせたOSSの仮想化プラットフォーム。Webベースの管理インターフェースを備えている |
Hyper-V | ハイパーバイザ型 | Windows Server上で動作する |
Xen | ハイパーバイザ型 | OSSの仮想化プラットフォーム。ハードウェア支援仮想化を提供する |
KVM | ハイパーバイザ型 | Linuxカーネル内に組み込まれた仮想化技術。Linuxサーバー上で仮想マシンを実行するために使用される。 |
Virtual Box | ホスト型 | ホストOS上で動作する。仮想マシンを作成し実行できる |
VMware Player | ホスト型 | VMware Workstation Playerとも呼ばれる |
LXC | コンテナ型 | プロセス間の仮想化を使用してコンテナを提供するOSSの仮想化技術 |
Docker | コンテナ型 | アプリケーションをコンテナとしてパッケージ化し簡単にデプロイできるようにする。軽量でポータブル |
6.5.2. クラウドのサービス形態
6.5.2.1. プライベートクラウド
プライベートクラウドは企業や機関専用のクラウドとして利用する形態を指す。
クラウド事業者のクラウド内にその企業専用のクラウドを構築するケースもある。 導入コストはパブリッククラウドよりも上がるが、セキュリティの向上や企業独自の基盤に合わせやすいメリットがある。
6.5.2.2. パブリッククラウド
パブリッククラウドは利用者を限定せずに個人や複数ユーザ/企業・機関に向けてクラウド機能を提供する形態を指す。
クラウド機能と代表的なサービスは以下より。
種類 | 代表的サービス | 説明 |
---|---|---|
SaaS | ICloud, Microsoft Office | サーバからアプリケーションまでを含めたサービスの提供 |
PaaS | Firebase, Heroku | アプリケーションの開発基盤/ミドルウェアの提供 |
IaaS | AWS, GCP, Azure, Alibaba Cloud | 物理サーバ, ネットワーク, OS等のインフラ部分のリソースのみの提供 |
7 - 7.回線冗長化・QoS・死活監視
7.1. HSRP
7.1.1. ファーストホップルータの冗長化
PCが異なるネットワークの端末と通信を行う場合必ずデフォルトゲートウェイを通過する。 デフォルトゲートウェイは最初に通過するルータであることからファーストホップルータとみなされる。
そのためデフォルトゲートウェイの冗長を行うことで耐障害性が見込める。 デフォルトゲートウェイを冗長化してデフォルトゲートウェイに設定したルータに障害が起きた際に予備のデフォルトゲートウェイにしたルータに変更するのは手間となる。 そのため冗長化のために用意したファーストホップルータを活用するためのプロトコルにCISCO社独自のHSRP、GLBP、標準化されたVRRPがある。こうしたDGWを冗長化するプロトコルはFHRPと総称される。
これらを利用するとデフォルトゲートウェイの設定を変更せずとも切り替えができる。
7.1.2. HSRPの概要
CISCO社が開発したプロトコルでルータの冗長化を行うためのもの。 複数存在しているルータを1つに見せかけることができる。
複数のファーストホップルータを含む共通グループはHSRPスタンバイグループと呼ばれる。 このHSRPスタンバイグループは0~255の番号で管理が行われる。
またHSRPスタンバイグループには仮想IPアドレスが割り当てられる。この仮想IPアドレスは仮想ルータのIPアドレスであり、クライアント側でこのIPアドレスをデフォルトゲートウェイとして設定する。 また仮想IPアドレスだけではなく仮想MACアドレスも用意されている。なお仮想MACアドレスの前半5オクテットは0000.0C07.ACと決まっている。
HSRPスタンバイグループの中でプライオリティが最も大きいルータがアクティブルータに選出され転送処理などを行う。 また2番目に大きいルータがスタンバイルータとなりアクティブルータのバックアップとなる。
7.1.3. HSRPの動作
HSRPの動作ステップ
HSRPの動作は以下ステップで行われる。
- Helloパケットを224.0.0.2にマルチキャストで送信しHSRP情報の交換をルータ間で行う(Helloパケット送信間隔は3秒)
- アクティブルータ/スタンバイルータをプライオリティ値から選出する
- ルータの役割決定後はHelloパケットによる生存確認。アクティブルータ/スタンバイルータのみが送信、他ルータはListen状態で受け取り待ち状態となる。なおスタンバイルータは10秒間Helloパケットをアクティブルータから受け取らない場合に自身をアクティブルータにする。
HSRPの状態遷移
HSRPが動作してルータの役割が決まるまでいくつかの状態を遷移する。
状態 | 定義 |
---|---|
Initial | 最初の状態(HSRP設定直後) |
Learn | ルータがアクティブルータからHelloパケットを受け取っていない(仮想IPアドレスを認識していない) |
Listen | ルータの役割が決まらなかったルータの状態(Helloパケットを受信している、仮想IPアドレス決定済) |
Speak | Helloパケットを送信してルータの役割選出を行っている状態(HSRP状態を通知) |
Standby | スタンバイルータの状態(Helloパケットを送信する) |
Active | アクティブルータの状態(Helloパケットを送信する) |
7.1.4. HSRPの機能
HSRPの基本動作の機能の他にプリエンプト、インターフェイストラッキングと呼ばれる機能がある。
7.1.4.1. プリエンプト
プリエンプトはプライオリティが大きいルータを常にアクティブルータにする機能のこと。 これはデフォルトのアクティブルータのほうが性能の良い場合にスタンバイルータがデフォルトゲートウェイとして使われてしまうのを回避するためのものです。
7.1.4.2. インターフェイストラッキング
インターフェイストラッキングはHSRPを動作させているインターフェイス以外を追跡し、そのUP/DOWNの状態によりプライオリティを変更する機能となっている。 これは他のネットワーク側のHSRPを実現したルータ群のポートに障害が発生した際に、LAN側ではHelloパケットの送受信ができてしまうため障害検知せず、異なるネットワーク側に通信が遅れなくなりデフォルトゲートウェイの機能を果たせなくなる問題を回避するためのもの。
7.1.4.3. HSRPの認証機能
HSRPの認証機能にはパスワードを暗号化しないプレーンテキスト認証と暗号化するMD5認証の2種類がある。
7.1.4.4. HSRPのバージョン
HSRPは2つのバージョンがある。
項目 | HSRP version1 | HSRP version2 |
---|---|---|
Helloパケットの宛先 | 224.0.0.2 | 224.0.0.102 |
グループ範囲 | 0~255 | 0~4095 |
仮想MACアドレス | 0000.0C07.AC○○* | 0000.0C9F.F○○○* |
IPv6のサポート | なし | あり |
7.1.5. HSRPの負荷分散
HSRPではスタンバイグループに複数ルータを用意してもデータ転送を行うのは1つのアクティブルータのみとなる。 アクティブルータとスタンバイルータの2つが稼働し他のルータは待ち状態となる問題がある。
MHSRPは待ち状態となっているルータ以外も活用できるための仕組みで各ルータを複数のスタンバイグループに参加させ、アクティブになるルータをそれぞれのグループで変えることで負荷の分散を行うというものである。
7.1.6. GLBPとVRRPの特徴
7.1.6.1. GLBP
GLBPはルータを冗長化するためのCISCO社独自定義のプロトコル。 HSRPが負荷分散を行う際に複数のグループが必要なのに対し、1つのグループで負荷分散が可能な特徴がある。
GLBPグループは1023まで作成可能で、GLBPは仮想MACアドレスが最大4つ使用することができる。 仮想MACアドレスは0007.B40X.XXYYで表記でき、X部にGLBPグループを16進数に変換した値が、Y部に01~04までの値が入る。
GLBPではグループ内ルータからAVG(Acitive Virtual Gateway)、最大4つのAVF(Active Virtual Forwarder)を選出する。 またプライオリティに1~255の値を設定でき、AVFは最大4つまで選出される。
7.1.6.2. VRRP
VRRPはルータの冗長化のためのプロトコルでHSRPと異なり様々なベンダー機器で使用することができる。 HSRPと似た動作だが、以下動作に違いがある。
- アクティブルータの名称がマスタールータ
- マスタールータではない残りのルータはすべてバックアップルータ(マスタールータの予備)
- 仮想IPアドレスに実際に割り当てられているIPアドレスを設定可能
- 仮想MACアドレスが0000.5E00.01
7.1.7. HSRP/GLBP/VRRPの違い
項目 | HSRP | GLBP | VRRP |
---|---|---|---|
規格 | Cisco独自規格 | Cisco独自規格 | 標準化 |
ルータの役割 | アクティブルータ、スタンバイルータ | AVG, AVF | マスタールータ, バックアップルータ |
グループ番号 | 255まで | 1024まで | 255まで |
負荷分散 | サブネット単位で可能 | ホスト単位で可能 | サブネット単位で可能 |
仮想MACアドレス | 0000.0C07.ACXX | 0007.B40X.XXYY | 0000.5E00.01XX |
Helloパケットの宛先 | 224.0.0.2 | 224.0.0.102 | 224.0.0.18 |
7.2. QoS
7.2.1. QoSの概要
QoSは特定のパケットを優先的に処理したり帯域幅の確保を行う技術のこと。 QoSによりパケットの重要度により優先的に転送するといったことが可能。
QoSをネットワークに取り入れることで、IP電話(VoIP)の通話品質の向上などのメリットがある。
7.2.2. QoSのアーキテクチャ
QoSを実現するためのアーキテクチャにはベストエフォート、IntServ、DiffServの3つがある。
7.2.2.1. ベストエフォート
パケット優先順を気にせず先に来たものを先に出すアーキテクチャ。 品質保証はされないQoSのデフォルトの挙動。
7.2.2.2. IntServ
アプリケーションのフローごとにエンドツーエンドのQoSを提供するモデル。 フローが必要とする帯域をあらかじめ予約しておくアーキテクチャとなる。 フローごとに帯域を予約するためにRSVP(Resource reSerVation Protocol:リソース予約プロトコル)というプロトコルが使用されて送信元から宛先までの各機器で帯域を確保する。
各アプリケーションが必要とする帯域幅を経路上のデバイスに予約するのでエンドツーエンドのQoSを提供できる反面、拡張性が低いという特徴を持つ。 現在では規模が大きくなった際のRSVP自体が負荷になる問題や運用しづらいことから普及していない。
7.2.2.3. DiffServ
パケットをクラスに分類・マーキングし、クラスごとに優先度を提供するモデル。 各ルータやスイッチごとにパケットの優先順位に基づいて区別し転送処理を行うアーキテクチャとなる。
一般的にQoSといえばこのモデルのことを指す。 各デバイスが独自に処理を行えるため拡張性が高いという特徴を持つ。
DiffServのQoSの仕組みは以下のように行われる。
- マーキング
- ポリシング/シェーピング
- キューイング/スケジューリング
- 輻輳管理
7.2.3. QoS実現のための機能
QoSを実現するための機能はQoSツールと呼ばれ以下のようなものがある。
- 輻輳管理(分類、マーキング、キューイング/スケジューリング)
- 輻輳回避(RED、WRED)
- 帯域制御(シェーピング、ポリシング)
7.2.3.1. 輻輳管理
輻輳管理では以下の内容を行う。
- 分類:QoS適用対象となるパケットを分類する
- マーキング:分類されたパケットに優先度識別用の印を付ける
- キューイング:パケットに付けられたマークを使って、それぞれの優先度に応じたキュー(パケットを溜めるバッファ)に格納する
- スケジューリング:各キューからデータを取り出して送信する
なお分類とキューイングは信頼境界で行われる。 信頼境界となる機器(アクセススイッチやIP電話など)では受信したパケットにすでに施されているマーキングを無視し、改めてQoSポリシーに従って分類、マーキングを行うことで適切なQoSを実現する。
信頼境界 : QoS対象となるパケットがネットワークに入ってくるエッジのこと
7.2.3.2. 輻輳回避
輻輳回避は輻輳(大量パケット到着により送受信できなくなる状態)が発生する前にキューに待機しているパケットをドロップする機能のこと。
輻輳回避するための機能にはRED(Random Early Detection:ランダム早期検出)やWRED(Weighted RED:重み付けランダム早期検出)などがあります。
方式 | 説明 |
---|---|
RED(ランダム早期検出) | キューがいっぱいになる前にランダムにパケットを破棄する方式 |
WRED(重み付けランダム早期検出) | パケットの優先順位を考慮したREDの方式 |
7.2.3.3. 帯域制御
帯域制御はシェーピング、ポリシングを使って行われる。
主に大規模ネットワークでは、主にWAN境界でQoSを適用する。 これは一般的にLAN側の速度(例:GigabitEthernet)よりもWAN側の回線速度(例:15Mbps)のほうが遅い、あるいはWAN回線の速度と接続するインターフェースの速度が異なる場合、容易に輻輳が発生するためとなっている。 特にサービスプロバイダが指定したCIR(Committed Information Rate:最低保証速度)を超えて送受信したデータは、輻輳時に破棄される可能性が高くなります。
7.2.4. 分類 - 輻輳管理
分類とは指定した条件によってQoSの対象となるパケットを分類することを指す。 分類の方法には以下方法が使用される。
- 拡張アクセスリストを使用する
- NBAR(Network Based Application Recognition)を使用する
7.2.4.1. 拡張アクセスリストを使用した方法
拡張アクセスリストを使った場合、パケットのヘッダにある以下の情報を使った分類が可能となる。
- IPプロトコル番号
- 送信元/宛先アドレス
- 送信元/宛先ポート番号
7.2.4.2. NBARを使用した方法
NBAR(アプリケーションを識別する機能)を使った場合はパケットをアプリケーションごとに分類することが可能となる。
例えばWebブラウザから参照するYouTubeのパケットは、拡張アクセスリストではHTTPプロトコルとしか判断できないため適切に分類できないが、NBARでは以下のようにネットワークアプリケーション名でマッチさせることができるようになる。
7.2.5. マーキング - 輻輳管理
マーキングは分類されたパケットに優先度識別用の印を付けることをいう。 具体的にはCoSやIPPやDSCPをポリシーに従い変更を行う。
またマーキングにはL2マーキングとL3マーキングがある。 それぞれ値を変更する場所が異なり変更箇所は以下のようになる。
- L2マーキング … IEEE 802.1QヘッダのCoSフィールド
- L3マーキング … IPヘッダのToSフィールド
7.2.4.1. CoS
CoS(lass of Service)はイーサネットの優先度を表すもの。 IEEE802.1Qで付与されたタグの中にPRIと呼ばれるCoSの値を表せるフィールドがある。 そこをチェックしたり変更することでマーキングを行う。
DiffServのマーキングで使用される。
特徴としては以下の通り。
- L2マーキング
- 3ビット(2進数で000-111)でマーキングを行う(8段階のマーキングが可能)
7.2.4.2. DSCP
DSCP(Differentiated Service Code Point)はIPパケットの優先度を表すもの。 IPヘッダのToSというフィールドのうちサービスタイプフィールドの前半6bitを使用して優先度を設定する。
DHSCPの値に応じてルータ/スイッチは転送を行う。これらはホップごとの動作を決めたPHB(Per Hop Behavior)に応じて処理される。 特徴をまとめると以下の通り。
- L3マーキング
- 6ビット(2進数で000000-111111)でマーキングを行う(64段階のマーキングが可能)
またPHBには以下のような種類がある。
種類 | 説明 |
---|---|
AF(Assured Forwarding) | 優先度と破棄レベルの組み合わせを12段階で指定できるマーキング |
EF(Expedited Forwarding) | 最優先で処理したいパケット用のマーキング。主にIP電話のような音声パケットに使用する。 |
CS(Class Selector) | DSCPとIPPの互換用のマーキング |
DF(Default Forwarding) | ベストエフォート用のマーキング。QoSによる優先処理を行わない。 |
7.2.4.3. IPP
IPP(IP Precedence)はIPヘッダの中のToSフィールドで定義されたIPパケットの優先度を表すもの。 特徴は以下の通り。
- L3マーキング
- 3ビット(2進数で000-111)でマーキングを行う(8段階のマーキングが可能)
7.2.6. キューイング/スケジューリング - 輻輳管理
キューイングは送信するパケットをキューと呼ばれる領域に格納していく。 キューの種類にはハードウェアキューとソフトウェアキュがあるが、ソフトウェアキューにキューイングは行われる。
スケジューリングはソフトウェアキューに並んだパケットをどういう割合/順番でハードウェアキューに並べるか決定するもの。
キューイングとスケジューリングには以下のような機能がある。
種類 | 説明 |
---|---|
FIFO | パケットを到着した順番に送信する方式。デフォルトのキューイング方式 |
PQ | 優先度が高いパケットの転送を優先する方式。優先度には「high」「medium」「normal」「low」の4つが使用される |
CQ | キューに設定したバイト数ずつパケットを転送する方式 |
WFQ | アプリケーションのフローごとにキューを自動で作成し、どのキューからもパケットを転送されるようにしたキューイング方式 |
CB-WFQ | クラスごとにキューを割り当てる方式。ユーザが定義したクラスごとにキューを割り当てて送信比率を帯域幅の設定により変更できる |
LLQ | 優先的に送信するプライオリティキューとクラスキューを使用する方式。 |
7.2.6.1. CB-WFQ
CB-WFQでは全てのキューを順にチェックし指定された割合(保証帯域)でデータを取り出して転送する。
7.2.6.2. LLQ
LLQではPQに割り振られたパケットを最優先で転送する。
7.2.7. RED/WRED - 輻輳回避
RED/WREDは輻輳回避はの機能で輻輳によるテールドロップが発生する前にキューに待機しているパケットをドロップするもの。
7.2.7.1. RED
RED(Random Early Detection:ランダム早期検出)はキューが一杯になる前にパケットをドロップすることで輻輳レベルを下げテールドロップを防ぐもの。 REDはキューに溜まっているパケットの量に応じて「ノードロップ」「ランダムドロップ」「フルドロップ」という3つのモードで動作する。
- ノードロップ … パケットの量が最小しきい値以下の状態。パケットをドロップしない
- ランダムドロップ … パケットの量が最小しきい値を超えた状態。設定した割合に基づきパケットをドロップする
- フルドロップ … パケットの量が最大しきい値を超えた状態。着信パケットを全てドロップする(テールドロップ)
7.2.7.2. WRED
WREDはREDの破棄率を優先度ごとに設定できる機能のこと。 具体的にはキューが一杯になる前に優先度の低いパケットをドロップする。
7.2.8. ポリシング/シェーピング - 帯域制御
7.2.8.1. ポリシング
ポリシングは設定値や最低限保証されている伝送速度を超過したトラフィックの破棄や優先度を変更できるもの。 これはパケットの到着/発信の際に適用できる。
ポリシングは指定した転送レートを超えて送受信されたパケットを破棄するため、損失発生の要因となりえる。 しかしながらキューイングが行われないため遅延やジッタは発生しない。
7.2.8.2. シェーピング
シェーピングは設定値や最低限保証されている伝送速度を超過したトラフィックをバッファに保存して遅れて送信するもの。 キューにバッファ用のメモリが必要でパケット発信の際に利用できる。
シェーピングは送信側で実装し、指定した送出レートを超えないように送出レートを超えるパケットをキューに保持し、送信可能になった時点で送信する。 リアルタイムに送信されない場合があるため、遅延、ジッタ発生の要因となりえる。
7.2.9. QoSの評価方法
ネットワークにおけるQoSは以下の4つの項目で評価される。
- 帯域幅(Bandwidth) … 1秒間に送信できるデータ量(Bps)
- 遅延(Delay) … 送ったデータが相手に届くまでにかかる時間(片方向遅延/往復遅延)のこと。主にミリ秒(ms)で表す
- ジッタ(Jitter) … 遅延のゆらぎのこと。遅延の時間が一定の場合はジッタが発生していないと言い、パケットごとの遅延が異なる(例:100ms、115ms、98ms、108ms、など)場合は、その遅延の差分(例では、15ms、17ms、10ms)
- 損失(Loss) … 相手に届かなかったパケットの割合
7.2.10. 音声/ビデオのQoS要件
音声とビデオのQoS要件にはガイドラインがあり、以下表のように定義されている。
パケットの種類 | 帯域幅 | 片方向遅延 | ジッタ | 損失 |
---|---|---|---|---|
音声 | 20~320 Kbps | 150ms未満 | 30ms未満 | 1%未満 |
ビデオ | 384K~20M bps | 200~400ms | 30~50ms | 0.1~1% |
7.3. SNMP
7.3.1. SNMPの概要
SNMPはTCP/IPネットワーク上で動作している危機を管理するためのプロトコル。 このプロトコルの使用によりネットワーク上の機器の状態の監視や情報収集が可能。
7.3.2. SNMPの構成要素
SNMPでネットワーク機器を管理する構成はネットワーク管理ステーションでSNMPマネージャ、ネットワーク要素でSNMPエージェントが動作する。
7.3.2.1. SNMPマネージャ
SNMPエージェントを監視するプログラム。 SNMPエージェントと通信し情報を収集するサーバの役割を負う。
7.3.2.2. SNMPエージェント
SNMPエージェントはクライアントPC, ルータやスイッチといったネットワーク機器、サーバなどで動作するプログラムのこと。 SNMPはUDPを使用して、SNMPマネージャはポート161、SNMPエージェントはポート162を使用する。
7.3.2.3. MIB
各SNMPエージェントで動作している機器の情報は集められ、その情報はMIBと呼ばれるツリー状のデータベースに格納される。 MIBに格納される情報はオブジェクトと呼ばれ、OIDと呼ばれるオブジェクト識別子が付加される。
MIBには標準MIBと拡張MIBがある。
MIBの種類 | 説明 |
---|---|
標準MIB | RFCで規定されているMIB。ホスト名やインターフェース情報など |
拡張MIB | ベンダーが独自規定したMIB。これは両機器が対象MIBの構造を把握しておく必要がある |
7.3.2.4. SNMPの通信
SNMPマネージャ-SNMPエージェントの通信方法にはSNMPボーリング、SNMPトラップ、SNMPインフォームがある。
通信方法 | 説明 |
---|---|
SNMPボーリング | SNMPマネージャから要求を出す方式。SNMPマネージャは定期的にSNMPエージェントに問い合わせMIB内の情報を受け取る |
SNMPトラップ | SNMPエージェントから要求してSNMPマネージャが応答する手順のこと |
SNMPトラップとほぼ同じだが、SNMPマネージャから応答が必ず必要という違いがある |
7.3.2.5. SNMPのバージョン
SNMPには以下のバージョンがある。
バージョン | 説明 |
---|---|
SNMPv1 | コミュニティ名を利用して認証が行われる。なお平文のまま送信されるため盗聴される危険性がある。SNMPトラップしか対応していない |
SNMPv2c | SNMPv1の機能に加え、GetBulkRequestやSNMPインフォームが利用可能 |
SNMPv3 | USMを利用した認証機能が追加されている。またデータの暗号化が可能となっている |
7.4. デバイスの管理/監視
7.4.1. システムログ管理
7.4.1.1. システムログの概要
ネットワーク機器や端末では大体システムの動作が記録されている。 この記録されたものはシステムログ
システムログの調査は障害発生時刻の動作の確認やその原因の究明に利用できる。
7.4.1.2. システムログの出力先
システムログのメッセージは以下のような場所に出力される。
- コンソールライン
- 仮想ターミナルライン
- ルータやスイッチのRAM
- Syslogサーバ
出力先 | 説明 |
---|---|
コンソールライン | コンソールに出力すると言うもの。デフォルトではここに出力されない |
仮想ターミナルライン | リモートログインした画面にログを出力すると言うもの |
ルータやスイッチのRAM | RAMにシステムログを保存することができるが、容量が一杯になると新しいログで上書きされる特徴がある |
Syslogサーバ | SySlogサーバを使用するとネットワークを介してログを送信できる。メッセージはSyslogサーバに保存しログを一元管理可能。SyslogサーバはLinuxなどで建てられる |
7.4.1.3. システムログのファシリティ
ファシリティはログの種類を表す。 Cisco社製のネットワーク機器の場合のログのファシリティはデフォルトではLocal7となる。
7.4.1.4. システムログのレベル
ログは一般的にレベルが分けられており重要なログの実を選別して調査できるようにしている。
重大度 | 意味 | 説明 |
---|---|---|
0 | 緊急 | システムが不安定 |
1 | 警報 | 直ちに処置が必要 |
2 | 重大 | クリティカルな状態 |
3 | エラー | エラー状態 |
4 | 警告 | 警告状態 |
5 | 通知 | 正常だが注意を要する状態 |
6 | 情報 | 単なる情報メッセージ |
7 | デバッグ | デバッグメッセージ |
またメッセージは以下の4つのカテゴリーに定義されている。
- ソフトウェア/ハードウェアの誤動作のエラー
- debugコマンドの出力
- インターフェイスの起動/停止への移行およびシステムの再起動メッセージ
- リロード要求/下位プロセススタックのメッセージ
7.4.1.5. システムログの形式
Cisco機器ではシステムログの形式は以下のように表示される。
000022: *Oct 17 13:01:17.295: %SYS-5-CONFIG_I: Configured from console by console
表示されている例の場合は左から順に以下の通り。
- シーケンス番号 …
00022:
- 出力日時 …
*Oct 17 13:01:17.295
- 参照ファシリティ …
SYS
- 重大度 …
5
- メッセージの内容 …
CONFIG_I
- メッセージの詳細 …
Configured from console by console
7.4.2. NTPによる時刻管理
7.4.2.1. NTPの概要
NTPはUTCという標準時間を把握している時刻サーバと同期をとるように作られたプロトコル。 NTPは123番のポートを使用する。
ルータやスイッチなどのログの管理の際の時刻を厳密に扱うために使用される。
7.4.2.2. NTPの階層構造
NTPはstratumと呼ばれる階層構造を持っており、最上位のNTPサーバは原子時計などから直接正しい時刻を得て、他の危機はNTPサーバから自国の情報を取得して同期を行っている。
最大stratum15までNTPサーバを構築することができ、このツリー状の構造によって時刻取得の際の負荷分散が実現されている。
7.4.2.3. NTPサーバをLANに構築する
NTPサーバをLANに構築する場合は外部のネットワークのNTPサーバへの負荷軽減、LAN内のネットワークに接続していない機器の時刻同期が可能になると言うメリットがある。
8 - 8.ネットワークの自動化/仮想化
8. ネットワークの自動化
7.5. ネットワーク仮想化(SDN)
7.5.1. ルータやスイッチの構造
ルータやスイッチの処理の種類や機能は大きくデータプレーン、コントロールプレーン、マネジメントプレーンの3つに分類される。
分類 | 機能 |
---|---|
データプレーン | ルーティングテーブル/MACアドレステーブルの検索, パケットカプセル化非カプセル化, IEEE802.1Qタグ追加削除, NAT変換, フィルタリングなど |
コントロールプレーン | ルーティングテーブル/MACアドレステーブルの作成, ARPのアドレス解決など |
マネジメントプレーンはネットワーク機器の構成/設定の管理を行う部分となる。 ユーザに機器の操作/管理の機能を提供する。
7.5.2. SDNの概要
SDNはソフトウェアによりネットワークを管理/制御、構成するための技術/考え方。 SDNではデータプレーンの処理とコントロールプレーンの処理を分けて考える。 SDNコントローラでコントロールプレーンの処理を一括で行う特徴がある。
SDN構成では各ネットワーク機器上ではデータプレーンのみが動作する。
7.5.2.1. SDNのアーキテクチャ
インフラストラクチャ層はデータ転送を実際に行うネットワーク機器のレイヤ。 これらの機器の制御には、OpenFlowやNETCONFなどの標準プロトコルや、機器ごとに設定されたAPIを利用する。 この部分のAPIはSouthbound APIと呼ばれる。 SBIにはOpenFlow、OpFlex、Telnet、SSH、SNMP、NETCONF、RESTCONFなどがある。
コントロール層はSouthboundのプロトコル(SBI)やAPIを使用した機器の制御をするレイヤ。 同時にインフラストラクチャ層のネットワーク機器のネットワーク機能を抽象化したAPIをアプリケーション層に提供する。 この部分のAPIはNorthbound API(NBI)を呼ばれる。
アプリケーション層はSDNコントローラに設定するアプリケーションが該当するレイヤ。 SDNを操作するアプリケーションはSDNコントローラとセットで提供される。 APIを通じてネットワークの様々な処理をSDNコントローラへ指示する層となる。
7.5.3. OpenFlow
OpenFlowはSDNを実現する技術の1つでONFにより規定されたSouthbound APIに相当するプロトコル。 この技術ではコントロールプレーンとデータプレーンの処理を分離させることができる。
OpenFlowではSDNコントローラのOpenFlowコントローラ、機器側のOpenFlowスイッチにより実現される。
7.5.3.1. OpenFlowの特徴
OpenFlowではOpenFlowコントローラでフローテーブルと呼ばれるデータ転送の通信ルールを規定したテーブルを作成し、ネットワーク上のOpenFlowスイッチに配布する。 各OpenFlowスイッチはそのフローテーブルに従ってデータ転送/通信を行い、これはホップバイホップ方式と呼ばれる。
OpenFlowの特徴は以下の通り。
- フローテーブルの設定により柔軟なネットワークが構築可能
- フローテーブルの維持/設定/管理が難しい
- すべての機器がOpenFlowに対応している必要がある
7.5.3.2. OpenDaylight
OpenDaylightはOSSのSDNコントローラでベンダー機器の垣根を超えることを目標に作られたもの。
7.6. ネットワークの自動化
7.6.1. ネットワーク自動化/プログラマビリティ
クラウドサービスやネットワークの複雑化により従来のネットワーク管理者が手動で機器を設定するのは非常に手間がかかるようになってきた。
こうした背景からネットワーク自動化とプログラマビリティが重要視されている。
7.6.2. REST API
REST APIはREST思想に基づいて作成されたAPIで、ネットワーク自動化のための設定にも利用されている。
7.6.2.1. REST
RESTは以下項目を満たすAPIと定義されている。
- クライアント/サーバ構成
- ステートレス
- キャッシュの可否の制御が可能
- 統一されたインターフェイス
- 階層化されたシステム構成
- コードオンデマンド
7.6.2.2. HTTP
多くのREST APIはHTTPプロトコルを使用している。 リソース操作はリソースを識別するURIとリソース命令のHTTPメソッドで行われる。
- URI …
https://hogehoge.com/api/v1/
のようなリソース位置を示す文字列 - HTTPメソッド … リソースに対して行いたいアクション(CRUD)
CRUD | HTTPメソッド | 説明 |
---|---|---|
Create | POST/PUT | 作成 |
Read | GET | 読み取り |
Update | PUT | 更新 |
Delete | DELETE | 削除 |
7.6.2.3. JSON
REST APIでやりとりされるデータ形式にはJSON, XML, YAMLなどがある。 最近はJSONが使われることが多い。
7.6.3. 構成管理ツール
7.6.3.1. 従来の構成管理の問題
従来の構成の問題は以下手順を全ての機器に行う必要がある点にある。 そのため構成管理を手動で行うのは困難となっていた。
- 対象デバイスにログインする
- 設定コマンドの実行
- 設定した内容をファイルに保存して保管
- 修正を行ったらファイルを更新して保管
上記の問題や構成ドリフトが発生しないように、構成管理ツールが開発された。
7.6.3.2. 構成管理ツールの概要
構成管理ツールを用いたアーキテクチャでは各機器の設定ファイルを共有フォルダで一元管理する。 そのためネットワーク管理者は共有ファイル上の設定ファイルを編集するだけで機器に変更を加えることができる。
7.6.3.3. Ansible/Puppet/Chef
構成管理ツールにはAnsibleやPupper, Chefなどがある。
AnsibleはRedHatが開発するOSSの構成管理ツール。 構成管理サーバから各ネットワーク機器に設定を送るPush型の通信形態となっている。 各機器にエージェントをインストールしなくても設定を送れるエージェントレスな構造となっている。 また構成ファイルはYAMLを使って記述する。
PuppetはPuppet Labsが開発するOSSの構成管理ツール。 ネットワーク機器が構成管理サーバから設定を取得するPull型の通信形態となっている。 クライアント側にもソフトウェアのインストールが必要なエージェントモデルとなっている。 なお設定の取得の際はHTTP/HTTPSでTCP8140番ポートを使用して接続を行う。
ChefはChef社が開発するOSSの構成管理。 管理対象がChefに対応している必要があるため通信機器の管理にはあまり使われないPull型の形式。 制御ファイルはRubyで記述される。
構成管理ツール | 制御ファイル | 構成ファイル形式 | サーバ待ち受けポート | プロトコル | アーキテクチャ | 通信形態 |
---|---|---|---|---|---|---|
Ansible | PlayBook | YAML | なし | SSH,NETCONF | エージェントレス | Push型 |
Puppet | Manifest | 独自形式 | TCP8140番 | HTTP/HTTPS | エージェント | Pull型 |
Chef | Recipe/Runlist | Ruby | TCP 10002番 | HTTP/HTTPS | エージェント | Pull型 |
9 - 9. ネットワークセキュリティの基礎
9.1. セキュリティの基礎
9.1.1. セキュリティの概念
セキュリティの概念を表す用語には以下のようなものがある。
用語 | 説明 |
---|---|
インシデント | 情報セキュリティを脅かす発生した事件や事故のこと。 |
脆弱性 | プログラムの欠陥やシステム/ネットワーク上のセキュリティ上の欠陥全般のこと。 |
エクスプロイト | 管理システム/ネットワークの脆弱性を悪用して攻撃するためののプログラム/攻撃のこと。 |
脅威 | 攻撃を与えうる存在。技術的脅威、人的脅威、物理的脅威に分けられる。 |
また情報セキュリティを守る理想像を実現するためにセキュリティポリシーが企業などの組織では規定される。 これは企業や団体におけるセキュリティ対策の方針や行動指針を示すためのものである。
セキュリティポリシーでは以下3つの内容が定義される。
ポリシー(基本方針) セキュリティに対する基本的な考え方や方針を記します。
スタンダード(対策基準) セキュリティ確保のためにどのような対策を行うのか記します。
プロシージャ(実施手順) 対策基準ごとに具体的な手順を記します。
9.1.2. セキュリティの脅威と一般的な攻撃手法
有名な攻撃手法、セキュリティ脅威を記載する。
9.1.2.1. なりすまし攻撃
なりすまし攻撃(スプーフィング攻撃)はIPアドレス/MACアドレスを偽造することで攻撃者を別の人物に見せかけて行う攻撃の総称。 具体的には以下のものがある。
攻撃 | 説明 |
---|---|
DoS攻撃 | サービス拒否攻撃とも呼ばれ、サーバ等に過剰な負荷をかけてサービスを妨害する攻撃。攻撃にはTCP SYNフラッド攻撃やUDPパケットの悪用した方法などいくつかある。 |
DDos攻撃 | 分散型サービス拒否攻撃とも呼ばれ、ウィルスに感染させたPCを操作してDoS攻撃を行う手法。踏み台に感染PCが利用される特徴がある。 |
中間者攻撃 | 攻撃対象者の通信内容の盗聴/改竄を目的とした攻撃の総称。 |
リフレクション攻撃(アンプ攻撃) | 送信元を偽った要求をサーバに送り、ターゲットに大量の応答を返すように仕向ける攻撃 |
9.1.2.2. その他の攻撃
攻撃 | 説明 |
---|---|
バッファオーバフロー攻撃 | 攻撃対象のコンピュータの処理/許容できるデータより巨大なデータを送り付け誤動作/悪意のあるプログラムを動作させる攻撃手法 |
ソーシャルエンジニアリング攻撃 | 技術的攻撃ではなく人の社会的・心理的弱点を利用して情報を得ること。パスワードの盗み見等も該当する |
ブルートフォースアタック攻撃 | 総当たり攻撃とも呼ばれるパスワードを破るために利用される攻撃手法 |
ゼロデイ攻撃 | まだ対策が行われていない脆弱性を狙った攻撃手法 |
9.1.2.3. マルウェア
悪意のあるソフトウェアやプログラムの総称はマルウェアと呼ばれる。 情報漏洩やファイル操作、バックドアの作成などに用いられる。
種類 | 説明 |
---|---|
トロイの木馬 | 通常のアプリやファイルを装って配布されるマルウェア。自己増殖は行わない |
ウィルス | 単体で動作せず他のソフトウェアやファイルに合わさって使用される不正プログラム。ウィルスは自己増殖する場合がある。 |
ワーム | 独立して動作が可能なウィルス。増殖する可能性がある |
9.1.2.4. フィッシング
悪意のあるWebサイトに誘導させる手法の総称。
種類 | 説明 |
---|---|
スピアフィッシング | 同じ所属機関の同僚を装い偽のURLを踏ませる方法 |
ピッシング | 電話などの音声案内を通じて被攻撃者を誘導する方法 |
スミッシング | SMSメッセージを用いたフィッシング |
9.2. ネットワークデバイスのセキュリティ
9.2.1. ファイアーウォールとIPS
ネットワークを保護するための機器や機能にはファイヤーウォールやIPSがある。
9.2.1.1. ファイヤーウォール
ファイヤーウォールは外部ネットワークから内部ネットワークを守るためのソフトウェアや機器のこと。 外部だけではなく内部からつの通信もブロックすることができ、ACLよりも細かい制御が可能となっている。
ファイヤーウォールに機能の1つにパケットフィルタリングという機能があり、許可されていない通信をブロックすることができる。 具体的には送信元IPアドレス/宛先IPアドレス、送信元ポート番号/宛先ポート番号などでブロックするかどうか判断する。
また内部から外部へ送信された通信を確認し、それに対する戻りの通信を自動で許可/不許可する機能があり、それはステートフルインスペクションと呼ばれる。
これは外部通信を完全にブロックするとTCPの3Wayハンドシェイク時の外からのACKがブロックされる危険性への対策としての機能を提供するための機能と言える。
9.2.1.2. ファイヤーウォールの構築例
ファイヤーウォールを用いた構築では外部ネットワーク、DMZ、内部ネットワークの3領域に分ける。 以下に構成例(シングルファイヤーウォール型)を示す。
内部ネットワークは内部の利用者のみが利用できるネットワークで内部用のサーバやクライアントが配置される。 DMZは内部ネットワークと外部ネットワークの中間領域に位置し、インターネットに公開するサーバ等を配置する。
ファイヤーウォールの設定はDMZや外部ネットワークからの通信を内部ネットワークに入れないようにルールを規定する。 具体的には内部ネットワークへアクセス可能な通信は内部ネットワークから外部ネットワークやDMZへ要求して、応答で帰ってくる通信のみを入れる設定にする。
またファイヤーウォールは物理的にネットワークを分ける機能を持ち、物によってはルーティング、NAT、VPNの機能を持つものもある。
9.2.1.3. IDS/IPS
IDS(侵入検知システム)、IPS(侵入防止システム)はシグネチャと呼ばれる様々な不正パターン、攻撃のパターンのデータベースを利用し通信のチェックを行うため、ファイヤーウォールで検知ができないパケット内部のチェックが可能となっている。 そのため外部からの異常な通信、不正アクセスといった攻撃から内部ネットワークを保護することができる。
9.2.1.4. NGFW/NGIPS
従来のファイヤーウォールやIPSより高性能な機能を有するものはNGFW(次世代ファイヤウィール)、NGIPS(次世代IPS)と呼ばれる。
次世代ファイヤーウォールの機能の特徴は以下のようなものがある。
特徴 | 説明 |
---|---|
AVC | IPアドレス/ポート番号でパケットフィルタリングを行うのではなく、アプリケーション単位で識別/フィルタリングする機能。アプリごとに設定が可能 |
AMP | ネットワークの往来を行うファイルの監視/記録により侵入の検知をしたマルウェアの感染経路を過去にさかのぼり特定する機能 |
URLフィルタリング | 世界中のURLで知られるWebサイトをリスクベースで分類したデータベースを利用して危険度ごとにブロックする機能 |
また次世代IPSの機能の特徴は以下のようなものがある。
- IPS自動チューニング … 内部ネットワークのPCなどからデバイス情報を収集することでネットワークで必要なIPSシグネチャを自動判断し選択する機能。ご検知率の低下が見込める
9.2.2. ネットワークのセキュリティ対策
機器に強度の高いパスワードを設置する、ファイヤーウォールやIPSを導入する以外のセキュリティの実装方法には以下のようなものがある。
- 鍵付きラックや部屋に使用機材を収納する
- ルータ/スイッチで使用していないポートはすべてシャットダウンする
- 多段階認証の実装
- OS/ソフトウェアの定期的なアップデートを行う
9.2.2.1. 多段階認証
認証情報を複数合わせた認証方式。 認証要素の種類は知識要素、所属要素、生体要素に分けられ、以下の認証方式で使われる。
- 多要素認証 … 異なる種類の要素を組み合わせて認証する方式
- 2要素認証 … 特に異なる要素を組み合わせて認証する方式(上記の3種のうち異なる2種を用いた認証)
9.2.3. Cisco社製のセキュリティに関する製品
9.2.3.1. Cisco AMP
Cisco AMP(Cisco Advanced Malware Protection)はCisco社が提供するマルウェア対策製品。
Cisco AMPではサンドボックス機能やリアルタイムのマルウェア検知機能により侵入行為を防御する。 また、ネットワーク内のファイルを継続的に分析し、侵入してしまったマルウェアを封じ込めることも可能となっている。
9.2.3.2. Cisco Firepower
Cisco FirepowerはNGFWとNGIPSを搭載したCisco社のセキュリティ製品。
このファイヤーウォールのASAの接続ではSSL/TLS VPNを使用している。
9.3. L2スイッチのセキュリティ
9.3.1. ポートセキュリティ
ポートセキュリティは不正なネットワーク接続を防ぐ機能でネットワークの想定外端末からの通信をスイッチでブロックするものとなっている。 この機能ではMACアドレスを使用して端末の識別を行っている。
9.3.1.1. ポートセキュリティの動作
なおL2スイッチに登録されているMACアドレスはセキュアMACアドレスと呼ばれる。
9.3.1.2. ポートセキュリティの設定
ポートセキュリティで接続端末を識別するにはMACアドレスをスイッチに登録する必要がある。 方法は手動でMACアドレスを登録する方法、フレームが届いた際に自動で送信元MACアドレスが登録される方法の2つがある。
9.3.2. DHCPスヌーピング
不正なDHCPサーバを用意し誤った情報をPCに割り当て通信を盗聴する手法はDHCPスヌーピングと呼ばれる中間者攻撃の1種。 具体的には盗聴しているPCへ通信を送った後に本来の送信先にデータを送信すれば盗聴にすぐには気づかれないということである。
9.3.2.1. DHCPスヌーピングを防ぐ方法
スイッチにDHCPスヌーピングの設定を行うと信頼ポートと信頼しないポートの2つに分けられる。 信頼しないポートからDHCP OFFERやDHCP ACKなどが送られるとそれらはブロックされる。 具体的にはDHCPサーバからメッセージが送られてくるポートを信頼ポートに設定を行い、それ以外を信頼しないポートに設定する。
なおこの設定を有効にするとDHCPパケットの中身がチェックされるため、DHCPサーバから割り当てられるIPアドレスをスイッチ側で知ることができる。 その情報はスイッチ側のDHCPスヌーピングバインディングデータベースに保存される。 このデータベースとダイナミックARPインスペクションを組み合わせるとARPスヌーピングと呼ばれる攻撃も防ぐことが可能。
9.3.3. ダイナミックARPインスペクション
ダイナミックARPインスペクションはARPスヌーピングと呼ばれるARP応答のなりすまし、謝ったARP情報を教える攻撃を防ぐ機能のこと。
9.3.3.1. ARPスヌーピング(ARPポイズニング)
ARPスヌーピングの仕組みは以下の通り。
- 宛先MACアドレスを知るため攻撃対象のクライアント端末がブロードキャストでARP要求する
- 攻撃者PCが他のPCになりすましたARP応答を返送し攻撃対象クライアントPCが誤ったARP応答をARPテーブルに登録する
- この際別の宛先への通信が攻撃者PCに向かう場合がある(スヌーピング)
9.3.3.2. ダイナミックARPインスペクションの仕組み
ダイナミックARPインスペクションではDHCPスヌーピング防止設定のDHCPスヌーピングバインディングテーブルが使用される。
具体的に信頼しないポートに設定したポートへのARP要求/応答がARP内部のIPアドレスとMACアドレス紐づけがDHCPスヌーピングバインディングテーブルと異なる場合になりすましと判断しパケットを破棄する構造となっている。
9.3.4. VACL
VACLはスイッチ内のVLANにACLを適用するもの。 対象はVLANに届いたすべての通信となる。またVACLはダブルたギング攻撃の対策の1つとなる。
9.3.4.1. ダブルタギング攻撃
ダブルタギング攻撃はトランクリンクのカプセル化がIEEE802.1Qの場合のネイティブVLANを利用した攻撃のこと。 これは攻撃者がトランクリンクのネイティブLANと同じLANに所属している場合に使用される方法となる。
具体的には攻撃者が2つのVLANタグ(トランクリンクのネイティブLANと同じVLANタグと攻撃したいVLANのタグ)を付加したフレームを送信する。 その際にスイッチが前者(トランクリンクのネイティブLANと同じVLANタグ)のVLANタグを外して転送するため異なるVLANにフレームが送信されてしまうという特性を利用したものとなっている。
9.4. ACL
9.4.1. ACLの概要
ACL(アクセスコントロールリスト)はルータを通過するパケットをチェックし許可された通信を転送するように通信制御をするために使用されるリスト。 ルータはACLの内容に基づきパケットフィルタリングを行う。
ACLにはチェックするパケットの条件とその条件に一致する場合の動作の一覧を登録する。
9.4.1.1. ACLの種類
ACLにはいくつか種類があり標準ACLと拡張ACLが代表的なものに上げられる。
標準ACL … 標準ACLではパケットの送信元IPアドレスをチェックする。 また標準ACLの種類には番号付き標準ACLと名前付き標準ACLがあり、それぞれ1~99の値を設定、名前を表す文字列を指定する。
拡張ACL … 拡張ACLでは送信元IPアドレス、宛先IPアドレス、プロトコル番号、送信元ポート番号,宛先ポート番号をチェックする。 また拡張ACLの種類には番号付き拡張ACLと名前付き拡張ACLがあり、それぞれ100~199の値を設定、名前を表す文字列を指定する。
9.4.1.2. ACLのルール
ACLではリストの上から検索を行い該当行があった場合それ以降の行を検索しない。 そのため記述する順番を意識する必要がある。
9.4.1.3. ワイルドカードマスク
ACLではフィルタリングの条件となる送信元や宛先を指定する際にワイルドカードマスクを使用する。
表記はIPアドレス ワイルドカードマスク。 またはワイルドマスクカード省略形でhost IPアドレスと記述可能。
172.16.1.1 0.0.0.0 → host 172.16.1.1
またワイルドカードマスクを使用せずanyで指定する事も可能。
9.4.1.4. ACLの適用
ACLは作成後にルータのインターフェイスに適用する。ACLはインバウンドで適用するか、アウトバウンドで適用するかで動作が異なる。 またACLの適用は1つインターフェイスにつきインバウンド、アウトバウンドそれぞれ1つのみの適用になる。
インバウンドではパケットが届いたときにチェックが行われ、アウトバウンドではパケットが出ていくときにチェックが行われる。
9.4.2. 拡張ACLの概要
拡張ACLは標準ACLよりも細かくパケットのフィルタリングができるACL。 L3ヘッダの送信元IPアドレス、宛先IPアドレス、プロトコル番号、L4ヘッダの送信元ポート番号,宛先ポート番号をパケットフィルタリング条件に利用可能。
9.5. AAA
9.5.1. AAAの概要
AAAはセキュリティを実現させるための主要な3機能を元に考える概念で以下の3つで定義される。
- Authentication:認証 … ネットワーク/サービスを利用する際にユーザID/パスワードなどにより確認を行うこと
- Authorization:認可 … 認証されたユーザにどの機能を提供するかを決定するもの
- Accounting:アカウンティング … ネットワーク/サービスを利用しているユーザのログイン時間やアクセス情報などを監視/記録すること
9.5.2. RADIUS/TACACS+
AAAを実現しネットワークアクセスを制御するためのプロトコルにはRADIUSや**TACACS+**がある。
項目 | RADIUS | TACACS+ |
---|---|---|
トランスポート層 | UDP | TCP |
使用ポート | 1812, 1813 | 49 |
パケット暗号化 | パスワードのみ暗号化 | 全体の暗号化 |
AAAへの対応 | 認証/アカウンティング | すべて |
機能の対応 | アカウンティングは独立、それ以外は統合 | AAA3機能すべて独立 |
ルータ管理 | ユーザがルータで実行するコマンドを制限できない | ユーザがルータで実行するコマンドを制限できる |
標準化対応 | RFC2865 | シスコ独自規格 |
9.5.2.1. RADIUS
RADIUSはAAAのうち認証/アカウンティングの機能を持つプロトコル。 UDPを使用するサーバ-クライアント型のプロトコルでRADIUSクライアントがRADIUSサーバに対して応答する仕組みとなっている。 認証に1812ポート、アカウンティングに1813ポートが使用される。
ネットワークにアクセスする際にルータやスイッチにログインする際にRADIUSプロトコルを利用して認証を追加することが可能。 またIEEE802.1Xにも使用されている。
9.5.2.2. TACACS+
TACACS+はAAAの3要素すべての機能を持つプロトコル。 TCPを使用するサーバ-クライアント型のプロトコルでTACACS+クライアントがTACACS+サーバに対して応答する仕組みとなっている。 またTCPの49ポートを使用し、やり取りするパケット全体を暗号化できる。
ネットワークにアクセスする際にルータやスイッチにログインする際にTACACS+プロトコルを利用して認証を追加することが可能でログインしたユーザが実行するコマンドの制限が可能。
9.5.3. IEEE802.1X
IEEE802.1X認証はネットワークへの不正アクセスを防ぐための機能。
IEEE802.1Xの構成
IEEE802.1Xではサプリカント、オーセンティケータ、認証サーバの3要素が必要となる。
要素 | 説明 |
---|---|
サプリカント | ユーザが認証した情報をオーセンティケータに送信するためのPC側の認証ソフトウェア |
オーセンティケータ | クライアントから送られる認証情報をRADIUSサーバへ中継する機器。具体的にはIEEE802.1X対応のネットワーク機器となる |
認証サーバ | ユーザ認証を行うためのサーバ。IEEE802.1XではRADIUSサーバのみをサポートしている |
10 - 10. その他の追加知識
10.1. その他のワイヤレスLAN
IEEE.802.11以外のワイヤレスLAN規格を以下に示す。
10.1.1. WIMAX
WIMAXはマイクロ波を利用した世界標準の通信方式。 WiMAXは、当初は例えばユーザ宅と基地局間の長距離の固定の無線通信を目的としていた。
WiMAXの技術に移動体を想定したハンドオーバー(接続する基地局を切り替えること)の仕様を追加した規格のことをモバイルWiMAXと言う。IEEE802.16e-2005で策定されている。
10.1.2. LTE
LTEはモバイル通信の通信用規格。 厳密には第3世代(3G)の拡張版(3.9G)のデータ通信を高速化した規格となっている。
LTEはWIMAXよりも高いデータ転送速度と低い遅延を実現している。 なおIEEEではなく3GPPにより規定されている。
10.1.3. BlueTooth
Bluetoothとは10m~100m以内の近距離で端末同士を1対1でワイヤレス接続することを想定して作られた無線通信技術である。
10.1.4. ZigBee
ZigBeeとは、IoTやセンサーネットワーク、家電の遠隔制御などに用いられる近距離無線通信規格の一つ。通信速度は遅いが低消費電力で、多数の装置がバケツリレー式にデータを運ぶメッシュネットワークに対応している。 組み込み系の機器の通信によく使われる。
10.1.5. LPWA
LPWAとは「Low Power Wide Area」の略で、「低消費電力で長距離の通信」ができる無線通信技術の総称のことで、最大伝送速度は100bps程度、伝送距離は最大50 km程度。 他の通信方式と比べて、特性が「IoT/M2M」に非常に適しているため、IoT分野の通信に広く利用されている。
10.2. その他のデータリンク層のプロトコルと通信規格
10.2.1. ATM(Asynchronous Transfer Mode)
ATMは広域通信網などで利用される通信プロトコルの一つで、データを53バイトの固定長のセル(cell)と呼ばれる単位に分割して伝送する方式である。
10.2.2. POS(Packet over SONET)
POSとは、パケットを、ATMを使わずに直接SONET/SDHフレームに格納して転送する通信の総称。略称は「POS」。 ATMを用いる従来のIP over ATMなどと比べて、オーバーヘッドが小さいが、ATMのQoSなどの機能が利用できないという欠点もある。
10.2.3. ファイバーチャネル
ファイバチャネルとは、コンピュータと周辺機器間のデータ転送方式のひとつ。「FC」と略されることもある。 接続には最大転送速度32Gbit/sの光ファイバーや同軸ケーブルなどを使用し、最大伝送距離 10kmと、長距離区間の高速データ転送を実現する。
10.2.4. ISCSI
ISCSIとは、コンピュータ本体とストレージ(外部記憶装置)の通信に用いられるSCSIコマンドを、IPネットワーク経由で送受信する通信規約(プロトコル)。TCP/IPベースのコンピュータネットワークにストレージ装置を直に接続することができるようになる。
10.2.5. IEEE1394
IEEE 1394とは、コンピュータと周辺機器やデジタル家電などをケーブルで接続するための通信規格の一つ。最大で63台の機器をデイジーチェーン(数珠つなぎ)接続またはツリー接続することができる。転送速度は初期の規格では100Mbpsだったが、その後3.2Gbps(3200Mbps)まで高速化されている。
10.2.6. HDMI
HDMIとは、「High-Definition Multimedia Interface」の略で、映像・音声・制御信号を1本のケーブルにまとめて送ることができる通信規格のこと。今までは音声・映像信号ごとに色分けされたケーブルが何本か束になったオーディオケーブルを使用していたが、HDMIでは映像・音声の両方を1本のケーブルで送ることができる。配線がシンプルなため、テレビやパソコン、ゲーム機など様々な機器で使われている。
10.2.7. DOCSIS
DOCSISとは、ケーブルテレビ(CATV)の回線を利用して高速なデータ通信を行うための規格。もともと北米の業界団体などが推進していもので、ITU-TS(国際電気通信連合)によってJ.112として標準化された。仕様の検討や製品の認証などは業界団体のCableLabsが行なっている。
10.2.8. 高速PLC
高速PLCは電力線を通信回線としても利用する技術。 450kHz以下の周波数を用いるものを低速PLC、2-30MHzを用いるものを高速PLCと呼ぶこともある。
10.3. その他のルーティングプロトコル/アルゴリズム
10.3.1. RIP
RIPの概要
RIPは最も基本的なルーティングプロトコルで市販ルータにも搭載されている。 特徴は以下の通り。
- ディスタンスペクタ型
- ルーティングアップデートは30秒ごとに送信
- メトリックはホップカウントのみ
- ホップカウント(通過ルータ数)が16になるとパケット破棄
RIPv2の概要
RIPv2はRIPv1の改良バージョン。 特徴は以下の通り。
- アップデート認証機能の追加
- ルーティングアップデートの送信がマルチキャストに変更
- クラスレスルーティングに対応
10.3.2. BGP
BGPの概要
BGPはAS間で経路情報を交換するEGPのルーティングプロトコル。 つまりISPが管理しているネットワークなどで使用される。 特徴は以下の通り。
- パスベクタ型
- 転送プロトコルにTCPを使用
- ルーティングアップデートは定期的に行わず、変更発生時にのみ差分アップデートする
- 60万ルート以上をルーティングテーブルに保持可能
BGPのAS番号
BGPではインターネット上での各ASを識別するために番号(AS番号)を割り当てる。 ISP以外にも、大企業、学術研究機関なども1つのASが割り当てられている。
AS番号はICANNという組織により、RIR(Regional Internet Registry)にブロック単位で割り当てされる。 日本ではJPINICやAPNICがAS番号の割り当てを管理している。
またAS番号はグローバルAS番号とプライベートAS番号の大きく2つに分類できる。
AS番号 | AS番号の範囲 | 用途 |
---|---|---|
グローバルAS番号 | 1 ~ 64511 | インターネット全体で一意のAS番号 |
プライベートAS番号 | 64512 ~ 65535 | 組織内部で自由に使用できるAS番号 |
BGPの特徴
BGPでは転送プロトコルにTCPを使用して信頼性のあるルーティングアップデートを行う。 BGPでは定期的なルーティングアップデートは行わず、変更発生時にのみ差分アップデートを行う。 また、BGPではパスアトリビュートという属性をルート情報に付加することによって、経路制御を行える。
10.4. インターネットの接続方式
10.4.1. PPPoE接続方式
PPPoE接続方式は電話回線を前提としたルールであるPPPをイーサネットへ応用した接続方式を指す。
PPPoE方式の場合、インターネットに接続するときに必ずONU(ネットワーク終端装置:電話網とインターネット網を接続する装置)を経由することからトンネル接続方式と呼ばれることもある。
特徴は以下の通り。
- PPPoEは必ず通信回線をクライアントの通信機器に接続するための機器であるネットワーク終端装置(NTE)を利用する。これには1つのネットワーク終端装置に対して収容できるセッション数が決められているためトラフィック量が増加していくと通信速度が遅くなる
10.4.2. IPoE接続方式
IPoE接続方式は直接インターネットに接続できる接続方式を指す。 またネイティブ接続方式と呼ばれる。
IPoEではネットワーク終端装置(NTE)を必要とせず、ISPを経由してインターネットに直接接続できるため、ネットワーク終端装置での遅延などが発生しにくい特徴がある。
IPoEの利点と欠点は以下の通り。
利点は以下の通り。
- 高速通信が可能(PPPoEでは最大1GMbps, IPoEでは最大10GMbps)
- 通信が安定する
- 簡単に設定できる
欠点は以下の通り。
- IPv4のみに対応しているWebサイトは閲覧できない(IPoE IPv4 over IPv6を利用すれば可能)
- 専用のプロバイダ・ルーターを契約する必要がある
- 外部環境によっては通信速度が落ちる可能性がある
10.5. その他のネットワークの用語
10.6. 暗号化技術の基礎
暗号化方式には共通鍵暗号と公開鍵暗号の2つがある。
10.6.1. 共通鍵暗号方式
共通鍵暗号方式では暗号化と復号に同じ鍵を使用します。共通鍵暗号で使用するアルゴリズムには「RC4、DES、3DES、AES」などがある。
現在主流な暗号化方式は「AES」。AESは無線LANのWPA2でも採用されている暗号化方式。 共通鍵暗号では通信接続先ごとに共通鍵を生成する必要があり、また鍵交換を盗聴されないよう安全に行う必要がある。
- メリット:ファイルやデータの暗号化にかかる処理速度が早い
- デメリット:データを送る人の数だけ管理する鍵が増える。送信した鍵が第三者に盗まれる危険がある
10.6.2. 公開鍵暗号方式
公開鍵暗号方式では暗号化と復号に別の鍵を使用します。暗号化に使用する鍵は公開鍵と言い、復号に使用する鍵は秘密鍵と言う。 公開鍵暗号では受信者側にて公開鍵と秘密鍵を生成します。暗号データは秘密鍵でしか復号することができない。 公開鍵だけを送信側の暗号鍵として公開して、その公開鍵で暗号化されたデータを秘密鍵を使用して復号する。 公開鍵暗号で使用するアルゴリズムにはRSAとElGamalがある。
- メリット:作る鍵が1つで済むので管理が楽。鍵を盗まれる危険がない
- デメリット:データの暗号化にかかる処理速度が遅い