ネットワークスペシャリスト - SE娘の剣 -

左門至峰によるネットワークスペシャリストの試験対策サイトです。勉強方法、合格体験談、合格のコツ、過去問解説、基礎知識などの紹介します。

ルーティング

1.ルーティングとは

ルーティングとは、「乗り換え案内」と考えればよい。
大阪駅において、目的地ごとにどこに行けばいいかの経路が示されます。
①高槻 →(次の駅は)新大阪
②USJ(ユニバーサルシティ駅) →(環状線に乗って、次の駅は)福島
③名古屋 →(次の駅は)新大阪 ※新幹線に乗ります。
こんな感じです。
keiro
経路選択のポイントはコストと時間であろう。ネットワークの経路においては時間による経路選択が主になる。(※ISDN回線はコストが高いから異常時しか利用しないといった、”コスト”面での経路が無いともいえない。)
 また、似ているといったのは別の面もある。例えば、新幹線で東京から大阪まで行くとする。この新幹線は大阪までは責任をもって送り届けてくれるが、大阪から先のUSJまでは一切関与しない。ルーティングも同じで、当該ルータは次のルータまでは責任を持つが、その先は関与しない。「その件に関しましては、行った先(次のルータ)にてお問い合わせください」というスタンスである。
 デフォルトルートなんてまさしくそうだ。「目的地までどう行くかは、存じ上げておりません。デフォルトゲートウェイに行って、そこでお尋ねください。」
ルーティングの仕組みにおいて、なぜこうなるかは理解しておきたいところだ。

女性直立
でも、ルーティング処理を行うのは、
ルータやL3SWだけですよね。
いや、IPアドレスを持つすべてのネットワーク機器がルーティングが可能であり、ルーティングが必要です。実際、パソコンもデフォルトゲートウェイを設定しており、これはルーティングになります。乗り換え案内でも、各駅で経路情報を持っていると同時に、個人でも経路情報を持ちます。
大阪駅の近くにあなたがいる場合、最終目的地が①北海道、②東京、③通天閣などによって、どこに行くかを「乗り換え案内」にて確認します。
dest
ためにし、パソコンからコマンドプロンプトを立ち上げ、ルーティング情報を表示するコマンドである netstat -r と入力してみましょう。
iproute
このように、ルータで見るような経路情報がたくさん出てきます。
ゴミもたくさんあって見ずらいですが、一番下の固定ルートだけ見てください。
0.0.0.0/0(全てのトラフィック)のゲートウェイが192.168.1.254になっています。
これにより、どんな通信も192.168.1.254に行きなさいという指示です。
では、経路情報を追加しましょう。以下のように、インターネット以外に、172.16.1.0/24というネットワークがあり、PCからは192.18.1.253というルータ経由で通信するとします。

route
以下のように入力してください。

C:\WINDOWS\system32>route add 172.16.1.0 mask 255.255.255.0 192.168.1.253 metric 1 -p

  • pはpermanent(恒久的)という意味で、再起動しても保存されます。

再度、コマンドプロンプトで見てみましょう。追加したルートが表示されることが確認できます。
route2

2.ルータとゲートウェイ、L3SW

▼ルータ
ルータの機能に関して過去問(H22春AP午前問37)では、「LAN同士やLANとWANを接続して,ネットワーク層での中継処理を行う」と述べられています。また、過去問(H26春AP午前問31不正解選択肢)では、「IPアドレスを解析することによって,データを中継するか破棄するかを判断する」とあります。相手先に送るべきIPアドレスであれば、中継するのです。

▼ゲートウェイ
過去問では、ゲートウェイの機能として、「OSI基本参照モデルのトランスポート層からアプリケーション層までの階層で,プロトコル変換を行う(H23秋AP午前問35不正解選択肢)」、「互いに直接,通信ができないトランスポート層以上の二つの異なるプロトコルの翻訳作業を行い,通信ができるようにする(H26春AP午前問31不正解選択肢)」とあります。

また、意味は異なりますが、デフォルトゲートウェイという言葉は、PCのネットワークの設定において、皆さんに馴染み深いでしょう。デフォルトゲートウェイの役割として、過去問(H27春IP問49)では、次のように述べられています。
「あるネットワークに属するPCが,別のネットワークに属するサーバにデータを送信するとき,経路情報が必要である。PCが送信相手のサーバに対する特定の経路情報をもっていないときの送信先として,ある機器のIPアドレスを設定しておく」 

▼L3SW
ルーティング機能を持ったスイッチとして、L3スイッチもあります。

【ルータとL3SWの違い】

女性目閉じる  
最近では、ルータではなく、レイヤ3スイッチングハブ(以下L3スイッチ)を使うことが増えているようですね。
両者の違いは何ですか?
まずは、過去問(H17SW秋午後問1)を確認する。

過去問(H17SW秋午後問1)
社内LANなどの比較的大規模なLANを構築する場合,最近ではルータではなく,IPの処理も可能なレイヤ3スイッチングハブ(以下,スイッチという)を用いる例が多い。フィルタリングなどの多機能性に重点を置いたルータに対して,スイッチでは[ ク ]に重点を置いている。大容量のファイルを扱うファイルサーバヘのアクセスや,映像コンテンツの利用には,スイッチが適している。






ちなみに、空欄クには「通信の高速化」が入る。

基本的な違いの根底に、ルータは「ルーティング(経路制御)」が主軸。L3スイッチは、スイッチングが主軸であることを理解する。
そのうえで、いくつか述べる。

❶ルータ
・WANで使うことが多く、WANで必要な機能をそろえている。
・ルーティング機能が充実しており、RIPやOSPFだけでなく、BGPやその他のルーティングプロトコルもサポートしている。
・IPsecの設定、PPPoEの設定、ISDNの接続ができるなど、WANでの利用シーンに沿った機能を持つ。
・ソフトウェア処理という言葉が適切かはさておき、L3SWとの比較では、このように表現されることがある。

❷L3スイッチ
・LANで使うことが多く、LANで必要な機能をそろえている。
・基本は、スイッチなので、ルーティング機能がメインではない。シスコ社の場合、OSPFやBGPなどのルーティングプロトコルを使う場合は、別途ソフトウェアが必要になる。
・スイッチなので、24ポートや48ポートなど、ポート数が多い。
・LANでは重要な機能であるVLANやSTP、リンクアグリゲーションなどに関して、細かな設定ができる。
・ハードウェア処理という言葉が適切かはさておき、ソフトウェア処理のルータに比べて、高速な処理ができる(はず)。
・細かい点だと、Ciscoの機器だと、NAT機能はルータだけが持ち、L3SWでは実装できない。ようは、L3SWは、あくまでのスイッチング機能がメインであり、L3の機能に関しては制約がある。

3.静的ルーティングと動的ルーティング

ルーティングには,静的ルーティングと動的ルーティングがあることをお伝えしました。詳細な設定はこのあとの節で解説しますが、両者の違いを簡単にまとめておきます。
まず、静的ルーティング(スタティックルーティング)は、経路情報が静的(固定)で、自動で変化することはありません。設定方法は、管理者が手動でルータに設定します。ですから、経路情報が増えてくると、管理者は大変です。
一方の動的ルーティングは,RIPやOSPFに代表されるものであり,経路情報を他のルータから自動で学習します。また、LANケーブルの切断や機器の障害などが発生した場合には、経路情報は自動で切り替わります(動的に変化)。
ネットワークスペシャリストを目指す女性SEあれ? 

動的ルーティングのデメリットはないのですか?
もちろんある。動的ルーティングのデメリットですが、その一つは、経路情報が増えると、ルータに負荷がかかり、処理が遅くなることです。ですが、ネットワークを適切に分割したり、規模に応じた処理性能が高い機器を購入すれば対処ができます。ネットワークの規模が大きくなれば、動的ルーティングは必須と考えてください。
両者の違いを簡単にまとめます。

静的ルーティング 動的ルーティング
代表例 スタティックルーティング RIP,OSPF,BGP
経路情報の設定 管理者が手動で設定 ルータどうしが情報を交換して自動で設定
メリット 設計した人の意図通りの確実な経路選択がされる ・自動で最適なルート選択が可能
・障害時に自動で経路変更が可能
デメリット 大規模な場合,経路情報が大量になる(設定が複雑で,間違いが起こりやすい) ルータに負荷がかかり,処理が遅くなることがある。(このため,OSPFではエリア分割をする)

✚✚静的ルーティングと動的ルーティングの違い

これ以降、試験で問われるRIP、OSPF、BGPの解説をしますが、仕組みの違いだけ整理しておきます。
①RIP
ディスタンスベクター(距離ベクトル)型で、ディスタンス(距離)とベクター(方向)で経路を決めます。ただ、距離の決め方はホップ数(ルータの数)という単純な方法なのでこの方式には限界があります。
②OSPF
リンクステート型アルゴリズムで、リンク(接続)状態で経路を決めます。経路決定にはコストが重要な考え方です。
③BGP
パスベクトル型アルゴリズムで、RIPのディスタンスベクタと同様に、パスとベクター(方向)で経路を決めます。ここでのパスとは、ASパス(AS_PATH)を意味します。ASパスには、接続先ネットワークへのASの経路情報を含んでいます。具体的には、どのASを経由して宛先に届くかという情報です。

4.ルーティングテーブル(経路制御表)

ルーティングテーブルとは、経路情報を表した一覧表です。さきほどの、自分のパソコンでの経路情報を再度確認しましょう。
iproute
ここで、項目を確認しましょう。
①ネットワーク宛先:目的となる宛先のアドレス
②ネットマスク:上記①のサブネットマスク
③ゲートウェイ:パケットを転送する(次の)ルータ
④インターフェース:パケットを出力するインターフェイス
⑤メトリック:宛先までの距離(近さ)を表す値です。経路が複数ある場合に、最適な経路選択をするための指標と考えてください。RIPの場合は、経由するルータの台数がメトリックになります。
2 

ゲートウェイとインターフェイスの両方を指定する必要があるのですか?
どっちか一つを指定することがほとんどです。パソコンのルーティングテーブルはループバックやブロードキャストなどが全て表示されて見づらいので、Ciscoルータのルーティングテーブル(show ip route)を見てください。
構成は、シンプルに、以下とします。
route
構成図を確認しましょう。
・ネットワークは、192.168.1.0/24、192.168.2.0/24、192.168.3.0/24の3つからなります。
・ネットワークの境界上にルータ(R1、R2)があります。
・R1においては、192.168.1.0のネットワークに接続されているインターフェースがFastEthernet0/0で、192.168.2.0のネットワークに接続されているインターフェースがFastEthernet0/1です。
コマンド(show ip route)で、経路情報を見ましょう。

Router#show ip route
(内容省略)
C    192.168.1.0/24 is directly connected, FastEthernet0/0
C    192.168.2.0/24 is directly connected, FastEthernet0/1
S    192.168.3.0/24 [1/0] via 192.168.2.253

 ※先頭のCはconnected(直接接続されている)、 Sはstatic(静的経路情報)を意味します。
例えば、一番上の行にある192.168.1.0/24のネットワークは、C(connected)とあるように、FastEthernet0/0のインターフェースに直接接続されています。192.168.1.0/24上にある端末と直接通信が可能で、ゲートウェイ(ルータ)にパケットを転送する必要がありません。なので、経路情報表にはFastEthernet0/0というインターフェース情報のみが記載されています。
一方、3行目にある192.168.3.0/24のネットワークは、「via 192.168.2.253」とあるように、ゲートウェイ(次のルータ)として、192.168.2.253が指定されています。viaというのは、「経由して」という意味です。電車のホームにて英語のアナウンスを聞いていると、「for Cosmosquare via Honmachi(本町経由のコスモスクエア行き)」などとありますが、これと同じ意味です。
インターフェースとしてFastEthernet0/1を指定しただけではダメです。FastEthernet0/1がつながっている192.168.2.0/24のネットワークつながっている端末は一つではありません。どのルータに転送すべきかを指定する必要があります。

5.スタティックルート

(1)スタティックルート

静的なルートです。以下の記事で書いた経路情報にはStaticを表すSが付いていたように、手動で設定したものです。
OSPF(Open Shortest Path First)- (3)スタティックルーティング
Ciscoルータの場合の設定コマンドは以下になります。設定内容は、ルーティングテーブルにある内容になります。具体的には、宛先192.168.3.0/24のネットワークに行くには、ネクストホップ(ゲートウェイ)として192.168.2.253に行きなさいという内容です。

Router(config)#ip route 192.168.3.0 255.255.255.0 192.168.2.253
(2)デフォルトルート

規定の行き先としてのデフォルトルートはとても便利です。
例えば、「飛行機に乗る場合は直通バスのバス停に行くが、それ以外はすべて最寄りのJRの駅に行く」というのと同じです。パソコンの場合も、デフォルトルートとして、デフォルトゲートウェイの設定をするだけです。(例外はあります)。それで十分なのです。
実際には、インターネット上のありとあらゆるネットワークと接続するので、経路情報をたくさん書くことも可能です。 ですが、管理が大変になるだけで、あまり意味がありませんよね。
defoge
ではさきほどのネットワーク構成において、デフォルトルートを設定してみましょう。

Router(config)#ip route 0.0.0.0 0.0.0.0 192.168.2.253

sef6 

0ばかりで違和感もありますが、
こういう書き方をするというルールなんですね。
その通り。これは覚えるしかない。
では、実際の経路情報を見てみましょう。

Router(config)#do sh ip route
(省略)
C    192.168.1.0/24 is directly connected, FastEthernet0/0
C    192.168.2.0/24 is directly connected, FastEthernet0/1
S    192.168.3.0/24 [1/0] via 192.168.2.253
S*   0.0.0.0/0 [1/0] via 192.168.2.253

一番下に、デフォルトルート(0.0.0.0/0)が追加されました。

6.経路が複数ある場合の経路選択の方法

さて、一つのルータ上で、複数の経路が存在する場合、どの経路を選ぶでしょうか。

以下の項目で決定されます。上から順に優先度が高くなります。
①ロンゲストマッチ
②(ルーティングプロトコルが違う場合は)アドミニストレーティブディスタンス 
 ※ロンゲストマッチはアドミニストレーティブディスタンスよりも優先
③メトリック
 メトリック(ホップ数やコスト)が小さい方の経路を選ぶ

では、仮に全部が同じ複数の経路が存在した場合、どうなるでしょうか。
→OSPFは負荷分散経路が複数ある場合、ホップ数やコストなどのメトリックで経路が選択されます。
たとえば、RIPであればホップ数が少ない経路が選ばれます。

少し補足します。
❶ロンゲストマッチ
ルータのルーティング情報を見てみましょう。
以下のように、デフォルトルートに加え、個別の経路情報が確認できます。

Router#show ip route
(省略)
S    192.168.3.0/24 [1/0] via 192.168.2.253
S*   0.0.0.0/0 [1/0] via 192.168.1.253

この場合、192.168.3.0向けの通信は、どちらのルータに行くでしょうか?
192.168.2.253、それとも192.168.1.253?
1
まあ、当然ながら192.168.2.253でしょう。経路情報にそう書いてありますから。 
あれ、でも、デフォルトGWは0.0.0.0なので、全てのルートが該当します。だから、デフォルトGW(192.168.1.253)に行く可能性もあるのでしょうか?
同じ経路が複数ある場合、合致している長さが長い方を選択する。これが、ロンゲストマッチの考え方です。
マッチ(match:一致している)部分がロンゲスト(longest:最も長い)ものが採用されます。

10進数 2進数 合致数
目的地 192.168.3.0 11000000 10101000 00000011 00000000 -
経路1(192.168.2.253) 192.168.3.0 11000000 10101000 00000011 00000000 24bit
経路2(192.168.1.253) 0.0.0.0 00000000 00000000 00000000 00000000 0bit

❷アドミニストレーティブディスタンス
4 

でも、RIPとOSPFの経路があった場合はどうなりますか?RIPのホップ数と、OSPFのコスト値はどっちが大きいかってきまっているのでしょうか?
一つのルータが、複数の経路情報を受け取る場合があります。
たとえば、H30NW午後Ⅰ問3では、L3SWがIP-VPN網からはBGPで本社宛ての経路を受け取り、インターネットVPN網からは、OSPFで本社宛ての経路をうけとります。つまり、2重で経路をうけとります。

この場合、アドミニストレーティブディスタンス値が小さい方が優先されます。
■Ciscoの場合のアドミニストレーティブディスタンス値

ルーティングプロトコル アドミニストレーティブディスタンス値
直接接続(Connected) 0
スタティックルート(Static) 1
BGP(※外部の場合) 20
OSPF 110
RIP 120

この値は、設定にて変えることができます。フローティングスタティックなどはこれを利用しています。
(例)OSPFを利用し、Staticのディスタンスを130にしておく。
通常は120のOSPFが利用されるが、OSPFのネイバーが切れたら、Staticの経路が浮き上がってくる。

▼(参考)同じルーティングプロトコルで、同じメトリックの経路がある場合
たとえば、RIPで同じホップ数、OSPFで同じコストの複数の経路がある場合、どうなるでしょう。
①RIP →不安定になり、推奨されていない
②OSPF →ロードバランスする。
なので、OSPFの場合は、冗長化の仕組みとしても利用される。

7.CIDRと経路集約

(1)CIDR

CIDR(Classless Inter Domain Routing)に関して、過去問では「IPv4のアドレス割り当てを行う際に、クラスA~Cといった区分にとらわらずに、ネットワークアドレス部とホストアドレス部を任意のブロック単位に区切り、IPアドレスを無駄なく効率的に割り当てる方式(H20NW午前 問25)」と述べられている。
・CIDRはサブネットマスクと似ており、概念や根底にあるものは同じである。ただCIDRはそのスペルにあるようにRoutingである。クラスにとらわれないルーティングである。
だから、たとえば、192.168.2.0/23とすることで、
192.168.2.0/24
192.168.3.0/24
という2つのRouting経路を192.168.2.0/23という経路に集約できる。

(2)経路集約とは

経路集約の情報も,クラスにとらわれないルーティングなので,CIDRによる表記といえます。経路集約とは,ルーティングテーブルにおいて,複数の経路をまとめることです。スーパーネット化と表現する場合もあります。

(3)経路集約の利点

ネットワークスペシャリスト試験の過去問(H17NW午後1問4)では、「通信経路数が増加したときに,経路集約を行わないことによる問題点を二つ挙げ,それぞれ20字以内で述べよ」とある。
解答例は以下の2つ 
 ・経路情報の増加によるトラフィックの増加 
 ・経路情報の増加によるルータ負荷の増加

8.ソースルーティング

ソースルーティングとは、パケットが転送される経路のノードを,送信元ノードが明示的に指定することです。
具体的には、IPヘッダのオプションにて、経由するノードを指定できます。

9.経路情報の再配布

(1)再配布とは

経路情報の再配布とは,たとえば、OSFPの経路情報をBGPに通知することです。
異なるルーティングプロトコルでは、経路交換ができません。よって、再配布することで、経路情報を異なるルーティングプロトコルにも伝えるのです。
ネットワークスペシャリストを目指す女性SEあれ? 

最初から同じルーティングプロトコルを使えばいいのでは?
現実的はそうはいかない場合もあるのです。たとえば、社内はOSPFを動かしていても、WANに関しては、他社であったり、使用するWANサービス(IP-VPN網は基本的にBGP)の制約などから、ルーティングプロトコルが混在することは少なくありません。
 Ciscoルータにおける設定例をご紹介します。以下は、RIPの経路情報をOSPFに再配布(redistribute)する場合の設定例です。

Cisco(config)# router ospf 1
Cisco(config-router)# redistribute rip

RIPとOSPFでは、最適は経路を判断する基準であるメトリック(コストやホップ数)が違います。よって、実際の設定では、再配布する際のメトリック値をどうするかなどの設定もします。でも、基本的には上記のように「再配布する」、というシンプルな設定です。

(2)再配布時の注意点(H29NW午後Ⅰ問3で出題)

複数のルータで経路の再配布を行うと,経路情報がループしてしまうことがあります。以下はループするイメージを掴んでもらうために、簡略化した図で説明します。(実際にループするのは、もう少し複雑な状況です)
 左側のネットワークではOSPF、右側はBGPが動作しています。R4のルータに着目してください。R4は、サーバの経路情報を持っています。それをR2に伝えます。(図①)。これにより、R2は「サーバと通信するにはR4へ送ればいい」ということを知ります。R2はeBGPによるサーバの経路情報をOSPFに再配布してR1に伝えます(図②)。R1は、「サーバと通信するにはR2へ送ればいい」ということを知り、この経路情報をR3に伝えます(図③)。この情報がR4に再配布して伝わります。えます。結果的に、R4は、「サーバと通信するにはR3へ送ればいい」という情報を持ってしまいます。

 
ネットワークスペシャリストを目指す女性SE下向き 

変ですね。R4では、すぐ右にサーバがあるのに、
R3に送るという経路情報をもらうんですね。
そうなんです。再配布を繰り返すと経路がおかしくなりますね。そこで、再配布された経路を再配布しないという当たり前の経路制御が必要になります。 

10.ルーティングループ

以下のように、2つの拠点(10.1.1.0/24、10.1.2.0/24)と2台のルータ(R1、R2)があるとします。
R1のデフォルトルートはR2、R2のデフォルトルートはR1に向いています。このとき、R1のネットワークのPCから5.5.5.5にpingを送信(図❶)したらどうなるでしょうか。
R1のデフォルトルートはR2なので、パケットはR2に送られます(図❷)。次に、R2ではどうなるでしょうか。R2のネットワークには5.5.5.5のセグメントは存在しません。よって、R2のルーティングテーブルを見て、デフォルトルートであるR1にパケットを送り返します(図❸)。こうしてループが発生するのです。

f:id:seeeko:20210707054727p:plain