DPD
死亡对等体检测(dead peer detection),检查对端IKE SA(iskmp sa)是否存在。当隧道出现异常,检测出异常重新发起协商,维持隧道。
作用:DPD解决隧道黑洞问题,用于检查第一阶段是否生效;若检查第一阶段的IKE SA断开,则不会再发出DPD包
检查机制
周期发送
按需发送(空闲计时器)
DPD检查依赖超时计数器,默认5次不回包,则删除本地SA
IPSec的NAT问题
NAT会破坏IPSec的完整性
具体场景:当ipsec设备没有部署在企业边界,而是部署在企业内网时,ipsec的通信地址会被边界NAT设备做地址转换,这种情况下,需要考虑ipsec和nat的兼容性
(1)详细分析IPSEC在第一阶段和第二阶段与NAT具体兼容情况:
第一阶段的主模式
第一阶段的野蛮模式
第二阶段的ESP传输模式
第二阶段的ESP隧道模式
第二阶段AH传输模式
第二阶段AH隧道模式
第一阶段的主模式:第5、6包的认证ID,由于NAT破坏无法完成身份认证
第一阶段的野蛮模式:ID可以自定义为字符串,NAT无法破坏,可正常完成第一阶段身份认证
第二阶段的AH的传输模式和隧道模式:AH协议会校验外层IP地址,无论是传输还是隧道NAT都回转换外层IP地址,完整性都会被破坏,AH协议无法与NAT兼容。
第二阶段的ESP的隧道模式与传输模式:ESP不会对外层IP做认证或校验,所以完整算法不会被NAT破坏,但是TCP会进行头部校验
(2)伪首部校验
NAT在修改IP地址的时候也要修改伪首部校验和,这样就不会出现伪首部校验失败的问题,但ESP将加密封装将4层加密后,NAT就无法修改伪首部校验和,则会导致校验失败。
ESP的传输模式会导致伪首部校验失败
ESP的隧道模式,伪首部针对的是原始IP头,NAT转换的是新IP头,不存在校验失败的问题,ESP隧道模式可以与NAT兼容
(3)结论
结论一:AH传输模式和隧道模式都不支持ANT;
结论二:ESP的传输模式不支持NAT,IP头不做校验
(标准的IKE SA的主模式使用IP地址作为身份ID,nat会破坏IP地址故而不支持主模式,仅支持野蛮模式)
NAT环境下的IPSec配置 --- 野蛮模式 + ESP的隧道模式
IPSEC的多VPN问题
(ESP加密数据 -- ESP协议没有端口号)
以上问题是IPSEC在NAT环境下用野蛮模式和ESP隧道模式下会遇到的问题
NAT环境下IPSEC最终解决方案:NAT-T(NAT穿透)技术,改技术规定在NAT模式下IPSEC的IKE SA阶段使用目的端口UDP 500或4500作为端口号,源端口允许被修改(这种情况下防火墙写策略时不要规定其源端口号),IPSEC SA数据加密流传输阶段规定使用目的端口UDP 4500来传输ESP加密流,源端口允许被修改,解决了ESP没有端口号的问题。
华为与思科的产品都默认开启NAT-T技术;若需要对方主动协商,本端在NAT设备上需要配置静态NAT映射
nat static protocol udp global 100.1.1.1 500 inside 10.100.1.1 500 nat static protocol udp global 100.1.1.1 4500 inside 10.100.1.1 4500
附:IPSEC不支持动态协议
GRE over IPSEC
(1)背景:
IPSEC具有可靠性,完整性,机密性,也有抗重放功能,安全性高。但是IPSEC不支持组播,在IPSEC隧道中,只能通过写静态路由来引导数据包。如果私网主机网段很多,意味着得一条一条写静态路由。
GRE有很牛的隧道技术,传播速度快,支持组播技术。但是GRE不支持加密,传输数据别人都能看见,安全性不高。
解决问题:GRE隧道传输的同时,IPSEC为它保驾护航
(2)缺陷:
图:企业典型的Hub-Spoke组网(配置DSVNP之前)
如上图,如果一个公司又很多分支站点,采用GRE over IPSec的话会存在如下缺点:
IPSec隧道集中在Hub点,所有流量都穿越Hub点。
所有流量通过总部封装和解封装时,会引入额外的网络延时。
每增加一个新的Sopke点,Hub点都必须被配置。
若Spoke点的公网地址是动态变化的,部署点到点的GRE会存在问题。
DSVPN
(1)简介
动态智能VPN(Dynamic Smart Virtual Private Network),简称DSVPN。是一种在Hub-Spoke组网方式下为公网地址动态变化的分支之间建立VPN隧道的解决方案。
DSVPN是华为私有协议
(2)目的
GRE over IPSEC缺点比较多
流量都需要经过HUB
增加分部都需要配置
分部非固定IP地址
通过将下一跳解析协议NHRP(Next Hop Resolution Protocol)和mGRE(multipoint Generic Routing Encapsulation)技术与IPSec相结合解决了GRE over IPSec的缺陷:
DSVPN通过NHRP协议动态收集、维护和发布各节点的公网地址等信息,解决了源分支无法获取目的分支公网地址的问题,从而可在分支与分支之间建立动态VPN隧道,实现分支与分支间的直接通信,进而减轻总部的负担、避免网络延时。
DSVPN借助mGRE技术,使VPN隧道能够传输组播报文和广播报文,并且一个Tunnel接口可与多个对端建立VPN隧道,减少了配置VPN隧道的工作量;在新增分支或分支公网地址发生变化时,也能自动维护总部与分支之间的隧道关系,而不用调整总部的隧道配置,使得网络维护变得更智能化。
图:企业Hub-spoke组网(配置DSVPN之后)
(3)典型网络架构:
企业通过总部Hub端与多个分支Spoke相连,Hub端使用静态公网地址,Spoke可以使用动态的公网地址。在该网络中,当源Spoke需要向目的Spoke发送数据报文时,源Spoke将通过与Hub之间的静态mGRE隧道交换NHRP协议获取目的Spoke的公网地址,并与目的Spoke建立动态的mGRE隧道。隧道建立完成后,Spoke与Spoke之间的数据报文将通过该动态mGRE隧道直接发送给对方,不载经过总部Hub中转。
(4)配置:
公网划分:
[ISP]int g0/0/0 [ISP-GigabitEthernet0/0/0]ip address 100.1.12.2 255.255.255.0 [ISP]int g0/0/1 [ISP-GigabitEthernet0/0/1]ip add 100.1.23.2 24 [ISP]int g0/0/2 [ISP-GigabitEthernet0/0/2]ip add 100.1.24.2 24 [ISP]int g4/0/0 [ISP-GigabitEthernet4/0/0]ip add 100.1.25.2 24 [ISP]int g4/0/1 [ISP-GigabitEthernet4/0/1]ip add 100.1.26.2 24 [ISP]int g4/0/2 [ISP-GigabitEthernet4/0/2]ip add 100.1.27.2 24 [ISP]int g4/0/3 [ISP-GigabitEthernet4/0/3]ip add 100.1.28.2 24 [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip add 100.1.12.1 24 [R3]int g0/0/0 [R3-GigabitEthernet0/0/0]ip ad 100.1.23.1 24 [R4]int g0/0/0 [R4-GigabitEthernet0/0/0]ip add 100.1.24.1 24 [r5]int g0/0/0 [r5-GigabitEthernet0/0/0]ip add 100.1.25.1 24 [r6]int g0/0/0 [r6-GigabitEthernet0/0/0]ip add 100.1.26.1 24 [r7]int g0/0/0 [r7-GigabitEthernet0/0/0]ip add 100.1.27.1 24 [r8]int g0/0/0 [r8-GigabitEthernet0/0/0]ip add 100.1.28.1 24
环回地址:
[R1]int lo0 [R1-LoopBack0]ip add 10.1.1.1 24 [R3]int lo0 [R3-LoopBack0]ip add 10.3.3.3 24 [R4]int lo0 [R4-LoopBack0]ip add 10.4.4.4 24 [r5]int lo0 [r5-LoopBack0]ip add 10.5.5.5 24 [r6]int lo0 [r6-LoopBack0]ip add 10.6.6.6 24 [r7]int lo0 [r7-LoopBack0]ip add 10.7.7.7 24 [r8]int lo0 [r8-LoopBack0]ip add 10.8.8.8 24
私网划分:
[R1]int t0/0/0 [R1-Tunnel0/0/0]ip add 172.16.1.1 24 [R3]int t0/00/0 [R3-Tunnel0/0/0]ip ad 172.16.1.3 24 [R4]int t0/0/0 [R4-Tunnel0/0/0]ip add 172.16.1.4 24 [r5]int t0/0/0 [r5-Tunnel0/0/0]ip add 172.16.1.5 24 [r6]int t0/0/0 [r6-Tunnel0/0/0]ip add 172.16.1.6 24 [r7]int t0/0/0 [r7-Tunnel0/0/0]ip add 172.16.1.7 24 [r8]int t0/0/0 [r8-Tunnel0/0/0]ip add 172.16.1.8 24
使得公网通配置静态路由:
[R1]ip route-static 0.0.0.0 0 100.1.12.2 [R3]ip route-static 0.0.0.0 0 100.1.23.2 [R4]ip route-static 0.0.0.0 0 100.1.24.2 [r5]ip route-static 0.0.0.0 0 100.1.25.2 [r6]ip route-static 0.0.0.0 0 100.1.26.2 [r7]ip route-static 0.0.0.0 0 100.1.27.2 [r8]ip route-static 0.0.0.0 0 100.1.28.2
测试连通性:
(首先配置R1为server,R3-4为一级分支)
[1] 开启隧道,配置gre
[R1]int t0/0/0 [R1-Tunnel0/0/0]tunnel-protocol gre p2mp [R1-Tunnel0/0/0]gre key 100 --> 配置标识key,防止和公网中其他gre混用 [R1-Tunnel0/0/0]nhrp network-id 123 --> 配置标识network-id,防止和公网中nhrp混用 [R1-Tunnel0/0/0]nhrp entry multicast dynamic --> R1为server端,自动为client配置映射 [R1-Tunnel0/0/0]source g0/0/0 [R3]int t0/0/0 [R3-Tunnel0/0/0]tunnel-protocol gre p2mp [R3-Tunnel0/0/0]gre key 100 [R3-Tunnel0/0/0]nhrp entry 172.16.1.1 100.1.12.1 register --> 自动注册server端的隧道地址和公网地址 [R3-Tunnel0/0/0]nhrp network-id 123 [R3-Tunnel0/0/0]source g0/0/0 [R4]int t0/0/0 [R4-Tunnel0/0/0]tunnel-protocol gre p2mp [R4-Tunnel0/0/0]source GigabitEthernet0/0/0 [R4-Tunnel0/0/0]gre key 100 [R4-Tunnel0/0/0]nhrp network-id 123 [R4-Tunnel0/0/0]nhrp entry 172.16.1.1 100.1.12.1 register
查看配置情况:
[2] 进行OSPF宣告
将网络类型选为p2mp
[R1]int t0/0/0 [R1-Tunnel0/0/0]ospf network-type p2mp [R3]int t0/0/0 [R3-Tunnel0/0/0]ospf network-type p2mp [R3-Tunnel0/0/0]ospf dr-priority 0 --> 让r3不在进行dr的选举 [R4]int t0/0/0 [R4-Tunnel0/0/0]ospf network-type p2mp [R4-Tunnel0/0/0]ospf dr-priority 0 --> 让r4不在进行dr的选举
宣告
[R1]ospf 1 router-id 1.1.1.1 [R1-ospf-1]a 0 [R1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [R1-ospf-1-area-0.0.0.0]network 10.1.1.1 0.0.0.0 [R3]ospf 1 router-id 3.3.3.3 [R3-ospf-1]a 0 [R3-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [R3-ospf-1-area-0.0.0.0]network 10.3.3.3 0.0.0.0 [R4]ospf 1 router-id 4.4.4.4 [R4-ospf-1]a 0 [R4-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [R4-ospf-1-area-0.0.0.0]network 10.4.4.4 0.0.0.0
查看建邻情况
[4] p2mp的网络类型中,让R3和R4直接通,需在R1上开启redirect(重定向),在R3和R4上开启shortcut
[R1-Tunnel0/0/0]nhrp redirect [R3-Tunnel0/0/0]nhrp shortcut [R4-Tunnel0/0/0]nhrp shortcut
(配置r5-8为二级分支)
[1] 首先为R3,R4配置server的标志
[R3-Tunnel0/0/0]nhrp entry multicast dynamic [R4-Tunnel0/0/0]nhrp entry multicast dynamic
[2] 开启隧道,配置gre
[r5]int t0/0/0 [r5-Tunnel0/0/0]tunnel-protocol gre p2mp [r5-Tunnel0/0/0]gre key 100 [r5-Tunnel0/0/0]source g0/0/0 [r5-Tunnel0/0/0]nhrp network-id 123 [r5-Tunnel0/0/0]nhrp entry 172.16.1.3 100.1.23.1 register [r5-Tunnel0/0/0]ospf network-type p2mp --> 将ospf网络类型改为p2mp [r6]int t0/0/0 [r6-Tunnel0/0/0]tunnel-protocol gre p2mp [r6-Tunnel0/0/0]source GigabitEthernet0/0/0 [r6-Tunnel0/0/0]gre key 100 [r6-Tunnel0/0/0]nhrp network-id 123 [r6-Tunnel0/0/0]nhrp entry 172.16.1.3 100.1.23.1 register [r6-Tunnel0/0/0]ospf network-type p2mp [r7]int t0/0/0 [r7-Tunnel0/0/0]ospf network-type p2mp [r7-Tunnel0/0/0]tunnel-protocol gre p2mp [r7-Tunnel0/0/0]gre key 100 [r7-Tunnel0/0/0]nhrp network-id 123 [r7-Tunnel0/0/0]nhrp entry 172.16.1.4 100.1.24.1 register [r7-Tunnel0/0/0]source g0/0/0 [r8]int t0/0/0 [r8-Tunnel0/0/0]tunnel-protocol gre p2mp [r8-Tunnel0/0/0]source GigabitEthernet0/0/0gre key 100 [r8-Tunnel0/0/0]ospf network-type p2mp [r8-Tunnel0/0/0]nhrp network-id 123 [r8-Tunnel0/0/0]nhrp entry 172.16.1.4 100.1.24.1 register
[3] p2mp的网络类型中,让r5和r6、直接通,需在R3、R4上开启redirect(重定向),在R3和R4上开启shortcut
[r5-Tunnel0/0/0]nhrp shortcut [r6-Tunnel0/0/0]nhrp shortcut [r7-Tunnel0/0/0]nhrp shortcut [r8-Tunnel0/0/0]nhrp shortcut
[4] 进行ospf宣告
[r5]ospf 1 router-id 5.5.5.5 [r5-ospf-1]a 0 [r5-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [r5-ospf-1-area-0.0.0.0]network 10.5.5.5 0.0.0.0 [r6]ospf 1 router-id 6.6.6.6 [r6-ospf-1]a 0 [r6-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [r6-ospf-1-area-0.0.0.0]network 10.6.6.6 0.0.0.0 [r7]ospf 1 router-id 7.7.7.7 [r7-ospf-1]a 0 [r7-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [r7-ospf-1-area-0.0.0.0]network 10.7.7.7 0.0.0.0 [r8]ospf 1 router-id 8.8.8.8 [r8-ospf-1]a 0 [r8-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 [r8-ospf-1-area-0.0.0.0]network 10.8.8.8 0.0.0.0
查看建邻情况:
[5] 在R3,R4上开启redirect
[R3]int t0/0/0 [R3-Tunnel0/0/0]nhrp redirect [R4]int t0/0/0 [R4-Tunnel0/0/0]nhrp redirect
[6] 测试
进行ipsec配置
[R1]ike proposal 1 // 安全提议编号 [R1-ike-proposal-1]encryption-algorithm aes-cbc-128 // 加密算法 [R1-ike-proposal-1]dh group5 // 非对称加密算法强度 [R1-ike-proposal-1]authentication-algorithm md5 // 认证算法 [R1-ike-proposal-1]sa duration 3600 [R1]ipsec proposal yyy // ipsec提议 [R1-ipsec-proposal-yyy]encapsulation-mode transport [R1-ipsec-proposal-yyy]transform ah-esp // 选择传输协议 [R1-ipsec-proposal-yyy]ah authentication-algorithm sha1 // 认证算法 [R1-ipsec-proposal-yyy]esp authentication-algorithm sha1 // 认证算法 [R1-ipsec-proposal-yyy]esp encryption-algorithm 3des // 加密算法 [R1]ike peer yyy v1 // ike认证名称和版本 [R1-ike-peer-yyy]exchange-mode aggressive // 模式选择 [R1-ike-peer-yyy]pre-shared-key simple 999 // 编译预共享密钥 [R1-ike-peer-yyy]ike-proposal 1 // 调用安全提议 [R1-ike-peer-yyy]local-id-type name // 采用name定义 [R1-ike-peer-yyy]remote-name kkk // 远端name为a1 [R1]ipsec profile yyy [R1-ipsec-profile-yyy]ike-peer yyy // 调用peer [R1-ipsec-profile-yyy]proposal yyy // 调用提议 在R3-4,r5-8上相同的配置
隧道调用profile
[R1-Tunnel0/0/0]ipsec profile yyy [R3-Tunnel0/0/0]ipsec profile yyy [R4-Tunnel0/0/0]ipsec profile yyy [r5-Tunnel0/0/0]ipsec profile yyy [r6-Tunnel0/0/0]ipsec profile yyy [r7-Tunnel0/0/0]ipsec profile yyy [r8-Tunnel0/0/0]ipsec profile yyy
测试
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/4791.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~