あんたいとる (original) (raw)

トラブルの分類

ネイバーが確立されない

考えられる原因

ネイバー確立関連の確認コマンド

show running-config | section router ospf

R2#sh run | s router ospf router ospf 1 network 10.1.2.2 0.0.0.0 area 0 network 10.2.7.2 0.0.0.0 area 1

show ip ospf neigbors

R1# show ip ospf neighbor

Neighbor ID Pri State Dead Time Address Interface 10.1.23.2 1 FULL/BDR 00:00:37 10.1.12.2 GigabitEthernet1/0

show ip protocols
show ip ospf interfaces brief

R1# show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Gi0/0 1 1 10.1.1.1/24 1 DR 0/0 Gi1/0 1 1 10.1.12.1/24 1 DR 1/1

show ip ospf interfaces INT_NAME
show ip ospf
不適切なACL
隣接関係のデバッグコマンド

ルーティング情報が正しくない

考えられる原因

ルーティング関連の確認コマンド

show ip route ospf
show ip route NETWORK SUBNET
show ip ospf database
show ip ospf
show ip protocols
不適切なACLが適用されていないか確認

参考資料

書籍

シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 [対応試験]コンセントレーション試験 ENARSI(300-410)

CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide (English Edition)

動画

www.udemy.com

個人的な学習メモです。試験の範囲を網羅しているわけではないので注意してください。
網羅的に学習したい場合は、参考資料欄の情報を確認してください。

OSPF(基本)

特徴

OSPFで使用されるパケット

パケット名 説明
Hello ネイバーの検出と関係維持のために使用される。
Database Description(DBD or DDP) LSDPの内容を記述するために使用される。
リンクステート要求(LSR) 詳細なLSAの問合せに使用される。
リンクステートアップデート(LSU) LSAを送信するために使用される。
リンクステート確認応答(LSAck) LAUを受信した際の受け取り確認に使用される。

ネイバー形成までのステート遷移

ステート 説明
Down ネイバー関係の初期状態。helloパケットを受信していない状態。
Attempt ノンブロードキャストマルチアクセス(NBMA)ネットワークでのみ遷移する状態。helloパケットを送信しているが、まだ何も受信していない状態。
Init 他のルータからhelloパケットを受信したが、双方向通信が確立していない状態。
2-Way 双方向通信が確立された状態。DRまたはBDRが必要な場合はこの状態で選択が行われる。
ExStart DBDパケットを交換するためのマスターとスレーブを選択している状態。
Exchange DBDパケットを好感してお互いのLSDBを同期させている状態。
Loading LSRパケットを送信して最新のLSAをLSUパケットとして取得しているjy。
Full 隣接関係(アジャセンシー)を築きLSDBの同期が完了した状態。

ネイバー形成に必要な条件

マルチアクセス環境でのOSPF

DR(代表ルータ)とBDR(バックアップ代表ルータ)

マルチアクセス環境(イーサネットなど)では、全ルータがそれぞれLSAを交換するためルーティングプロトコルトラフィックが増加してしまう。
トラフィックを軽減させる仕組みとしてDRとBDRという役割のルータが選出される。
DRとBDR以外のルータ(DROther)は、DRとBDRとのみ隣接関係(アジャセンシー)を確立することでトラフィックが軽減される。

DRとBDRの選出基準

以下の基準で選出される。

※DRにしたくない(DROtherにしたい)ルータで priorityを 0にすることで必ずDROtherになります。

Priority値について

ルータIDの決定順位

  1. router-idコマンドによる手動設定
  2. Loopbackインターフェースに設定あれている最大IPアドレス
  3. 物理インターフェースに設定されている最大IPアドレス

OSPFのネットワークタイプ

ネットワークタイプ DRの有無 Helloタイマー Deadタイマー Helloの宛先
Broadcast 10 40 マルチキャスト 224.0.0.5
NBMA(Non-Broadcast MultiAccess) 30 120 ユニキャスト
Point to Point × 10 40 マルチキャスト 224.0.0.5
Point to Multipoint × 30 120 マルチキャスト 224.0.0.5
Point to Multipoint Non-Broadcast × 30 120 ユニキャスト

認証機能

OSPFの認証の種類

認証の方式

マルチエリアOSPF

LSAのタイプ

LSAタイプ 届く範囲 説明 生成するルータ
ルータLSA(LSA Type1) エリア内 同一エリア内の他ルータに自身のインターフェースのリンク数、アドレスなど詳細情報を伝える。 全ルータ
ネットワークLSA(LSA Type2) エリア内 DRのルータID、アドレス。隣接ルータのリストを伝える。 DR
サマリーLSA(LSA Type3) エリア内 他エリアのネットワーク情報を伝える。 ABR
ASBRサマリーLSA(LSA Type4) エリア内 ASBRのルータID、ASBRまでのメトリックを伝える。 ABR
AS外部LSA(LSA Type5) ドメイン全体 OSPFドメイン外の経路情報を伝える。 ASBR
NSSA外部LSA(LSA Type7) NSSAエリア内 NSSA内のASBRがOSPFドメイン外の経路情報を伝える。 ASBR

各エリアの特徴

エリア名 LSAタイプ 説明
バックボーンエリア 1,2,3,4,5 必須のエリア。他のエリアはバックボーンエリア(エリア0)に接している必要がある。
標準エリア エリア内 1,2,3,4,5 | エリア間のルートおよび外部ルートが個別に通知される。
スタブエリア 1,2,3 外部ルート(タイプ5 LSA)を受信せず、ABRによりスタブエリアの内部へデフォルトルートが通知される。
完全スタブエリア 1,2,3(デフォルトルートのみ) 外部ルートだけではなくエリア間ルート(LSA Type3)も受信しない。デフォルトルートのみが通知される。
NSSA 1,2,3,7 ASBRが配置可能なスタブエリア。外部ルート(LSA Type5 )はNSSA内に流れない。デフォルトルートを伝播するには設定(default information-originate)が必要。
トータリーNSSA 1,2,3(デフォルトルートのみ),7 ASBRが配置可能なトータリースタブエリア。デフォルトルートの設定をしなくても伝播される(LSA Type3により)

パス選択

宛先ネットワークへ向かうために使用するインターフェースのコストの和により最短経路を計算する。

コストの計算

100,000,000 ÷ 帯域幅bps)で算出される。

コストの変更方法

経路集約

手動集約

OSPFは、同一エリア内のルータは同一のLSDBを持つため、同一のエリア内ではネットワークの集約はできない。
エリア間ルートの集約はABRで、外部ルートの集約はASBRで行われる。
エリア間を集約したルートはLSA Type3で送信され、外部ルートの集約ルートはLSA Type5で送信される。

デフォルトルート

スタブエリアなどは自動的にエリア内にデフォルトルートを伝播することができるが、バックボーンエリアや標準エリアでもデフォルトルートを伝播させることができる。

Virtual Linkの設定が必要なケース

Virtual Linkの注意点

OSPF(設定)

OSPF基本設定

設定例の英大文字の箇所は、各設定値に置き換えが必要。
また、モードへの移行部分は省略している場合あり。

router(config)# router ospf PROCESS_ID router(config-router)# router-id A.B.C.D ※OSPFを有効にするインターフェースの指定(2通りの方法がある) ※networkコマンドで設定 router(config-router)# network INTERFACE_IP WC_MASK area AREA_ID or ※インターフェースモードで設定 router(config)# interface INT_NAME router(config-if)# ip ospf PROCERSS_ID area AREA_ID

プライオリティの設定(0~255の値を設定)

router(config)# interface INT_NAME router(config-if)# ip ospf priority PRIORITY

パッシブインターフェース設定

router(config)# router ospf PROCESS_ID router(config-router)# passive-interface INT_NAME or router(config-router)# passive-interface default router(config-router)# no passive-interface INT_NAME

ルート集約

エリア間ルートの集約(ABRで設定)

router(config)# router ospf PROCESS_ID router(config-router)# area AREA_ID NEWWORK SUBNET cost コスト値

外部ルート集約(ASBRで設定)

router(config)# router ospf PROCESS_ID router(config-router)# summary-address NEWWORK SUBNET

デフォルトルート

router(config)# router ospf PROCESS_ID router(config-router)# default-information originate [always]

スタブ/トーラリースタブ/NSSA/トータリーNSSA

※スタブまたはNSSAの設定(エリア内の全ルータで行う) router(config)# router ospf PID router(config-router)# area AREA_ID <stub | nssa>

※トータリースタブまたはトータリーNSSAの設定(ABRでのみ行う) router(config)# router ospf PID router(config-router)# area AREA_ID <stub | nssa> no-summary

Virtual Link設定

※指定するAREA_IDはトランジットエリアのものを設定。ルータIDは対向のルータのものを設定。 router(config)# router ospf PID router(config-router)# area AREA_ID virtual-link ROUTER-ID

OSPFその他の設定

認証

※インターフェース認証(平文) router(config)# interface INT_NAME router(config-if)# ip ospf authentication router(config-if)# ip ospf authentication-key PASSWORD

※インターフェース認証(MD5) router(config)# interface INT_NAME router(config-if)# ip ospf authentication message-digest router(config-if)# ip ospf authentication-key KEY_ID md5 KEY_STRING

※エリア認証(平文) router(config)# router ospf PID router(config-router)# area AREA_ID authentication ※パスワードの設定は各インターフェースモードで設定 router(config)# interface INT_NAME router(config-if)# ip ospf authentication-key PASSWORD

※エリア認証(MD5) router(config)# router ospf PID router(config-router)# area AREA_ID authentication message-digest ※パスワードの設定は各インターフェースモードで設定 router(config)# interface INT_NAME router(config-if)# ip ospf authentication-digest-key KEY_ID md5 KEY_STRING

※Virtual-link認証(平文) router(config)# router ospf 100 router(config-router)# area 0 authentication router(config-router)# area 1 virtual-link 1.1.1.1 authentication-key cisco

※Virtual-link認証(MD5) router(config)# router ospf 100 router(config-router)# area 0 authentication message-digest router(config-router)# area 1 virtual-link 1.1.1.1 authentication-digest-key 1 md5 cisco

コストの変更

※インターフェースのコスト値変更 router(config)# interface INT_NAME router(config-if)# ip ospf cost COST_VALUE

※bandwidth値変更 router(config)# interface INT_NAME router(config-if)# bandwidth 帯域幅(Kbps)

※コスト計算式の分子を変更 router(config)# router ospf PROCESS_ID router(config-router)# auto-cost reference-bandwidth 帯域幅(Mbps)

Helloタイマー/Deadタイマー

router(config-if)# ip ospf hello-interval SEC router(config-if)# ip ospf dead-interval SEC

ネットワークタイプの変更

router(config)# interface INT_NAME router(config-if)# ip network < broadcast | non-broadcast | point-to-multipoint [ non broadcast] | point-to-point]>

MTU設定とMTU不一致検出の無効化

router(config)# interface INT_NAME router(config-if)# mtu router(config-if)# ip ospf mtu-ignore

参考資料

書籍

シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 [対応試験]コンセントレーション試験 ENARSI(300-410)

CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide (English Edition)

動画

www.udemy.com

個人的な学習メモです。試験の範囲を網羅しているわけではないので注意してください。
網羅的に学習したい場合は、参考資料欄の情報を確認してください。

EIGRPv6(基本)

特徴

EIGRPv6で使用されるパケット

パケット名 送信元 宛先 説明
Hello Link-local FF02::A ネイバー探索とキープアライブ。
Acknowledgment Link-local Link-local 経路情報の更新のために使用される。
Query Link-local FF::A トポロジ変更イベント中のルート情報の要求。
Reply Link-local Link-local Queryパケットへの応答。
Update Link-local Link-local アジャセンシーの形成 。
Update Link-local FF02::A トポロジーの変更。

EIGRPv6(設定)

設定モード

ClassicモードとNamedモードの 2通りの設定方法がある。
Classicモードは、設定箇所が routerコンフィグレーションモードとインターフェースコンフィグレーションモードに分かれていてわかりにくかった。
Namedモードでは、1箇所ですべて設定できるようになっている。

EIGRPv6基本設定

設定例の英大文字の箇所は、各設定値に置き換えが必要。
また、モードへの移行部分は省略している場合あり。

Classicモードの例

router(config)# ipv6 unicast-routing router(config)# ipv6 router eigrp ASN router(config-router)# eigrp router-id A.B.C.D

router(config)# interface INT_NAME router(config-if)# ipv6 eigrp ASN

Namedモードの例

router(config)# ipv6 unicast-routing router(config)# router eigrp NAME router(config-router)# address-family ipv6 unicast autonomous-system ASN router(config-router-af)# eigrp router-id A.B.C.D

EIGRPその他の設定

ルート集約

IPv6にはクラスフルルーティングなどの概念がないため自動集約は不可能。
集約はIPv4と同じルールを使用してインターフェースごとに手動で設定される。

Classicモードの例

router(config)# interface INT_NAME router(config-if)# ipv6 summary-address eigrp ASN IPv6-PREFIX/PREFIX-LENGTH

Namedモードの例

router(config-router-af)# af-interface INT_NAME router(config-router-af-interface)# summary-address IPv6-PREFIX/PREFIX-LENGTH router(config-router-af-interface)#exit-af-interface

デフォルトルートのアドバタイズ

EIGRPv6トポロジーにデフォルトルートをアドバタイズするには、::/0 をインターフェースモードでサマリーアドレスとして設定する。

Classicモードの例

router(config)# interface INT_NAME router(config-if)# ipv6 summary-address eigrp ASN ::/0

Namedモードの例

router(config-router-af)# af-interface INT_NAME router(config-router-af-interface)# summary-address ::/0 router(config-router-af-interface)#exit-af-interface

EIGRPv6トラブルシューティング

基本コマンド

Classicなコマンド

#! ネイバーの確認

show ipv6 eigrp neighbors

#! インターフェースのUp/Down確認

show ipv6 interface brief

#! AS番号の確認

show ipv6 protocols

#! EIGRPが有効なインターフェースの確認

show ipv6 eigrp interfaces

#! EIGRPで学習しているルート情報

show ipv6 route eigrp [IPv6_ADDRESS/PREFIX]

#! EIGRPに関係する設定確認

show run | se router eigrp

新しいコマンド

以下はIPv6の例だが、ipv4でも使用可能。
ipv6の部分をipv4に変えるだけ。

show eigrp address-family ipv6 neighbors

show eigrp address-family ipv6 interfaces

show eigrp address-family ipv6 topology

参考資料

書籍

シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 [対応試験]コンセントレーション試験 ENARSI(300-410)

CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide (English Edition)

動画

www.udemy.com

トラブルの分類

ネイバーが確立されない

考えられる原因

原因別確認コマンド

EIGRP関連の基本の確認コマンド
show running-config | section router eigrp

EIGRPの設定確認。

R2#sh run | s router eigrp router eigrp 1 network 10.1.2.2 0.0.0.0 network 10.2.7.2 0.0.0.0

show ip eigrp neigbors

ネイバーの確認。

R2#show ip eigrp neighbors EIGRP-IPv4 Neighbors for AS(1) H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 10.2.7.7 Et0/1 13 00:17:12 1 100 0 17 0 10.1.2.1 Et0/0 11 00:20:42 421 2526 0 44

show ip eigrp interfaces

EIGRPが有効になっているインターフェースの確認。

R2#sh ip eigrp interfaces EIGRP-IPv4 Interfaces for AS(1) Xmit Queue PeerQ Mean Pacing Time Multicast Pending Interface Peers Un/Reliable Un/Reliable SRTT Un/Reliable Flow Timer Routes Et0/0 1 0/0 0/0 421 0/2 2104 0 Et0/1 1 0/0 0/0 1 0/2 50 0

show ip eigrp topology

EIGRPトポロジー確認。
FD、RDの値確認。

R2#show ip eigrp topology EIGRP-IPv4 Topology Table for AS(1)/ID(10.1.2.2) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status

P 10.1.5.0/24, 1 successors, FD is 307200 via 10.1.2.1 (307200/281600), Ethernet0/0 P 10.6.7.0/24, 1 successors, FD is 307200 via 10.2.7.7 (307200/281600), Ethernet0/1 P 10.7.0.0/24, 1 successors, FD is 307200 via 10.2.7.7 (307200/281600), Ethernet0/1 P 10.3.7.0/24, 1 successors, FD is 307200 via 10.2.7.7 (307200/281600), Ethernet0/1 P 10.2.7.0/24, 1 successors, FD is 281600 via Connected, Ethernet0/1 P 10.1.3.0/24, 1 successors, FD is 307200 via 10.1.2.1 (307200/281600), Ethernet0/0 P 10.1.2.0/24, 1 successors, FD is 281600 via Connected, Ethernet0/0 P 10.1.6.0/24, 1 successors, FD is 307200 via 10.1.2.1 (307200/281600), Ethernet0/0 P 10.4.7.0/24, 1 successors, FD is 307200 via 10.2.7.7 (307200/281600), Ethernet0/1 P 10.1.4.0/24, 1 successors, FD is 307200 via 10.1.2.1 (307200/281600), Ethernet0/0 P 10.5.7.0/24, 1 successors, FD is 307200 via 10.2.7.7 (307200/281600), Ethernet0/1

インターフェースの状態

show ip interface brief コマンドで確認。
Statusと Protocolが upになっていること。

R2#sh ip int bri | e una Interface IP-Address OK? Method Status Protocol Ethernet0/0 10.1.2.2 YES manual up up Ethernet0/1 10.2.7.2 YES manual up up

AS番号の不一致

sh ip protocols コマンドで確認。
以下のコマンド実行例の①の箇所。

R2#sh ip protocols | be eigrp Routing Protocol is "eigrp 1" ←① Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP-IPv4 Protocol for AS(1) ←① Metric weight K1=1, K2=0, K3=1, K4=0, K5=0 ←② Soft SIA disabled NSF-aware route hold timer is 240 Router-ID: 10.1.2.2 Topology : 0 (base) Active Timer: 3 min Distance: internal 90 external 170 Maximum path: 4 Maximum hopcount 100 Maximum metric variance 1

Automatic Summarization: disabled Maximum path: 4 Routing for Networks: 10.1.2.2/32 10.2.7.2/32 Passive Interface(s): Passive Interface(s): ←③ Ethernet0/1 Routing Information Sources: Gateway Distance Last Update 10.2.7.7 90 00:27:46 10.1.2.1 90 00:00:18 Distance: internal 90 external 170

K値の不一致

show ip protocolsで確認。 上記コマンド実行例の②の箇所。

サブネットの不一致

show running-config interface INT_NAMES コマンドで確認。

R2#sh run int e0/0 Building configuration...

Current configuration : 79 bytes ! interface Ethernet0/0 no switchport ip address 10.1.2.2 255.255.255.0 end

パッシブインターフェースの設定

show ip protocolsで確認。 上記コマンド実行例の③の箇所。

認証設定の不一致

show running-config interface INT_NAMESで確認。

R3#show run interface e0/0 Building configuration...

Current configuration : 162 bytes ! interface Ethernet0/0 no switchport ip address 10.1.3.3 255.255.255.0 ip authentication mode eigrp 1 md5 ip authentication key-chain eigrp 1 EIGRP_KEY end

認証キーの設定は、show key chainで確認。

R3#show key chain Key-chain EIGRP_KEY: key 1 -- text "Cisco" accept lifetime (always valid) - (always valid) [valid now] send lifetime (always valid) - (always valid) [valid now]

不適切なACL

show ip intraface INT_NAMES でインターフェースに適用されているACLを確認。
show access-list でACLの内容を確認。

タイマー

show ip eigrp interface detail INT_NAMES で確認。

R3#sh ip eigrp interfaces detail e0/0 EIGRP-IPv4 Interfaces for AS(1) Xmit Queue PeerQ Mean Pacing Time Multicast Pending Interface Peers Un/Reliable Un/Reliable SRTT Un/Reliable Flow Timer Routes Et0/0 1 0/0 0/0 8 0/2 50 0 Hello-interval is 5, Hold-time is 15 Split-horizon is enabled Next xmit serial Packetized sent/expedited: 10/0 Hello's sent/expedited: 666/3 Un/reliable mcasts: 0/9 Un/reliable ucasts: 13/4 Mcast exceptions: 0 CR packets: 0 ACKs suppressed: 0 Retransmissions sent: 2 Out-of-sequence rcvd: 0 Topology-ids on interface - 0 Authentication mode is md5, key-chain is "EIGRP_KEY" Topologies advertised on this interface: base Topologies not advertised on this interface:

ルーティング情報が正しくない

考えられる原因

原因別確認コマンド

networkコマンドの不備
想定外のルートを学習している

再配送(redistribute)などにより、想定外にAD値が高い/低いルートを学習している場合がある。

ルートフィルタリング
スプリットホライズン

スプリットホライズンが有効になっているためにルートを学習できない場合がある。
(DMVPNのようなネットワーク設計の場合など)
スプリットホライズンが有効になっているかは、show ip interface INT_NAMESで確認できる。

参考資料

書籍

シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 [対応試験]コンセントレーション試験 ENARSI(300-410)

CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide (English Edition)

動画

www.udemy.com

個人的な学習メモです。試験の範囲を網羅しているわけではないので注意してください。
網羅的に学習したい場合は、参考資料欄の情報を確認してください。

EIGRP(基本)

特徴

用語

用語 説明
サクセサ 最適ルートのネクストホップルータのこと。FDが最小となる。
フィージブルサクセサ フィージブル条件を満たすバックアップルータ。ルーティングループが発生しないことが保証されるのでバックアップルートになる
サクセサルート 宛先NWに対して最小パスメトリックとなるルート。最適ルート。
FD(Feasible Distance) 自ルータから宛先NWまでの合計メトリック。
RD(Reported Distance) ネイバールータから宛先NWまでの合計メトリック
フィージブル条件 フィージブルサクセサになるための条件。「FD > RD」を満たしていること。

EIGRPで使用されるパケット

パケット名 説明
Helloパケット ネイバーの検出とネイバーがいなくなった時の検出に使用される。
Updateパケット 経路情報の更新のために使用される。
Queryパケット 経路情報を問い合わせるために使用される。
Requestパケット 1つ以上のネイバーから特定の情報を取得するために使用される。
Replyパケット Queryパケットの応答として使用される。

ネイバー形成に必要なパラメータ

次のパラメータが一致している必要がある。

メトリックの計算(計算式とK値の初期値)

メトリック = [ K1 * 帯域幅 + (K2 * 帯域幅) / (256 - 負荷) + K3 * 遅延] * 256

K値のデフォルトは、K1 = 1、K2 = 0、K3 = 1、K4 = 0、K5 = 0

経路集約

EIGRPでは経路の自動集約と手動集約の両方を使用可能。

自動集約

IOSのバージョンによりデフォルトで自動集約有効なのか無効なのかが変わる。
※IOS15.0以降からデフォルトで自動集約無効(no auto-summary)

自動集約が有効な場合は、クラスフルなネットワーク境界で自動集約される。

手動集約

全ルータのインターフェースで設定可能。
(比較:OSPFの場合は、ABRまたはASBRのみで設定可能)

認証機能

設定モードにより設定できる暗号化方式が決まっている。
Classicモードでは、MD5のみ対応。NamedモードではMD5に加えてSHA256にも対応。

ルータID

その他の機能など

パッシブインターフェース

パッシブインターフェースの設定をすることでルーティングアップデートを制御できる。 そのインターフェースで Helloパケットの送信をやめるだけでなく、Helloパケットの着信も無視するためネイバーにならなくなる。

スタブルーティング

ハブ&スポーク構成で、ハブ側のNWがダウンした場合でもデフォルトではスポーク側のルータに対してQueryパケットを送信する。
フィージブルサクセイサが存在しない場合の話)
スポーク側に別の経路を問い合わせたところで「経路無し」の応答が返ってくるだけなのでQueryパケットを送信するだけ無駄。
このような場合、スポーク側のルータでスタブルーティング設定をしておくと、そのことをネイバーに通知するためハブ側のルータはスポーク側のルータにQueryパケットを送信しなくなる。

スタブルーティングで設定できるオプション
パケット名 説明
connected ルータに直接接続しているルートのみアドバタイズする。
receive-only ルーティングアップデートの受信のみ行う。
redistributed 再配送された外部ルートのみアドバタイズする。
static スタティックルートの情報のみアドバタイズする。
summary 集約ルートのみをアドバタイズする。

スプリットホライズン

経路情報を受信したインターフェースからは、同じ経路情報を送信しない機能。
DMVPNでNBMA( Non-Broadcast Multiple Access )ネットワーク構成となっている場合など、スプリットホライズンを無効にしないとEIGRPでルートをアドバタイズできないケースがある。

不等コストロードバランシング

等コストロードバランシング機能(デフォルトで4ルートまで)だけではなく、不等コストロードバランシング機能も備えている。
varianceの値を設定することで、最適経路であるサクセサの何倍のFD値までをルーティングテーブルに登録するか決めることができる。
ただし、フィージブルサクセサになっていないルータは倍率以下のFD値でもルーティングテーブルの登録対象外になる。

障害時の動作

障害の検知

Helloタイマー:5秒間隔で送信(低速インターフェース(T1以下)では 60秒間隔)
Holdタイマー:15秒(低速インターフェースでは 180秒)

Holdタイマーが 0に達するとネイバーが到達不能と判断する。
フィージブルサクセサが存在する場合は、即座にフィージブルサクセサの経路に切り替える。 存在しない場合は、全ネイバーに宛先NWへの経路を問い合わせるためのQueryパケットを送信する。

SIA(Stack in Active)

前述のQueryパケットを全ネイバーに送信したあと、ネイバーからのReplyパケットにより経路の再計算を行う。
1台でもReplyパケットを送り返してこないネイバーがいた場合、再計算を行うことができず経路がActive状態のままになってしまう。
この状態を SIA(Stack In Active)という。
SIAであると判断してからデフォルトでは3分間応答がないと、そのルータとのネイバー関係を解除する。

EIGRP(設定)

設定モード

ClassicモードとNamedモードの 2通りの設定方法がある。
Classicモードは、設定箇所が routerコンフィグレーションモードとインターフェースコンフィグレーションモードに分かれていてわかりにくかった。
Namedモードでは、1箇所ですべて設定できるようになっている。

EIGRP基本設定

設定例の英大文字の箇所は、各設定値に置き換えが必要。
また、モードへの移行部分は省略している場合あり。

Classicモードの例

router(config)# router eigrp ASN router(config-router)# network INTERFACE_IP [WC-MASK] router(config-router)# eigrp router-id A.B.C.D router(config-router)# metric weights TOS K1 K2 K3 K4 K5

※認証設定(key chain設定は別途必要) router(config)# interface INT_NAME router(config-if)# ip authentication mode eigrp ASN md5 router(config-if)# ip authentication key-chain CHAIN_NAME

Namedモードの例

router(config)# router eigrp NAME router(config-router)# address-family ipv4 unicast autonomous-system ASN router(config-router-af)# network INTERFACE_IP [WC_MASK] router(config-router-af)# eigrp router-id A.B.C.D router(config-router-af)# metric weights TOS K1 K2 K3 K4 K5

※認証設定(MD5認証の場合は別途key chain設定が必要。Sha254の場合はパスワード直接入力。 router(config-router-af)# af-interface {INT_NAME | default } router(config-router-af-interface)#authentication mode md5 router(config-router-af-interface)#authentication key-chain CHAIN_NAME or router(config-router-af-interface)#authentication mode hmac-sha-256 PASSOWRD router(config-router-af-interface)#exit-af-interface router(config-router-af)# exit-address-family

EIGRPその他の設定

パッシブインターフェース設定

Classicモードの例

router(config-router)# passive-interface INT_NAME

or router(config-router)# passive-interface default router(config-router)# no passive-interface INT_NAME

Namedモードの例

router(config-router-af)# af-interface {INT_NAME | default } router(config-router-af-interface)#passive-interface router(config-router-af-interface)#exit-af-interface

※パッシブインターフェース設定の確認 router# show ip protocols router# show ip eigrp interfaces

ルート集約

Classicモードの例

router(config)# interface INT_NAME router(config-if)# ip summary-address eigrp ASN X.X.X.X/YY

Namedモードの例

router(config-router-af)# af-interface INT_NAME router(config-router-af-interface)# summary-address X.X.X.X/YY router(config-router-af-interface)#exit-af-interface

スタブルーティング

オプション無しで設定した場合は、connectedとstaticだけが有効になる。
receive-onlyだけは他のオプションと一緒に指定することができない。

Classicモードの例

router(config-router)# eigrp stub [ connected | receive-only | redistributed | static | summary]

Namedモードの例

router(config-router-af)# eigrp stub

スプリットホライズン

Classicモードの例

router(config)# interface INT_NAME router(config-if)# no split-horizon

Namedモードの例

router(config-router-af)# af-interface INT_NAME router(config-router-af-interface)# no split-horizon router(config-router-af-interface)#exit-af-interface

不等コストロードバランシング

Classicモード

router(config-router)# variance <倍率>

Namedモード

router(config)# router eigrp NAME router(config-router)# address-family ipv4 unicast autonomous-system ASN router(config-router-af)# topology base router(config-router-af-topology)# variance <倍率>

Helloタイマー

Classicモード

router(config-if)# ip hello-interval eigrp ASN SEC router(config-if)# ip hold-time eigrp ASN SEC

Namedモード

router(config-router-af)# af-interface {INT_NAME | default } router(config-router-af-interface)#hello-interrval SEC router(config-router-af-interface)#hold-time SEC router(config-router-af-interface)#exit-af-interface

K値の変更

Classicモードの例

router(config-router)# metric weights TOS K1 K2 K3 K4 K5

Namedモードの例

router(config-router-af)# metric weights TOS K1 K2 K3 K4 K5

参考資料

書籍

シスコ技術者認定教科書 CCNP Enterprise 完全合格テキスト&問題集 [対応試験]コンセントレーション試験 ENARSI(300-410)

CCNP Enterprise Advanced Routing ENARSI 300-410 Official Cert Guide (English Edition)

動画

www.udemy.com

CTFとは

Capture The Flagの略で、情報セキュリティ技術を競う競技。

CTFの種類

さまざまな種類があるが代表的なものは以下の2つ。

著名なCTF

問題のジャンル

リバースエンジニアリング

SECCON 2018の「runme.exe」という問題が取り上げられている。
リバースエンジニアリング技術が問われ、逆アセンブラデバッグなどを利用してい解析を行うので、低レイヤの知識が必要。

暗号

SECCON 2015の「Unzip the file」という問題が取り上げられている。
古典暗号や現代暗号の暗号アルゴリズムの知識が必要。

フォレンジック

SECCON 2018の「History」という問題が取り上げられている。
必要とされる知識が多岐にわたる。
各OSのファイルシステムTCP/IPなどのネットワークなど。

Webセキュリティ

SECCON 令和CTFの「reiwaVote」という問題が取り上げられている。
Webアプリケーションとその周辺知識が必要。

ネットワーク

SECCON 2013の「Find the key!」という問題が取り上げられている。 パケット解析や各プロトコルの知識が必要。

Pwnable

SECCON 2017の「baby_stack」という問題が取り上げられている。 プログラミングの知識、プログラム解析のスキルが必要。

Misc

SECCON 2019の「Sandstorm」という問題が取り上げられている。
上記ジャンルに分類できない、その他雑多な問題。

感想など

私のような初心者でも、解説の文章を読めば何とか理解できるレベルの問題が取り上げられているので、タイトルどおりCTFの『入門』にぴったりの内容です。

今後の学習

以下で紹介する書籍で学習するのと、本書で紹介されていた入門者用のCTF(picoCTF)をやってみようと思う。

書籍紹介

私が持っている書籍の中から各ジャンルごとに役立ちそうなものを紹介します。
本書内に著者が「さらに勉強したい人に向けて」として各ジャンルのおすすめ書籍を紹介しているのですが、そこに記載されていたものと結構ダブってます。

Reversing(リバースエンジニアリング

著者が紹介している書籍で私が所持しているものはなかったが、関連しそうな書籍を何冊紹介する。
以前からこの分野に興味はあったので、購入はしているがまだ読めてない。

マルウエアの教科書 増補改訂版

リバースエンジニアリングツールGhidra実践ガイド (Compass Booksシリーズ)

Crypt(暗号関連)

こちらもかなり購入はしているがすべては読めてない。
読んだ中では、結城浩さんの「暗号技術入門 第3版」が分かりやすかった(著者のおすすめ本でもあります)

暗号技術入門 第3版 秘密の国のアリス

図解即戦力 暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書

現代暗号入門 いかにして秘密は守られるのか (ブルーバックス)

暗号技術のすべて

暗号技術 実践活用ガイド

Pythonでいかにして暗号を破るか

Forensics

おすすめ本として紹介されている「インシデントレスポンス 第3版」については、過去記事で読書メモを書いてます。shin569.hatenablog.com

また、インシデントレスポンス関連では以下も評価が良いので購入してますがこちらは未読。

詳解 インシデントレスポンス ―現代のサイバー攻撃に対処するデジタルフォレンジックの基礎から実践まで

Web

おすすめ本として紹介されている 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践 は、一度読んでるが完全には理解できてない。
CTFを実際に解きながら見返す感じで学習するのが良いと思う。

Network

一番業務で扱う分野に近いので、逆に紹介する書籍が難しい。
パケット解析という点だけに絞れば、著者がおすすめしている本もいいいが、パケットキャプチャの教科書 (Informatics&IDEA)もわかりやすかったのでおすすめ。

Pwnable(Exploit)

著者もおすすめしているが、Hacking: 美しき策謀 第2版 ―脆弱性攻撃の理論と実際は今まで読んできたセキュリティ関係の書籍の中で一番面白かった。
ただかなり前の書籍になるので今見ると少し内容が古くなっている部分があるかも。
プログラム例がperlで書かれてたりするので、pythonで書き直してみたら勉強になるかもしれません。