久しぶりにGNS3（その６：トンネリング：DMVPN）

# DMVPN
今回はDMVPN（Dynamic Multipoint VPN）にトライ。複数サイト間でVPNを構築する際に利用されるらしい。DMVPNの背景については、下記サイトを参考されたし。
- [DMVPN（Dynamic Multipoint VPN）とは](https://www.infraexpert.com/study/ipsec1.html)
- [VPN（DMVPN その1）](http://atnetwork.info/ccnp4/vpn27.html)

## 対象ネットワーク
![DMVPN_Topology.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/7b84caa3-5af4-d286-4865-c03060ff7b1d.png)
東京サイト（Hub-Tokyo）をハブルーター、那覇サイト（Spoke-Naha）及び北見サイト（Spoke-Kitami）をスポークルーターとし、これらがルーターISPを通じて接続されており、全体がVPN化されているものとする。また、それぞれのサイトにローカルPCが接続されている。

### 各ルーターの設定およびルーティング情報
主に次のサイトの情報をもとに設定を行った。
- [DMVPN ( Dnymic Multipoint VPN )の設定](https://www.unix-power.net/networking/post-371)
- [VPN（DMVPN その1）](http://atnetwork.info/ccnp4/vpn27.html)
なお、ローカルPCの設定はほぼ自明のため省略。

#### Hub-Tokyo
IKEおよびIPSECの設定。

```
crypto isakmp policy 1
 encr aes
 authentication pre-share
 group 2
crypto isakmp key testpwd address 0.0.0.0 0.0.0.0

crypto ipsec transform-set DMVPN-TEST esp-aes esp-sha-hmac 
 mode transport

crypto ipsec profile DMVPN-PROFILE
 set transform-set DMVPN-TEST 
```

設定は[その５](https://qiita.com/infinite1oop/items/87f278c3df5129ae990b)とほぼ同じであるが、事前共有鍵を交換するアドレスを「0.0.0.0」とするらしい。なお、今回はIPsecトランスポートモード利用。

I/Fの設定。

```
interface Tunnel0
 ip address 172.16.1.1 255.255.255.0
 no ip redirects
 ip mtu 1368
 no ip next-hop-self eigrp 20
 ip nhrp authentication dmvpnpwd
 ip nhrp map multicast dynamic
 ip nhrp network-id 10
 no ip split-horizon eigrp 20
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
 tunnel key 31
 tunnel protection ipsec profile DMVPN-PROFILE

interface FastEthernet0/0
 ip address 200.1.1.11 255.255.255.0

interface FastEthernet0/1
 ip address 10.1.1.254 255.255.255.0
```

- トンネリングIPアドレス設定
- NHRP設定（認証パスワード、マルチキャスト動的設定、ネットワークID）
- ICMPによるリダイレクト無効化（不要のため）
- カプセリングが多数あるためMTUの変更
- VPN内ルーティングにEIGRPを用いるためEIGRP設定（スプリットホライズン無効化、スポーク間ルータでの直接通信設定）（詳細は[こちら](https://www.infraexpert.com/study/ipsec27.html)を参照）
- トンネリング設定（送信元情報、カプセル方式mGRE、キー、利用するIPsecプロファイル）
- 物理I/FのIPアドレス設定

ルーティング関連。

```
router eigrp 20
 network 10.1.1.0 0.0.0.255
 network 172.16.1.0 0.0.0.255
 no auto-summary

ip route 200.0.0.0 255.0.0.0 FastEthernet0/0
```
- EIGRPの対象となるネットワーク設定（トンネリングネットワークおよびローカルネットワーク）
- ISP側の物理ネットワークへのスタティックルート


#### Spoke-Naha
IKEおよびIPSECの設定。Hub-Tokyoと同じ。

```
crypto isakmp policy 1
 encr aes
 authentication pre-share
 group 2
crypto isakmp key testpwd address 0.0.0.0 0.0.0.0

crypto ipsec transform-set DMVPN-TEST esp-aes esp-sha-hmac 
 mode transport

crypto ipsec profile DMVPN-PROFILE
 set transform-set DMVPN-TEST 
```

I/Fの設定。

```
interface Tunnel0
 ip address 172.16.1.2 255.255.255.0
 no ip redirects
 ip mtu 1368
 ip nhrp authentication dmvpnpwd
 ip nhrp map multicast 200.1.1.11
 ip nhrp map 172.16.1.1 200.1.1.11
 ip nhrp network-id 10
 ip nhrp nhs 172.16.1.1
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
 tunnel key 31
 tunnel protection ipsec profile DMVPN-PROFILE

interface FastEthernet0/0
 ip address 200.2.2.22 255.255.255.0

interface FastEthernet0/1
 ip address 10.2.2.254 255.255.255.0
```

Hubとの違いは、NHRPの宛先として、HUB（東京サイト）の物理I/FのIPアドレス、HUBのトンネリングIPアドレスと物理I/Fのマッピングを指定しているところである。

ルーティング関連設定。基本的にHubと同じ。

```
router eigrp 20
 network 10.2.2.0 0.0.0.255
 network 172.16.1.0 0.0.0.255
 no auto-summary

ip route 200.0.0.0 255.0.0.0 FastEthernet0/0
```


#### Spoke-Kitami
Spoke-Nahaとほぼ同じのため、説明省略。

```
crypto isakmp policy 1
 encr aes
 authentication pre-share
 group 2
crypto isakmp key testpwd address 0.0.0.0 0.0.0.0

crypto ipsec transform-set DMVPN-TEST esp-aes esp-sha-hmac 
 mode transport

crypto ipsec profile DMVPN-PROFILE
 set transform-set DMVPN-TEST 

interface Tunnel0
 ip address 172.16.1.3 255.255.255.0
 no ip redirects
 ip mtu 1368
 ip nhrp authentication dmvpnpwd
 ip nhrp map multicast 200.1.1.11
 ip nhrp map 172.16.1.1 200.1.1.11
 ip nhrp network-id 10
 ip nhrp nhs 172.16.1.1
 tunnel source FastEthernet0/0
 tunnel mode gre multipoint
 tunnel key 31
 tunnel protection ipsec profile DMVPN-PROFILE

interface FastEthernet0/0
 ip address 200.3.3.33 255.255.255.0

interface FastEthernet0/1
 ip address 10.3.3.254 255.255.255.0

router eigrp 20
 network 10.3.3.0 0.0.0.255
 network 172.16.1.0 0.0.0.255
 no auto-summary

ip route 200.0.0.0 255.0.0.0 FastEthernet0/0
```


#### ISP
ここはほぼ自明、説明省略。

```
interface FastEthernet0/0
 ip address 200.2.2.1 255.255.255.0

interface FastEthernet0/1
 ip address 200.3.3.1 255.255.255.0

interface FastEthernet1/0
 ip address 200.1.1.1 255.255.255.0
```

## 実験
ISPおよび3台のローカルPCが起動した状態で、Hub-Tokyo、Spoke-Naha、Spoke-Kitamiの順番にルーターを起動させ、ISPとHub-Tokyo間のネットワーク状況をWiresharkで観察する。ここでは、ARP、IKE（ISAKMP）、IPsec（ESP）に着目。

### Hub-Tokyo起動
タイムスタンプ42秒あたりで、Hub-Tokyoを起動させた。
![Hub起動.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/a8ea232a-1126-b708-8875-95c174f79f20.png)
Hub-TokyoからのARPによるIPアドレス（200.1.1.11）宣言のみ。基本的にサーバーのようなものなので、自らトリガになる（IKEパケット送出など）ことはない。（設定にも、SpokeルータのIPアドレス記載はない。）

### Spoke-Naha起動
タイムスタンプ147秒あたり、Spoke-Nahaを起動させた。
![Naha起動.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/760d58b5-1968-84c0-827c-128029b32566.png)
Spoke-Nahaのトンネリング設定内にHub-Tokyoの物理IPアドレスおよびトンネリングIPアドレスが記載されているためか（？）、Hub-TokyoとのIKEによる鍵交換が発生し、その後IPsecパケットが送出されている。このとき、Hub-TokyoのコンソールでNHRPのデバッグコマンドをONにし、パケット送受信の様子を確認した（下記ログ）。

```
NHRP protocol debugging is on
Hub-Tokyo#
*Mar  1 00:01:58.063: NHRP: Receive Registration Request via Tunnel0 vrf 0, packet size: 84
*Mar  1 00:01:58.063: NHRP: netid_in = 10, to_us = 1
*Mar  1 00:01:58.063: NHRP: NAT-check: matched destination address 200.2.2.22
*Mar  1 00:01:58.067: NHRP: Tu0: Creating dynamic multicast mapping  NBMA: 200.2.2.22
*Mar  1 00:01:58.067: NHRP: Attempting to send packet via DEST 172.16.1.2
*Mar  1 00:01:58.071: NHRP: Encapsulation succeeded.  Tunnel IP addr 200.2.2.22
*Mar  1 00:01:58.071: NHRP: Send Registration Reply via Tunnel0 vrf 0, packet size: 104
*Mar  1 00:01:58.071:       src: 172.16.1.1, dst: 172.16.1.2
*Mar  1 00:01:58.071: NHRP: 104 bytes out Tunnel0 
Hub-Tokyo#
```
上記から、最初のIPsecパケット(ESP)はNHRPと思われる。そして、Hub-Tokyoの最後に下記ログが表示され、Spoke-Nahaとのトンネリングが完成したことがわかる。

```
*Mar  1 00:02:01.135: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 20: Neighbor 172.16.1.2 (Tunnel0) is up: new adjacency
```

### Naha-PCからTokyo-PCへのping
タイムスタンプ356秒あたりで、Naha-PCからTokyo-PCへのpingを実施。

```
Naha-PC> ping 10.1.1.1 -c 10
10.1.1.1 icmp_seq=1 timeout
84 bytes from 10.1.1.1 icmp_seq=2 ttl=62 time=48.582 ms
84 bytes from 10.1.1.1 icmp_seq=3 ttl=62 time=54.309 ms
84 bytes from 10.1.1.1 icmp_seq=4 ttl=62 time=43.802 ms
84 bytes from 10.1.1.1 icmp_seq=5 ttl=62 time=33.884 ms
84 bytes from 10.1.1.1 icmp_seq=6 ttl=62 time=55.088 ms
84 bytes from 10.1.1.1 icmp_seq=7 ttl=62 time=55.082 ms
84 bytes from 10.1.1.1 icmp_seq=8 ttl=62 time=42.278 ms
84 bytes from 10.1.1.1 icmp_seq=9 ttl=62 time=44.848 ms
84 bytes from 10.1.1.1 icmp_seq=10 ttl=62 time=44.478 ms
```

この時のWiresharkの状況。
![PingFromNahaPCtoTokyoPC.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/1bc16063-4592-b4c2-2571-ac396562e86a.png)
当然暗号化されているが、これにはICMPパケットが含まれているはず。

### Spoke-Kitami起動
タイムスタンプ425秒あたりで、Spoke-Kitamiを起動させた。
![Kitami起動.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/ad11eb55-668f-c400-39b4-399b3ada9d8e.png)
こちらでも、Hub-TokyoとのIKEによる鍵交換が発生し、その後IPsecパケットが送出されている。このとき、Hub-TokyoのコンソールででNHRPのデバッグコマンドをONにし、パケット送受信の様子を確認した。

```
Hub-Tokyo#
*Mar  1 00:06:17.659: NHRP: Receive Registration Request via Tunnel0 vrf 0, packet size: 84
*Mar  1 00:06:17.663: NHRP: netid_in = 10, to_us = 1
*Mar  1 00:06:17.663: NHRP: NAT-check: matched destination address 200.3.3.33
*Mar  1 00:06:17.663: NHRP: Tu0: Creating dynamic multicast mapping  NBMA: 200.3.3.33
*Mar  1 00:06:17.663: NHRP: Attempting to send packet via DEST 172.16.1.3
*Mar  1 00:06:17.663: NHRP: Encapsulation succeeded.  Tunnel IP addr 200.3.3.33
*Mar  1 00:06:17.663: NHRP: Send Registration Reply via Tunnel0 vrf 0, packet size: 104
*Mar  1 00:06:17.663:       src: 172.16.1.1, dst: 172.16.1.3
*Mar  1 00:06:17.663: NHRP: 104 bytes out Tunnel0 
```
最初のIPsecパケットはNHRPと思われる。そして、Hub-Tokyoの最後に下記が表示され、Spoke-Kitamiとのトンネリングが完成したことがわかる。

```
*Mar  1 00:06:19.091: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 20: Neighbor 172.16.1.3 (Tunnel0) is up: new adjacency
Hub-Tokyo#
```

### Naha-PCからKitami-PCへのping
タイムスタンプ561秒あたりで、Naha-PCからKitami-PCへのpingを実施。

```
Naha-PC> ping 10.3.3.3 -c 10
10.3.3.3 icmp_seq=1 timeout
84 bytes from 10.3.3.3 icmp_seq=2 ttl=61 time=96.243 ms
84 bytes from 10.3.3.3 icmp_seq=3 ttl=61 time=89.109 ms
84 bytes from 10.3.3.3 icmp_seq=4 ttl=61 time=75.653 ms
84 bytes from 10.3.3.3 icmp_seq=5 ttl=61 time=65.636 ms
84 bytes from 10.3.3.3 icmp_seq=6 ttl=61 time=67.020 ms
84 bytes from 10.3.3.3 icmp_seq=7 ttl=61 time=63.980 ms
84 bytes from 10.3.3.3 icmp_seq=8 ttl=61 time=63.391 ms
84 bytes from 10.3.3.3 icmp_seq=9 ttl=61 time=83.991 ms
84 bytes from 10.3.3.3 icmp_seq=10 ttl=61 time=84.448 ms
```

このPingの前に、NHRPパケットが、Spoke-KitamiとHub-Tokyo間にやり取りされている。Hub-Tokyoのコンソール状況。

```
Hub-Tokyo#
*Mar  1 00:07:37.535: NHRP: Receive Resolution Request via Tunnel0 vrf 0, packet size: 84
*Mar  1 00:07:37.539: NHRP: netid_in = 10, to_us = 0
*Mar  1 00:07:37.539: NHRP: NAT-check: matched destination address 200.2.2.22
*Mar  1 00:07:37.539: NHRP: nhrp_rtlookup yielded Tunnel0
*Mar  1 00:07:37.539: NHRP: Tu0: Found and skipping dynamic multicast mapping  NBMA: 200.2.2.22
*Mar  1 00:07:37.543: NHRP: netid_out 10, netid_in 10
*Mar  1 00:07:37.543: NHRP: nhrp_cache_lookup_comp returned 0x6545D008
*Mar  1 00:07:37.543: NHRP: Attempting to send packet via DEST 172.16.1.2
*Mar  1 00:07:37.543: NHRP: Encapsulation succeeded.  Tunnel IP addr 200.2.2.22
Hub-Tokyo#
*Mar  1 00:07:37.543: NHRP: Send Resolution Reply via Tunnel0 vrf 0, packet size: 112
*Mar  1 00:07:37.543:       src: 172.16.1.1, dst: 172.16.1.2
*Mar  1 00:07:37.543: NHRP: 112 bytes out Tunnel0 
Hub-Tokyo#
*Mar  1 00:07:39.579: NHRP: Receive Resolution Request via Tunnel0 vrf 0, packet size: 84
*Mar  1 00:07:39.583: NHRP: netid_in = 10, to_us = 0
*Mar  1 00:07:39.583: NHRP: NAT-check: matched destination address 200.3.3.33
*Mar  1 00:07:39.583: NHRP: nhrp_rtlookup yielded Tunnel0
*Mar  1 00:07:39.587: NHRP: Tu0: Found and skipping dynamic multicast mapping  NBMA: 200.3.3.33
*Mar  1 00:07:39.587: NHRP: netid_out 10, netid_in 10
*Mar  1 00:07:39.587: NHRP: nhrp_cache_lookup_comp returned 0x660DEEE4
*Mar  1 00:07:39.587: NHRP: Attempting to send packet via DEST 172.16.1.3
*Mar  1 00:07:39.587: NHRP: Encapsulation succeeded.  Tunnel IP addr 200.3.3.33
Hub-Tokyo#
*Mar  1 00:07:39.587: NHRP: Send Resolution Reply via Tunnel0 vrf 0, packet size: 112
*Mar  1 00:07:39.587:       src: 172.16.1.1, dst: 172.16.1.3
*Mar  1 00:07:39.587: NHRP: 112 bytes out Tunnel0 
Hub-Tokyo#
```

この時のWireshark（ISP-Hub-Tokyo間）のデータはこちら。
![NHRP from Kitami.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/634816/18956582-20ad-84d5-6010-6d28a1eb368f.png)
NHRPパケットが暗号化されているはず。

なお、暗号化されたICMPパケット（Naha-PCからKitami-PCへのping）は、ISP-Hub-Tokyo間には流れない。

### Spoke-Kitami停止
その後、Spoke-Kitamiを停止してみた。「debug eigrp packets」も実行し、Hub-Tokyoのコンソールの表示を確認する。

```
Hub-Tokyo#debug eigrp packets    
EIGRP Packets debugging is on
    (UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY)
Hub-Tokyo#
*Mar  1 00:11:33.843: EIGRP: Received HELLO on Tunnel0 nbr 172.16.1.2
*Mar  1 00:11:33.843:   AS 20, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
Hub-Tokyo#
*Mar  1 00:11:37.451: EIGRP: Sending HELLO on FastEthernet0/1
*Mar  1 00:11:37.451:   AS 20, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar  1 00:11:37.763: EIGRP: Sending HELLO on Tunnel0
*Mar  1 00:11:37.763:   AS 20, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar  1 00:11:37.927: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 20: Neighbor 172.16.1.3 (Tunnel0) is down: holding time expired
*Mar  1 00:11:37.939: EIGRP: Build goodbye tlv for 172.16.1.3
*Mar  1 00:11:37.939: EIGRP: Sending HELLO on Tunnel0
*Mar  1 00:11:37.939:   AS 20, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar  1 00:11:37.939: EIGRP: Enqueueing QUERY on Tunnel0 iidbQ un/rely 0/1 serno 6-6
*Mar  1 00:11:37.943: EIGRP: Enqueueing QUERY on Tunnel0 nbr 172.16.1.2 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 6-6
*Mar  1 00:11:37.947: EIGRP: Sending QUERY on Tunnel0
*Mar  1 00:11:37.947:   AS 20, Flags 0x0, Seq 8/0 idbQ 0/0 iidbQ un/rely 0/0 serno 6-6
*Mar  1 00:11:37.999: EIGRP: Received ACK on Tunnel0 nbr 172.16.1.2
*Mar  1 00:11:37.999:   AS 20, Flags 0x0, Seq 0/8 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1
*Mar  1 00:11:37.999: EIGRP: Tunnel0 multicast flow blocking cleared
```

Spoke-KitamiのトンネリングIPアドレス「172.16.1.3」が検出されなくなったことのメッセージが表示されている。

## ルーティング情報など
すべてのルーターの最終的なルーティング情報を記載する。

### Hub-Tokyo
設定されたルーティング情報。Spokeルーターのローカルネットワーク（10.2.2.0/24および10.3.3.0/24）がEIGRP(D)により到達できることがわかる。

```
Hub-Tokyo#show ip route
（略）

C    200.1.1.0/24 is directly connected, FastEthernet0/0
     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.1.0 is directly connected, Tunnel0
     10.0.0.0/24 is subnetted, 3 subnets
D       10.3.3.0 [90/297270016] via 172.16.1.3, 00:44:51, Tunnel0
D       10.2.2.0 [90/297270016] via 172.16.1.2, 00:44:50, Tunnel0
C       10.1.1.0 is directly connected, FastEthernet0/1
S    200.0.0.0/8 is directly connected, FastEthernet0/0
```

NHRPの状況。トンネリングを通じて、Spokeルーターとパイプがあることがわかる。

```
Hub-Tokyo#show ip nhrp tunnel 0
172.16.1.2/32 via 172.16.1.2, Tunnel0 created 00:12:42, expire 01:47:17
  Type: dynamic, Flags: authoritative unique registered 
  NBMA address: 200.2.2.22 
172.16.1.3/32 via 172.16.1.3, Tunnel0 created 00:12:42, expire 01:47:17
  Type: dynamic, Flags: authoritative unique registered 
  NBMA address: 200.3.3.33 
```

暗号化経路の状況。Spokeルーターの物理IPアドレスと経路がある。

```
Hub-Tokyo#show crypt map
Crypto Map "Tunnel0-head-0" 65536 ipsec-isakmp
	Profile name: DMVPN-PROFILE
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65537 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.2.2.22
	Extended IP access list 
	    access-list  permit gre host 200.1.1.11 host 200.2.2.22
	Current peer: 200.2.2.22
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65538 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.3.3.33
        Extended IP access list 
	    access-list  permit gre host 200.1.1.11 host 200.3.3.33
	Current peer: 200.3.3.33
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}
	Interfaces using crypto map Tunnel0-head-0:
		Tunnel0
```

EIGRPの状況も下記する。

```
Hub-Tokyo#show ip eigrp neighbors 
IP-EIGRP neighbors for process 20
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
1   172.16.1.3              Tu0               10 00:44:57   86  5000  0  3
0   172.16.1.2              Tu0               14 00:44:57   80  5000  0  3

Hub-Tokyo#show ip eigrp topology 
IP-EIGRP Topology Table for AS(20)/ID(172.16.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 

P 10.2.2.0/24, 1 successors, FD is 297270016
        via 172.16.1.2 (297270016/281600), Tunnel0
P 10.3.3.0/24, 1 successors, FD is 297270016
        via 172.16.1.3 (297270016/281600), Tunnel0
P 10.1.1.0/24, 1 successors, FD is 281600
        via Connected, FastEthernet0/1
P 172.16.1.0/24, 1 successors, FD is 297244416
        via Connected, Tunnel0
```

### Spoke-Naha
設定されたルーティング情報。対向ルーターのローカルネットワーク（10.1.1.0/24および10.3.3.0/24）がEIGRP(D)により到達できることがわかる。

```
Spoke-Naha#show ip route
（略）

C    200.2.2.0/24 is directly connected, FastEthernet0/0
     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.1.0 is directly connected, Tunnel0
     10.0.0.0/24 is subnetted, 3 subnets
D       10.3.3.0 [90/310070016] via 172.16.1.3, 00:39:58, Tunnel0
C       10.2.2.0 is directly connected, FastEthernet0/1
D       10.1.1.0 [90/297270016] via 172.16.1.1, 00:39:58, Tunnel0
S    200.0.0.0/8 is directly connected, FastEthernet0/0
```

NHRPの状況。Hubと同じく、トンネリングを通じて、対向ルーターとパイプあり。

```
Spoke-Naha#
Spoke-Naha#show ip nhrp Tunnel 0
172.16.1.1/32 via 172.16.1.1, Tunnel0 created 00:20:42, never expire 
  Type: static, Flags: authoritative used 
  NBMA address: 200.1.1.11 
172.16.1.3/32 via 172.16.1.3, Tunnel0 created 00:20:00, expire 01:39:54
  Type: dynamic, Flags: router 
  NBMA address: 200.3.3.33 
```

暗号化経路の状況。対向ルーターの物理IPアドレスと経路がある。

```
Spoke-Naha#show crypto map
Crypto Map "Tunnel0-head-0" 65536 ipsec-isakmp
	Profile name: DMVPN-PROFILE
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65537 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.1.1.11
	Extended IP access list 
	    access-list  permit gre host 200.2.2.22 host 200.1.1.11
	Current peer: 200.1.1.11
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65538 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.3.3.33
        Extended IP access list 
	    access-list  permit gre host 200.2.2.22 host 200.3.3.33
	Current peer: 200.3.3.33
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}
	Interfaces using crypto map Tunnel0-head-0:
		Tunnel0

```

EIGRPの状況。

```
Spoke-Naha#show ip eigrp neighbors 
IP-EIGRP neighbors for process 20
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   172.16.1.1              Tu0               13 00:40:07 1226  5000  0  6

Spoke-Naha#show ip eigrp topology 
IP-EIGRP Topology Table for AS(20)/ID(200.2.2.22)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 

P 10.3.3.0/24, 1 successors, FD is 310070016
       172.16.1.3 via 172.16.1.1 (310070016/297270016), Tunnel0
P 10.1.1.0/24, 1 successors, FD is 297270016
        via 172.16.1.1 (297270016/281600), Tunnel0
P 10.2.2.0/24, 1 successors, FD is 281600
        via Connected, FastEthernet0/1
P 172.16.1.0/24, 1 successors, FD is 297244416
        via Connected, Tunnel0
```

### Spoke-Kitami
```
Spoke-Kitami#show ip route
（略）

     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.1.0 is directly connected, Tunnel0
C    200.3.3.0/24 is directly connected, FastEthernet0/0
     10.0.0.0/24 is subnetted, 3 subnets
C       10.3.3.0 is directly connected, FastEthernet0/1
D       10.2.2.0 [90/310070016] via 172.16.1.2, 00:23:40, Tunnel0
D       10.1.1.0 [90/297270016] via 172.16.1.1, 00:23:42, Tunnel0
S    200.0.0.0/8 is directly connected, FastEthernet0/0
```
```
Spoke-Kitami#show ip nhrp tunnel 0
172.16.1.1/32 via 172.16.1.1, Tunnel0 created 00:12:51, never expire 
  Type: static, Flags: authoritative used 
  NBMA address: 200.1.1.11 
172.16.1.2/32 via 172.16.1.2, Tunnel0 created 00:12:25, expire 01:47:21
  Type: dynamic, Flags: router 
  NBMA address: 200.2.2.22 
```
```
Spoke-Kitami#show crypt map
Crypto Map "Tunnel0-head-0" 65536 ipsec-isakmp
	Profile name: DMVPN-PROFILE
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65537 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.1.1.11
	Extended IP access list 
	    access-list  permit gre host 200.3.3.33 host 200.1.1.11
	Current peer: 200.1.1.11
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}

Crypto Map "Tunnel0-head-0" 65538 ipsec-isakmp
	Map is a PROFILE INSTANCE.
	Peer = 200.2.2.22
        Extended IP access list 
	    access-list  permit gre host 200.3.3.33 host 200.2.2.22
	Current peer: 200.2.2.22
	Security association lifetime: 4608000 kilobytes/3600 seconds
	PFS (Y/N): N
	Transform sets={ 
		DMVPN-TEST, 
	}
	Interfaces using crypto map Tunnel0-head-0:
		Tunnel0
```
```
Spoke-Kitami#show ip eigrp neighbors 
IP-EIGRP neighbors for process 20
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   172.16.1.1              Tu0               14 00:24:08  126  5000  0  5

Spoke-Kitami#show ip eigrp topology 
IP-EIGRP Topology Table for AS(20)/ID(200.3.3.33)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 

P 10.2.2.0/24, 1 successors, FD is 310070016
       172.16.1.2 via 172.16.1.1 (310070016/297270016), Tunnel0
P 10.1.1.0/24, 1 successors, FD is 297270016
        via 172.16.1.1 (297270016/281600), Tunnel0
P 10.3.3.0/24, 1 successors, FD is 281600
        via Connected, FastEthernet0/1
P 172.16.1.0/24, 1 successors, FD is 297244416
        via Connected, Tunnel0
```

### ISP
```
ISP#show ip route
（略）

C    200.1.1.0/24 is directly connected, FastEthernet1/0
C    200.2.2.0/24 is directly connected, FastEthernet0/0
C    200.3.3.0/24 is directly connected, FastEthernet0/1
```

## おまけ
「debug ip eigrp packets」を実行すると、コンソールにEIGRPのHelloパケットが多数表示されてしまう。Helloの送出間隔を変更して、下記のように頻度を減らし、状況を確認するのも手である。

```
interface Tunnel0
 ip hello-interval eigrp 20 60
 ip hold-time eigrp 20 180
```