DMVPN(ダイナミックマルチポイントVPN)は、複数のサイト間接続ですべての接続先ルータを静的に構成する必要なく、VPNネットワークを構築するために使用する技術です。「ハブアンドスポーク」構成で、フルメッシュのトンネルを設定することなくスポークはハブを経由せずに相互に直接通信できます。
DMVPNを使用するには、以下2つの仕組みが必要です。
- マルチポイントGRE(mGRE)
- NHRP(ネクストホップ解決プロトコル)
マルチポイントGRE(mGRE)
GREトンネルは、ポイントツーポイントが基本ですが、マルチポイントGREでは、1つのTunnelインタフェースで複数の宛先へトンネルすることができます。GREトンネルのトンネル先アドレスを取得するのに、NHRP(ネクストホップ解決プロトコル)を使用します。
NHRP(ネクストホップ解決プロトコル)
ネクストホップサーバー(NHS)として構成されるハブとスポーク(NHRPクライアント)で構成されます。アンダーレイで使用するインターネット等のパブリックネットワークで使用するアドレスをパブリックアドレスもしくはNBMA(Non-Broadcast Multi-Access)アドレスと呼びます。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/99CE8ACF-8222-45E4-9E04-1167E2677FC0.png)
スポークでは、ハブのパブリックアドレス(NBMAアドレス)とトンネルインタフェースのプライベートアドレスを静的マッピングし、ハブへ報告(NHRP登録)することで、スポークを動的に学習します。
基本動作
まず、NHRPクライアントは、自分自身のNBMAアドレスをNHRP Registration Requestとして、NHRPサーバーに登録します。ハブであるNHRPサーバーは、スポークのパブリックIPアドレス(NBMAアドレス)とトンネルインターフェースのIPアドレス間のマッピング(キャッシュテーブル)を作成します。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/06127945-021F-4716-8AE2-05DAA488E915-1024x598.png)
スポーク1からスポーク2へ通信をしたいとします。その際にスポーク1からHUBに対して、NHRP Resolution Requestを送信し、スポーク2のNBMAアドレスを解決しようとします。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/75FE842D-F717-4251-BDD3-E67F3B3B93AA.png)
HUBはキャッシュテーブルを参照して、NHRP Resolution Replyとして、スポーク2のNBMAアドレスを返信します。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/3E65C611-CC51-48E6-AF18-6654A3D63727-1024x619.png)
これでスポーク1は、スポーク2の宛先NBMAアドレスを認識し、直接トンネル接続します。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/6F79B6BD-C2BE-4565-AE28-8194D60D9475-1024x589.png)
これが、ざっくりとしたDMVPNの概要です。
この構成例におけるオーバレイとアンダーレイネットワークも整理しておきます。
![](https://hirotanoblog.com/wp-content/uploads/2020/08/4C5702A2-CC81-4EF7-9C61-18D2580C0D2B.png)
最後までお読み頂きありがとうございました。
コメント