一个局域网通过NAT访问另一个地址重叠的局域网(IP方式访问)
正文共:1335 字 7 图,预估阅读时间:4 分钟
现在,我们已经可以通过调整两台设备的组合配置(地址重叠时,用户如何通过NAT访问对端IP网络?)或仅调整一台设备的配置(仅操作一台设备,如何实现本地访问另一个相同网段的私网?),来实现一个局域网通过IP地址访问另一个地址重叠的局域网。
之前的案例中,我们模拟的是专线互访,但是实际应用中,专线场景可能比较少的出现这种情况。但是现在的SD-WAN场景(SD-WAN网络中的IPsec流量是怎么转发的?我给你简单演示一下)就不一样了,出现的概率就高了很多。那在SD-WAN网络中,如果出现这种问题要怎么解决呢?
组网需求
1、某公司有两个办公点,内网网段地址均为10.1.1.0/24,现在通过SD-WAN方案将两个办公点内网打通,但是因为有生产业务,不能改变主机地址。
2、该公司拥有组网图中所有地址段的所有地址的使用权。
3、需要实现,PCA能够访问PCB。
组网图
一个局域网通过NAT访问另一个地址重叠的局域网(IP访问)
实验环境
Windows 10专业版(1909-18363.1556,16 GB内存)
HCL 3.0.1
MSR 36-20(Version 7.1.064, Release 0821P11)
配置思路
首先回顾RFC2401(IPsec:互联网协议的安全架构),我们知道IPsec仅仅是一种安全封装,他是在接口上对报文做安全封装,自身并不是接口。如果我们将前两个案例中的中间线路替换为IPsec,则在设备上行口不能再做NAT转换了,这种场景我们已经有了结论,无法实现访问。
那我们可以想一下之前的IPsec和GRE组合使用的场景,我们可以将RTA和RTB使用GRE打通,再使用IPsec进行封装即可。
配置步骤
按照配置思路,直接上使用GRE+NAT实现访问的配置,此时尚未做IPsec封装。
RTA
#
sysname RTA
#
nat static outbound 10.1.1.2 20.1.1.2
#
policy-based-route NAT permit node 1
if-match acl 3402
apply next-hop 13.1.1.3
#
interface GigabitEthernet0/0
ip address 10.1.1.1 255.255.255.0
nat static enable
ip policy-based-route NAT
#
interface GigabitEthernet0/1
ip address 12.1.1.1 255.255.255.0
#
interface Tunnel1 mode gre
ip address 13.1.1.1 255.255.255.0
source 12.1.1.1
destination 23.1.1.3
nat outbound
#
ip route-static 23.1.1.0 24 12.1.1.2
#
acl advanced 3402
rule 0 permit ip source 10.1.1.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
ISP
#
sysname ISP
#
interface GigabitEthernet0/0
ip address 12.1.1.2 255.255.255.0
#
interface GigabitEthernet0/1
ip address 23.1.1.2 255.255.255.0
RTB
#
sysname RTB
#
interface GigabitEthernet0/0
ip address 10.1.1.1 255.255.255.0
#
interface GigabitEthernet0/1
ip address 23.1.1.3 255.255.255.0
#
interface Tunnel2 mode gre
ip address 13.1.1.3 255.255.255.0
source 23.1.1.3
destination 12.1.1.1
#
ip route-static 12.1.1.0 24 23.1.1.2
验证配置
测试从PCA使用地址20.1.1.2访问PCB,发现可以访问,TTL值为253。
在RTA上查看报文处理过程。
1、从接口G0/0收到报文,源地址10.1.1.2,目的地址20.1.1.2;
2、在入接口上做NAT转换,源地址10.1.1.2,目的地址10.1.1.2;
3、匹配策略路由,将报文转发到接口Tunnel1;
4、在出接口上做NAT转换,源地址13.1.1.1,目的地址10.1.1.2,并发出报文;
5、从接口Tunnel1收到报文,源地址10.1.1.2,目的地址13.1.1.1;
6、匹配接口Tunnel1的NAT会话,做NAT转换,源地址10.1.1.2,目的地址10.1.1.2,将报文转发到接口G0/0;
7、匹配接口G0/0的NAT会话,做NAT转换,源地址20.1.1.2,目的地址10.1.1.2,并发出报文。
此时看一下RTA发出的报文,报文内容一览无遗。
那接下来就是做IPsec封装了,这里我们应该用GRE over IPsec,而且我们也看到了保护流量应该是接口Tunnel1的地址(13.1.1.1/24)到对方私网(10.1.1.2/24)的流量。直接上配置:
RTA
#
acl advanced 3403
rule 0 permit ip source 13.1.1.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
#
ipsec transform-set TRAN
esp encryption-algorithm 3des-cbc
esp authentication-algorithm sha1
#
ipsec policy nat 10 isakmp
transform-set TRAN
security acl 3403
remote-address 13.1.1.3
#
ike keychain KEY
pre-shared-key address 13.1.1.3 24 key simple nat
#
interface Tunnel1 mode gre
ipsec apply policy nat
RTB
#
acl advanced 3403
rule 0 permit ip source 10.1.1.0 0.0.0.255 destination 13.1.1.0 0.0.0.255
#
ipsec transform-set TRAN
esp encryption-algorithm 3des-cbc
esp authentication-algorithm sha1
#
ipsec policy nat 10 isakmp
transform-set TRAN
security acl 3403
remote-address 13.1.1.3
#
ike keychain KEY
pre-shared-key address 13.1.1.1 24 key simple nat
#
interface Tunnel2 mode gre
ipsec apply policy nat
查看RTA发出的报文情况。
可以看到,有ISAKMP主模式协商的过程,然后是ESP封装报文。
查看RTA上的IKE SA信息。
查看RTA上的IPsec SA信息。
怎么样?你学废了吗?
后台回复“20211213”获取本案例的HCL工程文件。
长按二维码
关注我们吧
仅操作一台设备,如何实现本地访问另一个相同网段的私网?
地址重叠时,用户如何通过NAT访问对端IP网络?
秀啊!Win 11竟然教我怎么使用Windows!
IKE中NAT-Traversal的协商
多分支NAT穿越场景下通过POP节点实现分支间的IPsec加密互联
NAT穿越场景下怎么实现从总部到分支的访问?