0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【検証】ip nhrp おまじないコマンドの存在意義

Last updated at Posted at 2024-10-07

概要

DMVPN phase3を設定する際、ip nhrp ~ というコマンドをたくさん入力します。
それぞれのコマンドは何のために必要なのか?debugを見ながら検証しました。

NHRPとは
ブロードキャスト通信ができない環境でネクストホップを解決するプロトコルです。
主にDMVPNで使用します。

↑めちゃくちゃわかりやすい!

構成

image.png

前提
・アンダーレイはRIPv2で接続、それぞれの物理IFへのpingは通る
・オーバーレイではeigrpを動作させている
・HUB(R1)とSPOKE-1(R3)はDMVPN phase3が確立できている
・SPOKE-2(R4)含め、eigrp設定済み

トンネルIFの設定
HUB(R1)
image.png

SPOKE-1(R3)
image.png


検証

SPOKE-2(R4)のトンネルIFにコマンドを追加していき、nhrpやeigrpの動作を確認します。

入力するコマンド
image.png
R3とほとんど同じです。
IPアドレスだけ"100.1.1.4"に変更します。

まずはdebugコマンドを入力
image.png

トンネルIFを作成する
image.png
カプセル化がデフォルトのpoint-to-point GREになりました。

オーバーレイとアンダーレイのアドレスを指定する
image.png

mGREでカプセル化する
image.png
GREがmultipointに変更されています。
トンネルIFがupして、eigrp helloパケットが送信され始めました。

nhrpを有効化する
image.png
nhsが見つからないため、nhrpのメッセージを送信できていません。

HUBをnhrpのnext-hop server(nhs)として指定する
image.png
nhsのオーバーレイアドレス(100.1.1.1)と通信を試みているものの、何度か失敗しています。
実際の宛先であるアンダーレイのアドレスが不明なようです。

nhsのオーバーレイとアンダーレイアドレスをマッピングする
image.png
nhrpのマッピングは成功しましたが、eigrpはupとdownを繰り返しています。
image.png
image.png

image.png
R2-R4間のキャプチャを見てみると、SPOKE-2(100.1.1.4)からeigrpマルチキャスト(224.1.1.10)宛にhelloパケットが送信できていません。
debugだとhelloパケットを送信しているように見えるのですが、届いていないみたいです。悲しい。

eigrpはhelloパケットをマルチキャスト、updateパケットをユニキャストで送信します。
ネイバを確立してお互いの情報を交換するためには、マルチキャストとユニキャスト両方を送受信できる必要があります。


マルチキャストをnhsのアンダーレイアドレスに送信する
image.png
マルチキャストとアンダーレイのマッピングが成功しました。
eigrpも安定してお互いの情報を送受信できているようです。
image.png

image.png
R2-R4間のキャプチャを見てみると、SPOKE-2(100.1.1.4)からeigrpマルチキャスト(224.1.1.10)宛にhelloパケットが送信できています。


SPOKE-SPOKEの直接通信を有効化する
image.png

eigrpの場合は、no ip split-horizon eigrp の設定が必要です。
設定か所はオーバーレイのIFであるトンネルIFです。
image.png

no ip split-horizon eigrp (AS) が正解で、no ip split-horizon は違うコマンドです。
調べてみると、何もつかない方はRIPで使用できるみたいですね。

確認のため、SPOKE-1(R3)にLoopbackアドレス(3.3.3.3)を設定してeigrpでアドバタイズします。
image.png

image.png
SPOKE間で直接通信できました!

image.png
show ip routeに % が表示されています。


おまけ

nhrpで入力したコマンドをshow runで確認するとき、表示されない場合があります。
そんなときはshow run allで確認するといいかもしれません。

例えば、SPOKEのip nhrp shortcutはshow runには表示されませんが、show run allには表示されます。
image.png

show run allは出力が膨大なので、include | ip nhrpで表示するのがおすすめです。
私はDMVPNの勉強を始めたころ、何を設定したかわからなくなってよく混乱していました。

参考

・CCIE Enterprise Infrastructure Foundation
 Chapter7:DMVPN

改めてじっくり読むと発見があります。


・IP Addressing Configuration Guide, Cisco IOS XE 17.x
 Chapter: Configuring NHRP


・Cisco Community NHRP シリーズ : その1 NHRP とは?

上にも書いたけど、わかりやすい!


・31 Days Before Your CCNP and CCIE Enterprise Core Exam

簡潔で図がわかりやすいです。eigrpの図を載せたかった..
もしお持ちの方がいましたら、Figure 26-2 EIGRP Operation Overview を見ながら読んでほしいです。

まとめ

キャプチャがきれいに取得できて嬉しかったので記事を書こうと思いました。
正直、SPOKEの設定はip nhrp nhs ~ nbma ~ multiを多用しています。


----------------

10/8追記 備忘
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?