キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
告知

JTAC-Mid-Career-Recruitment-2021.8

 

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

3206
閲覧回数
15
いいね!
0
コメント

その1、としてどんなプロトコルか大まかにまとめてみます。

 

NHRP とはどんなプロトコルか。


簡単に言えば ARP みたいなものです。

ARP は Address Resolution Protocol という名前のとおり、
IP アドレスと MAC アドレスを紐づけるのに使われています。
「この IP はどの MAC アドレス?」という ARP リクエストをブロードキャストでネットワークに送信し、
「私です。」というA RP リプライから IP アドレスと MAC アドレスを紐づけます。
Address を Resolution する Protocol、アドレスを解決してくれるプロトコル ARP ということになります。

NHRPは正式には Next Hop Resolution Protocolです。
ARPと同様に「Resolution Protocol」と入っていますので、
解決プロトコルの一種ということになります。
何を解決してくれるのか、というと Next Hop になります。
Next Hop を解決してくれるプロトコルが NHRP です。


NHRP はどんなところで使うのか。


Non-Broadcast Multi-Access (NBMA) での利用が想定されています。
ブロードキャストが使えないけど、複数のルータなどが繋がっているネットワークということになります。
1対1 (Point to Point) で繋がっているものが集まっているようなネットワークとも言えます。fig1.png 
A-B、A-C は1対1でお互いに通信できます。
では、B-C の通信は?
同じネットワークにいて Ethernet なら ARP で直接通信できるように見えますが、
ブロードキャストが使えないで、つまりは ARP も使えません。

そんな時でも動的にアドレスを学習できるのが NHRP になります。
通信キャリアの拠点間の接続サービスでは同様に1対1の接続が前提のものがありますので、
そういったネットワークでも NHRP は使われます。

具体的には、1対1の接続が基本となる Tunnel (GRE) を用いた DMVPN で使うのが最も一般的です。
DMVPN を例に言えば、
Nexthop になっている Tunnel IP アドレスから、
Tunnel の送信元になっている物理 interface の IP アドレスを知ることができるのが NHRP の役割になります。


NHRP はどんな動作か。


fig2.png
NHRP にはサーバとクライアントがいるタイプのプロトコルになります。
Next Hop Server (NHS)
Next Hop Resolution Protocol client (NHC)
※DMVPN では NHS が Hub で NHC が Spoke と呼ばれます。

簡単には、クライアント: NHC がサーバ: NHS に Nexthop のアドレス解決の問い合わせを送信、
サーバがクライアントにレスポンスを返して、
クライアントは Nexthop を解決するという動作です。
DNS のようなイメージに近いです。

もう少し具体的に書くと、
NHC は Virtual IP アドレス(Tunnel の IP アドレス)を問い合わせて、
NHS は対応する Real IP アドレス(Tunnel の送信元 IP アドレス)を回答します。

サーバがクライアントの問い合わせに答えるにはサーバに事前に登録が必要ですので、
NHC は NHRP Registration Request を送信して NHS に自身の持つ情報を登録します。

また、問い合わせというのは、
NHRP Resolution Request と呼ばれます。
NHC は Request を NHS へ送信して NHC は NHS から Reply を受け取ります。

以上、大まかに NHRP についてでした。
次回は Multipoint GRE (IPsec なしの DMVPN) 構成での動作を具体的に見ていきたいと思います。

参考:
NHRP の設定
RFC2332 NBMA Next Hop Resolution Protocol (NHRP)