动态多点×××是一个高扩展的IPSEC ×××解决方案
传统的ipsec S2S 有如下劣势
1. 中心站点配置量大,无论是采用经典ipsec ***还是采用 gre over ipsec 多一个分支站点就要增加一份配置,那么当分支站点过多配置就会变成沉重的负担并且不容易进行管理
2.分支站点间的流量延迟较大
分支站点与分支站点之间不能直接通信,分支与分支进行通信时 数据需要先送往数据中心进行中转 需要进行2次加密解密 大大增加了延迟时间
3 .每一个分支站点之间都需要固定的IP地址
DM×××的优点
1. 简单的星型拓扑配置 提供了虚拟网状网络的连通性
2.分支站点之间支持动态IP
3.增加新的分支站点无需更改中心站点的配置
4.分支站点之间的流量不需要经过HUB端进行中转
DM××× 由4部分组成
1. 动态多点GRE 隧道
2. 下一跳地址解析协议 NHRP
3. 动态路由协议
4. ipsec技术
预配要求
1.各总部与分支机构之间不能有去往对方的路由条目
2.确保总部与分支机构之间的公网可通
创建DM ××× 总共分为4个步骤
1. 创建多点隧道
2. NHRP
3. 动态路由协议
4. IPSEC
第一步:创建多点隧道
hub1
R1(config)# int tunnel 0
R1(config-if)# ip add 172.16.1.1 255.255.255.0
R1(config-if)#tunnel mode gre multipoint
R1(config-if)#tunnel source s1/0
R1(config-if)#tunnel key 12345
R1(config-if)#ip mtu 1400
R1(config-if)#bandwidth 1000
hub2
R2(config)# int tunnel 0
R2(config-if)# ip add 172.16.1.2 255.255.255.0
R2(config-if)#tunnel mode gre multipoint
R2(config-if)#tunnel key 12345
R2(config-if)#tunnel source s1/1
R2(config-if)#ip mtu 1400
R2(config-if)#bandwidth 1000
spoke1
R3(config)# int tunnel 0
R3(config-if)# ip add 172.16.1.3 255.255.255.0
R3(config-if)#tunnel mode gre multipoint
R3(config-if)# tunnel key 12345
R3(config-if)#tunnel source s1/2
R3(config-if)# ip mtu 1400
R3(config-if)# bandwidth 1000
spoke2
R4(config)# int tunnel 0
R4(config-if)# ip add 172.16.1.4 255.255.255.0
R4(config-if)#tunnel mode gre multipoint
R4(config-if)#tunnel key 12345
R4(config-if)#tunnel source s1/3
R4(config-if)#ip mtu 1400
R4(config-if)# bandwidth 1000
第二步 配置NHRP
hub1
R1(config)# int tunnel 0
R1(config-if)# ip nhrp holdtime 300
R1(config-if)#ip nhrp network-id 100
R1(config-if)# ip nhrp map 172.16.1.2 25.1.1.2
R1(config-if)#ip nhrp map multicast 25.1.1.2
两个hub端要互指
hub2
R2(config)# int tunnel 0
R2(config-if)# ip nhrp holdtime 300
R2(config-if)# ip nhrp network-id 100
R2(config-if)# ip nhrp map 172.16.1.1 15.1.1.1
R2(config-if)# ip nhrp map multicast 15.1.1.1
两个hub端要互指
spoke1
R3(config)# int tunnel 0
R3(config-if)# ip nhrp holdtime 300
R3(config-if)# ip nhrp network-id 100
R3(config-if)# ip nhrp nhs 172.16.1.1
R3(config-if)# ip nhrp nhs 172.16.1.2
R3(config-if)# ip nhrp map 172.16.1.1 15.1.1.1
R3(config-if)#ip nhrp map 172.16.1.2 25.1.1.2
spoke2
R4(config)# int tunnel 0
R4(config-if)# ip nhrp holdtime 300
R4(config-if)# ip nhrp network-id 100
R4(config-if)#ip nhrp nhs 172.16.1.1
R4(config-if)# ip nhrp nhs 172.16.1.2
R4(config-if)# ip nhrp map 172.16.1.1 15.1.1.1
R4(config-if)# ip nhrp map 172.16.1.2 25.1.1.2
第三步 宣告路由协议EIGRP
hub1
R1(config)#router eigrp 90
R1(config-router)#net 172.16.1.0
R1(config-router)#no auto-summary
hub2
R2(config)# router eigrp 90
R2(config-router)#net 172.16.1.0
R2(config-router)#no auto-summary
spoke1
R3(config)# router eigrp 90
R3(config-router)#net 172.16.1.0
R3(config-router)#no auto-summary
spoke2
R4(config)#router eigrp 90
R4(config-router)# net 172.16.1.0
R4(config-router)#no auto-summary
此时EIGRP邻居关系无法建立 因为tunnel链路开启组播传输
hub1
R1(config-if)# ip nhrp map multicast dynamic
hub2
R2(config-if)# ip nhrp map multicast dynamic
spoke1
R3(config-if)# ip nhrp map multicast 15.1.1.1
R3(config-if)# ip nhrp map multicast 25.1.1.2
spoke2
R4(config-if)# ip nhrp map multicast 15.1.1.1
R4(config-if)# ip nhrp map multicast 25.1.1.2
tunnel链路的路由条目正确学习 但是分支与分支之间进行通信,仍然要通过HUB端进行中转
hub1
R1(config-if)# no ip split-horizon eigrp 90
R1(config-if)# no ip next-hop-self eigrp 90
hub2
R2(config-if)# no ip split-horizon eigrp 90
R2(config-if)# no ip next-hop-self eigrp 90
第四步: 在各总部与分支机构路由器上开启IPSEC
Rx(config)# crypto isakmp policy 10
Rx(config-isakmp)#encryption 3
Rx(config-isakmp)#authentication pre-share
Rx(config-isakmp)#hash md5
Rx(config-isakmp)#group 2
Rx(config)# crypto isakmp key cisco address 0.0.0.0 0.0.0.0
Rx(config)#crypto ipsec transform-set myset esp-3des esp-md5-hmac
Rx(cfg-crypto-trans)#mode tunnel
Rx(cfg-crypto-trans)#exit
Rx(config)#crypto ipsec profile myfile
Rx(ipsec-profile)#set transform-set myset
Rx(ipsec-profile)#exit
Rx(config)# int tunnel 0
Rx(config-if)#tunnel protection ipsec profile myfile