ネットワークスペシャリスト試験過去問

このブログは、Advent Calendar 2019 大國魂(ITブログ)の17日目です。

 

ネットワークスペシャリストの試験を5年ぐらい受験しているのですが、なかなか受かりませんが、過去問を結構勉強して知見がたまってきたので、公開したいと思います。

 

平成29年 午後1 問3 設問3(4)

めちゃくちゃピンポイントですが、この問題を取り上げてみます。以下(4)の問題分だけ引用してみます。

本文中の下線⑤について、経路のループを防止するために必要な経路制御を40字以内で述べよ。

下線⑤前後の文章は以下

I主任:そうですね。そういえば一点注意が必要です。経路情報の再配布を行うときは、経路のループを防止しなければいけません

Oさん:わかりました。⑤経路のループを防止する経路制御を行います。

 再配布されるときの状態としては以下画像のような感じです。

R2とR3が同じASで、R4とR5が同じASです。下図だとちょっとわかりずらいので、念のため。

f:id:TKCman:20191121135412p:plain

③と⑥が再配布している場所です。⑥の再配布をしてしまうことで
問題がおきてしまうというのがIPAの回答でした。

IPAの回答

eBGPからOSPFへ再配布された経路を再びeBGPへ再配布しない

というものです。

 

ループが実際におきるところは

R7のところです。

R7がR8から受け取ったサーバの経路情報(7.7.7.7)とR5から再配布で戻ってきたサーバの経路情報(7.7.7.7)を比べて、R5のほうが勝ってしまいます。

f:id:TKCman:20191121140857p:plain

特に深く考えないでいるとR8からきたルートのほうが強いんじゃないかと思ってしまいますが、OSPF→BGPに再配布された入ってきたルート(最初の図の⑥)のメトリックが、R8からきたルートのメトリックより高いことがあるというのがポイントだと思います。(たぶん高くなると思います。すいません、たぶんで。R5のルートのほうがメトリック高くないとループがおきない→つまり、問題の条件が起きえない。)

R5とR8で動いているのがどんなIGP(ripv2、EIGRP、OSPF)でも起こりえるようなループなのではないかと思われます。

そのため、下図のようなループがおきます。

f:id:TKCman:20191121141350p:plain

⑫以降は、R1、R2、R4、R7、R5、R3のルータでループし続けます。(TTLがなくなるまで)

IPAの回答を実際の機器設定まで落とし込めるか?

OSPFからBGPに再配布してきたルートのメトリック設定する方法をちゃんと探してみました。上のほうで、たぶんと言ってしまいましたが、以下設定とかがありそうな設定かと思います。

                                             シナリオ 2

network コマンドか redistribute コマンドのいずれかによって)BGP に挿入されたルートが IGP(RIP または EIGRP、もしくは OSPF)を使用している場合、MED のメトリック値は IGP のメトリックから受け継ぎ、ルートはこの MED を使用して eBGP ネイバーにアドバタイズされます。

このシナリオでは、次のネットワーク構成を使用しています。

f:id:TKCman:20191119173651p:plain

~途中のconfigとか省略~

R2 では RIP と BGP の両方が実行されています。 show ip bgp コマンドを実行すると、プレフィックス 10.0.0.0 ネットワークのメトリックは 1 になっていることに気付きます。この値は、RIP から受け継いだものです。

R2 の出力結果は、次のとおりです。f:id:TKCman:20191119174200p:plain

しかし、eBGP を実行中の R3 には、IGP から受け継いだ MED 値に基づいてネットワークがアドバタイズされています。 この例では RIP です。 プレフィックス 10.0.0.0 には、RIP のメトリック値 1 の IGP MED 値がアドバタイズされます。

これは、次の出力結果で確認できます。

f:id:TKCman:20191119174314p:plain

 

 https://www.cisco.com/c/ja_jp/support/docs/ip/border-gateway-protocol-bgp/112965-bgpmed-attr-00.html

 

ここで、再度IPAの回答を確認してみます。

eBGPからOSPFへ再配布された経路を再びeBGPへ再配布しない

別解としては、シスコのサイトの方法を応用した「OSPFからeBGPへ再配布するときメトリックをもとルートよりも大きい値にする。」とかでもよいきがします。

あと、ルートにタグをつけてタグ付いているルートは再配布で戻さないとかがシスコのルータの技とかでありますが、それだとシスコonlyっぽくなってしまうので、ちょっと違う感じがします。

タグつける方法

https://www.infraexpert.com/study/routecontrol16.html

回答の「再び…再配布しない」に含まれるといえば含まれるので、タグつける方法がIPAの回答のもとになった設定かもしれないです。

あとAWSと接続するときの実際のciscoのconfigは、networkコマンドで渡していて、再配布ではないですが、network コマンドか redistribute コマンドのいずれかによってBGP に挿入されたルートのメトリックが…とcisco公式サイトに書いてあるので、netwrokコマンドか再配布(redistribute)かは気にしなくてもいいのかもしれないです。(以下の引用参照して下さい。networkコマンドのところ、デフォゲ渡しているが、細かく渡したいルート指定したかったら、network 192.168.・・・とか書けばよい)

router bgp YOUR_BGP_ASN
neighbor 169.254.255.1 remote-as 7224
neighbor 169.254.255.1 activate
address-family ipv4 unicast
neighbor 169.254.255.1 remote-as 7224
neighbor 169.254.255.1 default-originate
neighbor 169.254.255.1 activate
network 0.0.0.0

https://docs.aws.amazon.com/ja_jp/vpc/latest/adminguide/Cisco.html

 

azureとかのbgp接続もnetworkコマンドで設定しているので、問題作成した人はどのようにこの問題を作ったかが気になります。

set protocol bgp <Edit>65521</Edit>
set enable
set hold-time 30
set neighbor <Edit>192.168.10.142</Edit> remote-as <Edit>65516</Edit>
set neighbor <Edit>192.168.10.142</Edit> enable
set neighbor <Edit>192.168.10.142</Edit> hold-time 30
set neighbor <Edit>192.168.10.142</Edit> ebgp-multihop 2
set ipv4 neighbor <Edit>192.168.10.142</Edit> activate
set ipv4 network <Edit>192.168.127.0/24</Edit> weight 100

https://qiita.com/yotan/items/367be1a8390713306b5e

 

過去問のBGPの設定がわかりそうな図は下図です。

f:id:TKCman:20191219160735p:plain


 

 

 

◇ ◇ ◇

ネットワークスペシャリストの試験でルーティングの問題は、ちょっと珍しい気がするのでとりあげてみました。

この問題は、色々そぎ落としすぎてよくわからない感じになってしまっている気がしますが、、ネットワークスペシャリストの試験のIPsecの問題とかはすごく勉強になるので、勉強してみるのもいいかもしれません。