淘宝的网站是怎么做的,游乐网站设计,wordpress 修改程序文件,wordpress要哪些运行库DMVPN#xff08;Dynamic Multipoint VPN#xff09;动态多点VPN
对于分公司和分总公司内网实现通信环境下#xff0c;分公司是很多的。我们不可能每个分公司和总公司都挨个建立ipsec隧道 #xff0c;而且如果是分公司和分公司建立隧道#xff0c;就会很麻烦。此时我们需…DMVPNDynamic Multipoint VPN动态多点VPN
对于分公司和分总公司内网实现通信环境下分公司是很多的。我们不可能每个分公司和总公司都挨个建立ipsec隧道 而且如果是分公司和分公司建立隧道就会很麻烦。此时我们需要在分公司和分公司之间建立按需链路一旦只有数据传输的时候才会建立没有数据传输的时候不建立隧道
注意DMVPN是思科私有的协议技术
DMVPN基于tunnel tunnel也叫做GREGRE通用路由封装是一个模型VPN的模型隧道的模型内网到内网的模型双IP报头的模型 内网数据经过隧道口来进行一个二次封装这个隧道口也可以起路由协议 配置案列封装双IP报头 en
conf ter
ip route 0.0.0.0 0.0.0.0 100.1.1.1
int tunnel 0
ip add 123.1.1.1 255.255.255.0
tunnel source 100.1.1.2
tunnel destination 200.1.1.2
tunnel mode ipip //我们现在是处于封装双IP报头的形式
exit
router ospf 100
router-id 2.2.2.2
network 123.1.1.0 0.0.0.255 a 0
network 172.16.1.1 0.0.0.0 a 0
enden
conf ter
ip route 0.0.0.0 0.0.0.0 200.1.1.1
int tunnel 0
ip add 123.1.1.2 255.255.255.0
tunnel source 200.1.1.2
tunnel destination 100.1.1.2
tunnel mode ipip //封装双IP报头
exit
router ospf 100
router-id 1.1.1.1
network 123.1.1.0 0.0.0.255 a 0
network 192.168.1.1 0.0.0.0 a 0
endDMVPN基于NHRP重点
NHRP下一条解析解析有点像ARPNHRP运用场景 Spoke 1和Spoke 2会把tunnel口的ip和连接运营商的公网ip做一个映射并且发给HubHub此时收到两个映射关系但此时Spoke 1和Spoke 2都只有Hub的映射关系假设Spoke 1去访问123.1.1.1它会自动映射到11.1.1.2但是如果Spoke 1去访问Spoke 2Spoke 1里面并没有123.1.1.3映射的表它会去找Hub发送请求请求123.1.1.3Hub端会把123.1.1.3的映射发给Spoke 1,此时Spoke 1获取的这个表项长时间没用是会超时的下次要继续发送的时候会重新申请Spoke 2访问Spoke 1同理
NHRP的配置案例隧道之间使用RIP协议
要求彼此之间的环回口地址可以互通环回口模拟内网
Hub
en
conf ter
int tunnel 0
ip add 123.1.1.1 255.255.255.0
tunnel source 11.1.1.2 //不需要写tunnel destination因为我们使用的是DMVPN我们再这里面不知到是有多少个Spoke客户端的不可能每个都去写
tunnel mode gre multipoint //把隧道模式改为多点隧道模式隧道模式默认情况下是点对点模式而我们现在的环境是点对多点//配置NHRP
ip nhrp network-id 111 //用于DMVPN的组的一个划分有点像vtp里面的domain功能大家都在这个网络号里面才是一个组
ip nhrp authentication cisco //DMVPN不需要配置destination防止有人知道我们的预共享密钥冒充连接上来做一个身份认证//开启DMVPN的组播功能
ip nhrp map multicast dynamic //让接收到的组播地址自动形成映射关系因为Spoke端会自动刚给Hub端发送自己的映射等下会在三台设备上面运行RIP协议RIP协议是基于组播的相当于ip nhrp map 224.0.0.9 22.1.1.2的作用在DMVPN下组播和单播是分开处理的DMVPN默认情况下是不支持组播的
exit//隧道上起动态协议
router rip
version 2
no auto-summary
network 123.0.0.0
network 1.0.0.0
exit//Hub
show ip nhrp//Hub
show ip routeSpoke 1
en
conf ter
int tunnel 0
ip add 123.1.1.2 255.255.255.0
tunnel source 22.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1 //配置NHRP的server端的tunnel口地址他们是基于tunnel口来建立DMVPN的确定谁是Hub端//单播映射
ip nhrp map 123.1.1.1 11.1.1.2 //Hub端不会把自己的123.1.1.1对应11.1.1.2的映射发给Spoke端的仅仅是Spoke端给Hub端发只有在Spoke端请求的时候才会给他发//组播映射
ip nhrp map multicast 11.1.1.2 //只要是去往组播地址的数据外面都会加一层公网IP的报头11.1.1.2Hub端和Spoke端的流量分两种1.组播流量组播发送的一般是服务于路由协议的2.单播流量业务流量一对一发送的
exit//隧道上起动态协议
router rip
version 2
no auto-summary
network 123.0.0.0
network 2.0.0.0
exit
//Spoke 1
show ip nhrp//Spoke 1
show ip route为什么Hub的内网地址收到了对端Sopke 2 的内网地址怎么没收到
RIP的水平分割机制从一个接口收到的路由不会再从这个接口发送出去用于防环措施
此时我们需要关闭RIP协议的水平分割机制
en
conf ter
int tu 0
no ip split-horizon
endSpoke 2
en
conf ter
int tunnel 0
ip add 123.1.1.3 255.255.255.0
tunnel source 33.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1
ip nhrp map 123.1.1.1 11.1.1.2
ip nhrp map multicast 11.1.1.2
exit//隧道上起动态协议
router rip
version 2
no auto-summary
network 123.0.0.0
network 1.0.0.0
exit//Spoke 2
show ip nhrpSpoke 1 ping Spoke 2 的内网地址查表过程
ping 3.3.3.3
//Spoke 1
show ip route//Spoke 1
show ip nhrpSpoke1 ping 3.3.3.3先查路由表看到去往3.3.3.3的下一跳为123.1.1.1去往123.1.1.1从tunnel 0口出去进入tunnel 0口之后开始查NHRP表123.1.1.3对应的是33.1.1.2的一个映射封装
验证
当Spoke 1 ping Spoke 2的tunnel口时候,此时你就能看见动态获得映射关系
show ip nhrpNHRP的配置案例隧道之间使用EIGRP协议
要求彼此之间的环回口地址可以互通环回口模拟内网
Hub
en
conf ter
int tunnel 0
ip add 123.1.1.1 255.255.255.0
tunnel source 11.1.1.2
tunnel mode gre mutipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp map multicast dynamic
exit//在隧道上起动态协议
router EIGRP 100
no auto-summary
network 123.1.1.0 0.0.0.255
network 1.1.1.0 0.0.0.255
exit//关闭EIGRP的水平分割
int tunnel 0
no ip split-horizon eigrp 100 //关闭EIGRP 100的水平分割
exit//关闭EIGRP承载下一跳功能
int tunnel 0
no ip next-hop-self eigrp 100 //关闭EIGRP 100的承载下一跳
//Hub
show ip route此时Hub端收到了Spoke 1和Spoke 2的路由条目
Spoke 1
en
conf ter
int tunnel 0
ip add 123.1.1.2 255.255.255.0
tunnel source 22.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1
ip nhrp map 123.1.1.1 11.1.1.2
ip nhrp map multicast 11.1.1.2
exit//隧道上起动态协议
router EIGRP 100
no auto-summary
network 123.1.1.0 0.0.0.255
network 2.2.2.0 0.0.0.255
exit//Spoke 1
show ip route此时Spoke 1上只收到了Hub的路由条目没有收到对端Spoke 2的路由条目和RIP的情况相同解决方法在Hub的tunnel口上把EIGRP100的水平分割关掉水平分割关掉之后接着查看路由表
//Spoke 1
show ip route此时会发现去往3.3.3.3条目的下一条为123.1.1.1Spoke1去往Spoke2的3.3.3.3得经过Hub端,出现了次优路径不可能下面的分布去往任何一个分布数据都得经过总部这个就是是EIGRP的特性Spoke2把自己3.3.3.3的路由条目发给了Hub端Hub端接收到了这个路由条目又发给Spoke1路由按正常来说谁发给我的我收到的这个条目的下一跳地址就是谁按道理来说没问题但是在我们这个环境中就有问题了为了解决这个问题需要在Hub上面关闭承载下一跳功能让它恢复原有的下一跳功能关闭承载下一跳功能之后接着查看路由表
//Spoke 1
show ip route此时发现Spoke1去往3.3.3.3的下一条为123.1.1.3了
Spoke 2
en
conf ter
int tunnel 0
ip add 123.1.1.3 255.255.255.0
tunnel source 33.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1
ip nhrp map 123.1.1.1 11.1.1.2
ip nhrp map multicast 11.1.1.2
exit//隧道上起动态协议
router EIGRP 100
no auto-summary
network 123.1.1.0 0.0.0.255
network 3.3.3.0 0.0.0.255
exit//Spoke 2
show ip route此时Spoke 2上只收到了Hub的路由条目没有收到对端Spoke 1的路由条目
NHRP的配置案例隧道之间使用OSPF协议
要求彼此之间的环回口地址可以互通环回口模拟内网
Hub
en
conf ter
int tunnel 0
ip add 123.1.1.1 255.255.255.0
tunnel source 11.1.1.2
tunnel mode gre mutipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp map multicast dynamic
exit//在隧道上起动态协议
router ospf 100
router-id 1.1.1.1
net 1.1.1.0 0.0.0.255 a 0
net 123.1.1.0 0.0.0.255 a 0
exit//更改接口的网络类型
int tunnel 0
ip ospf network broadcast //更改tunnel 0接口的网络类型为广播
exit此时会发现每台设备上面都会有大量的报错信息 并且查看邻居时邻居会不停的变换 查看tunnel 0接口的状态
//Hub
show ip ospf interface tunnel 0参数信息查看
Network Type POINT-TO-POTINtunnel口的默认网络类型为点对点的网络类型只能一次性建立一个邻居但此时Hub端需要建立多个邻居关系不能是点对点的网络类型解决方法更改tunnel口的网络类型建立ospf邻居的设备都要修改因为ospf建立邻居需要都在同一个网络类型结构在Hub和Spoke这种网络结构的情况下需要让Hub为DR这就需要设备其他Spoke不参与选举DB和BD因为Spoke端都得把路由信息发给Spoke端由Hub端去做同步把建立邻居的端口的优先级设置为0就不会参与选举了如果Hub的tunnel口为广播类型Spoke1和Spoke2的tunnel为点对点类型此时会发现邻居起来了但是没有路由条目查看ospf数据库的1类LSA
//Spoke 1
show ip ospf 100 database router参数说明 Adv Router is not-reachable //表示通告路由器是不可达的如果看一类条目有这个错误信息大多数都是网络类型不同导致的 最后查看邻居建立的情况 此时会发现Hub已经是DR了并且Spoke1和Spoke2不参与选举
Spoke 1
en
conf ter
int tunnel 0
ip add 123.1.1.2 255.255.255.0
tunnel source 22.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1
ip nhrp map 123.1.1.1 11.1.1.2
ip nhrp map multicast 11.1.1.2
exit//在隧道上起动态协议
router ospf 100
router-id 2.2.2.2
net 2.2.2.0 0.0.0.255 a 0
net 123.1.1.0 0.0.0.255 a 0
exit//更改接口的网络类型
int tunnel 0
ip ospf network broadcast //更改tunnel 0接口的网络类型为广播
exit//设置接口优先级不参与选举DR和BDR
int tunnel 0
ip ospf priority 0
exit最后查看建立邻居的情况
//Spoke 1
show ip ospf neighborsSpoke 2
en
conf ter
int tunnel 0
ip add 123.1.1.3 255.255.255.0
tunnel source 33.1.1.2
tunnel mode gre multipoint
ip nhrp network-id 111
ip nhrp authentication cisco
ip nhrp nhs 123.1.1.1
ip nhrp map 123.1.1.1 11.1.1.2
ip nhrp map multicast 11.1.1.2
exit//在隧道上起动态协议
router ospf 100
router-id 3.3.3.3
net 3.3.3.0 0.0.0.255 a 0
net 123.1.1.0 0.0.0.255 a 0
exit//更改接口的网络类型
int tunnel 0
ip ospf network broadcast //更改tunnel 0接口的网络类型为广播
exit//设置接口优先级不参与选举DR和BDR
int tunnel 0
ip ospf priority 0
exit最后查看建立邻居的情况
//Spoke 2
show ip ospf neighbors基于IPSEC
基于上面的配置开始做IPSec Hub
en
conf ter
crypto isakmp policy 10
encryption 3des
hash md5
authentication pre-share
group 2
exit
crypto isakmp key 0 cisco address 0.0.0.0 //配置PSK此时不能能够确定Spoke端是多少假设有100个Spoke端照之前的配置就跟做L2L差不多
crypto ipsec transform-set X esp-md5-hmac esp-3des//创建一个IPSec简档名为DMVPN
crypto ipsec profile DMVPN
set transform-set X
exit//挂载接口
int tunnel 0
tunnel protection ipsec profile DMVPN
end//Spoke 1
show crypto engine connections active此时我都没有发送数据从哪里来的加密解密的数据RIP的周期跟新30/s更新一次
Spoke 1
en
conf ter
crypto isakmp policy 10
encryption 3des
hash md5
authentication pre-share
group 2
exit
crypto isakmp key 0 cisco address 0.0.0.0
crypto ipsec transform-set X esp-md5-hamc esp-3des
exit
crypto ipsec profile DMVPN
set transform-set X
exit
int tunnel 0
tunnel protection ipsec profile DMVPN
end//Spoke1
show crypto isakmp saSpoke 2
en
conf ter
crypto isakmp policy 10
encryption 3des
hash md5
authentication pre-share
group 2
exit
crypto isakmp key 0 cisco address 0.0.0.0
crypto ipsec transform-set X esp-md5-hamc esp-3des
exit
crypto ipsec profile DMVPN
set transform-set X
exit
int tunnel 0
tunnel protection ipsec profile DMVPN
end说说DMVPN是一个怎么样的形态 分公司和总公司之间都建立隧道但是分公司和分公司之间也可能有数据传输此时总公司是固定的分公司不是固定的所有分公司和分公司之间不可能每一个都要建立隧道数量太多了所以让分公司和分公司之间一旦有需要的时候才建立按需链路分公司和分公司之间没有数据传输的时候是不建立隧道的有数据传输的时候才动态的建立一条隧道这条隧道又是如何产生的呢 分公司和总公司之间有连接从总公司这里获取到另外一个分公司的tunnel对应的公网IP这里牵扯到一个map映射关系这个映射关系就是总公司有所有分公司tunnel口对应的公网IP一旦分公司有响应要跟另外一个分公司建立按需链路的时候就要向总公司去请求这个的一个映射关系这时数据再传输的时候数据就是通过DMVPN来建立的通过IPSec来加密的这个就是动态多点VPN 这个按需链路的请求又怎么配置呢 这就需要用到NHRP下一跳解析协议NHRP最主要的作用总公司和分公司之间如何进行map的一个响应关系