6.10.2011

OSPFのルーティングテーブル操作




図のようなNW構成になってます。
マルチエリアのOSPFでR4からは
LOOPBACK1をArea1の中にRedistributeしてます。
OSPFのネットワークとしては正常に動作しているとします。

ちなみにルーティングテーブル。
R1#show ip route os
O E2 192.168.40.0/24 [110/20] via 172.16.123.3, 00:06:30, Serial0/0
[110/20] via 172.16.123.2, 00:06:30, Serial0/0
172.16.0.0/24 is subnetted, 2 subnets
O IA 172.16.234.0 [110/65] via 172.16.123.2, 00:06:36, Serial0/0
[110/65] via 172.16.123.3, 00:06:36, Serial0/0

R2#show ip route os
O E2 192.168.40.0/24 [110/20] via 172.16.234.4, 00:08:13, Vlan1

R3#show ip route os
O N2 192.168.40.0/24 [110/20] via 172.16.234.4, 00:08:36, Vlan1

R4#show ip route os
172.16.0.0/24 is subnetted, 2 subnets
O IA 172.16.123.0 [110/65] via 172.16.234.2, 00:08:50, Vlan1
[110/65] via 172.16.234.3, 00:08:50, Vlan1

R2とR3のrouter idはそれぞれ2.2.2.2と3.3.3.3です。
R2でshow ip route 192.168.40.1を見ると
E2経由で貰ってきてます。
R3でshow ip route 192.168.40.1を見ると
N2経由で貰ってきてます。

R2でもN2で貰いたいんだけどって言われたら、
どうしますか?っていうのが問題。

Area1はNSSAなので、外部ルートを受け付けますから、
Type7のLSAを生成して、エリア内に流します。
R2とR3はABRなので、Type7をType5に変換してA0に流します。

しかし、ABRのうち、Type7⇒Type5変換を行うのは
一台だけなので、R2は変換を行いません。
これはなぜかというと、変換するのはルータIDの大きい方と
仕様で決められているからです。

ということで、R2にはR1経由で貰ってきているE2ルートと、
R4経由で貰ってきているN2ルートの両方が乗ってきているわけですが、
LSAの状態を確認してみると...

R2#show ip os database nssa-external

OSPF Router with ID (2.2.2.2) (Process ID 1)

Type-7 AS External Link States (Area 1)

LS age: 1698
Options: (No TOS-capability, Type 7/5 translation, DC)
LS Type: AS External Link
Link State ID: 192.168.40.0 (External Network Number )
Advertising Router: 4.4.4.4
LS Seq Number: 80000002
Checksum: 0xBF88
Length: 36
Network Mask: /24
Metric Type: 2 (Larger than any link state path)
TOS: 0
Metric: 20
Forward Address: 172.16.234.4
External Route Tag: 0

R2#sho ip os da external

OSPF Router with ID (2.2.2.2) (Process ID 1)

Type-5 AS External Link States

Routing Bit Set on this LSA
LS age: 1668
Options: (No TOS-capability, DC)
LS Type: AS External Link
Link State ID: 192.168.40.0 (External Network Number )
Advertising Router: 3.3.3.3
LS Seq Number: 80000001
Checksum: 0x74E2
Length: 36
Network Mask: /24
Metric Type: 2 (Larger than any link state path)
TOS: 0
Metric: 20
Forward Address: 172.16.234.4
External Route Tag: 0

同じメトリックでもらってきてますね。
これまた仕様で、N2とE2で経路を貰ってきてて、そのメトリックが同一の時はE2を優先するので
E2が選ばれてしまっているわけです。

だけどこれがヤダ、N2で見えたい!って言われたらどうするかと。
日々の設計業務だったら、弊社ではそんなこと知らんがな的にやり過ごそうかってところだけど、
(いや嘘です、真摯に対応します)
CCIEの試験ででちまったらどうしようもないと。
プロクターに知らんがな!って言おうとwhat!? シランガナ!?とか言われそうな勢い。

さて、本題に戻ります。
これを考えるときに必要なのは、どういう時にOSPFがトラフィックを流すんですか
っていうことを思い出すひらめきです。

OSPFはLSA内のforwarding addressがNon-zeroの場合に、
トラフィックを流すという仕様があります。

じゃ、zeroにしてやれば流れないじゃんか!
ってことで、LSAのforwarding addressをゼロにしてやればいいんだけど、
どうやって設定するんだって話です。

なんとまあ業務で使わなさそうなコマンドで解決できます。
R3のospf configurationプロセスの下で
nssa 1 translate type7 suppress-faコマンドを打ちます。

R3(config-router)#area 1 nssa translate type7 suppress-fa

打ってみました。

さて、R2のLSAを確認してみます。
R2#show ip os database nssa-external

OSPF Router with ID (2.2.2.2) (Process ID 1)

Type-7 AS External Link States (Area 1)

Routing Bit Set on this LSA
LS age: 196
Options: (No TOS-capability, Type 7/5 translation, DC)
LS Type: AS External Link
Link State ID: 192.168.40.0 (External Network Number )
Advertising Router: 4.4.4.4
LS Seq Number: 80000003
Checksum: 0xBD89
Length: 36
Network Mask: /24
Metric Type: 2 (Larger than any link state path)
TOS: 0
Metric: 20
Forward Address: 172.16.234.4
External Route Tag: 0

R2#sho ip os da external

OSPF Router with ID (2.2.2.2) (Process ID 1)

Type-5 AS External Link States

Routing Bit Set on this LSA
LS age: 78
Options: (No TOS-capability, DC)
LS Type: AS External Link
Link State ID: 192.168.40.0 (External Network Number )
Advertising Router: 3.3.3.3
LS Seq Number: 80000003
Checksum: 0x1EE2
Length: 36
Network Mask: /24
Metric Type: 2 (Larger than any link state path)
TOS: 0
Metric: 20
Forward Address: 0.0.0.0
External Route Tag: 0

Type7LSAの方は、変化がありません。
Type5の方は、FAをsuppressしましたので、どうなっているかというと。
0.0.0.0になっています。
つまりforwarding addressがzeroです。

forwarding addressがzeroの場合はOSPFの経路としては認めてもらえないので、
routing tableには乗らないはずですね。
R2でshow ip routeをみてみましょう。

R2#sh ip route os
O N2 192.168.40.0/24 [110/20] via 172.16.234.4, 00:06:29, Vlan1
R2#

見事にN2からもらうようになりました!


知らんがなッ!!


0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...