H3C MSR NAT66配置指北

cb0a13ee39753c2c32e1b06d64946712.gif

正文共:1456 字 14 图,预估阅读时间:1 分钟

通过前面的介绍企业路由器配置IPv6家用宽带的PPPoE拨号示例,想必你已经可以实现让MSR路由器通过PPPoE拨号接入IPv6网络。

正常来讲,通过前面的配置,我们内网的客户端也可以自动获取IPv6地址,并且可以访问互联网。

fe249ae68e01003ee818245a222f4509.png

但是,在前面的配置中我们也看到了,当Client设备拨号成功后,Server设备会通过DHCPv6协议为Client分配一个代理前缀,再结合接口配置的IPv6前缀,匹配接口剩余的IPv6地址位之后,组合之后的地址才是接口真正的IPv6地址。这里面的知识点就是,Client设备获取到的IPv6前缀可能会变化(当然,我目前使用中还没发生变化)。与此同时,如果内网已经按照一定规则配置了IPv6地址,不想通过前面的方式再调整IPv6地址,那可能就需要用到NAT66功能了。

NAT66又被称为NPTv6(IPv6-to-IPv6 Network Prefix Translation,IPv6-to-IPv6网络前缀转换),从名称中可以看出,NAT66用于将IPv6报文中的IPv6地址前缀转换为另一个IPv6地址前缀,可提供NAT66源地址转换功能和目的地址转换功能。

除了我们提到的内部网络和外部网络之间的源地址转换功能,NAT66还可以用于冗余和负载分担、多宿主等场景。

IPv4的NAT支持PAT和NO-PAT,而IPv6的NAT66则仅支持NO-PAT模式,不能基于端口进行配置,而且连地址都不能固定,有点类似IPv4中NAT地址池的意思NAT配置—常见问题

还是基于上次的实验环境,在未配置NAT66时,从Client设备无法直接访问互联网。

02eb0d7a159578ed6a1614e007727af3.png

道理很简单,这里的IPv6地址2020:2021:2022:18:18:18:0:1是我们虚构的,当这个报文在互联网上传播时,要么没有对应的路由,要么被路由到其他配置了这个IPv6地址的设备上了,跟在IPv4的私有网络中配置公网IP地址是一样的。

要解决这个问题,第一种方式,如果这个IPv6前缀是我们正式申请的,那在运营商侧就会有对应的路由,可以将外部访问该地址段的流量路由到我们的设备上,我们只需在出口设备上添加路由条目即可。

显然,我们不属于第一种方式,那就需要配置NAT66来解决了,将内网的IPv6前缀转换为运营商自动分配的IPv6前缀,使得公网流量可以路由到出口设备。

a8835e21e06fc5f8a41ec7e13e177076.png

首先,我们的Client设备是二次分配的IPv6地址,等同于配置的内部网络,此时出口设备上是没有回程路由的,现在Client连MSR的接口地址都访问不到。

3ca9bec64652f21761c201b344054866.png

我们首先在出口设备上添加去往内网的回程路由IPv6静态路由配置

ipv6 route-static 2020:2021:2022:: 56 240E:304:8CDA:301:20C:29FF:FE0B:96B7

9862c8f44ffb097ad8c7e182a81104df.png

然后再在MSR的拨号口下添加NAT66配置就可以了。

nat66 prefix source 2020:2021:2022:: 56 240E:304:8CDA:300:: 56

91ab3e2e95851afe5053f6e470cdc604.png

验证Client设备访问公网。

6144ef32506c9cc0ab7780b24aa3c318.png

访问成功。

其实,在这里我也测试了在Server设备的上联口配置NAT66,但是无法生效,应该是该设备只有一个IPv6地址,没有可用的IPv6前缀的原因IPv6从入门到精通

参考我们的配置命令,按照配置规范,需要保证转换前后的源IPv6地址前缀长度一致,我们这里都使用的56位长度,其实这也是从公网获取的前缀长度。

f9290912ad76822a660900ecb37832d7.png

而且,在配置时,同一个接口下的内网地址前缀和外网地址前缀必须是一对一的唯一映射关系,不能冲突。

362f5dabee698636ad3e3ccddc57dc39.png

如果配置冲突了,会有告警信息提示是转换前的前缀冲突了,还是转换后的前缀冲突了。当然,不同接口下,不同的内网地址前缀也不能映射到同一个外网地址前缀。

除此之外,转换后的源IPv6地址前缀不能与NAT66设备的外网地址前缀以及目的外网地址前缀相同,这个很好理解,不能转换了又没转换。

最后,我们看一下这个IPv6地址前缀长度到底可以配置成多少。测试方法也很简单,我们取Client设备ping测时携带的源地址2020:2021:2022:18:18:18:0:1,以及出口设备的接口地址240E:304:8CDA:300::1,配置时使用调整前缀长度的方式,使设备自动计算IPv6地址前缀即可。

首先试一下短于56是否可以。

nat66 prefix source 2020:2021:2022:18:18:18:0:1 48 240E:304:8CDA:300::1 48

75f2fc0316ee1244b075d92f35481b20.png

可以看到,实际转换后的地址已经不属于240E:304:8CDA:300::/56了,报文没回来。

再试试长于56是否可以。

nat66 prefix source 2020:2021:2022:18:18:18:0:1 64 240E:304:8CDA:300::1 64

15577d379b4ba406990f7145d90cc3d7.png

转换后的地址可以正常被转发回来,业务正常,但是这里的NAT66会话统计不准确。

我们试一下120位长度是否可以。

nat66 prefix source 2020:2021:2022:18:18:18:0:1 120 240E:304:8CDA:300::1 120

0a1114590f757e43469ab06fce2a7e2f.png

没有问题,只不过转换的IPv6地址成了接口地址。

既然如此,128位的前缀长度可以吗?

nat66 prefix source 2020:2021:2022:18:18:18:0:1 128 240E:304:8CDA:300::1 128

c174681e80a762a510dcfd1d24ed9519.png

也可以正常访问,可见前缀长度配置为56-128位都是可以的。

那在Server设备上配置128位的前缀转换可行吗?

nat66 prefix source 2020:2021:2022:18:18:18:0:1 128 240E:304:8CDA:301:20C:29FF:FE0B:96B7 128

6440f7f501cdf09113d1608eaef950c6.png

如此看来,当IPv6地址前缀长度配置成128位时,也就间接变成了PAT了。

312a88ef048a5260a9d70b09c9697d5c.gif

长按二维码
关注我们吧

00ffa6825f35583d8fd1acc9d19edd49.jpeg

9bec8397e7dc1f98f65ceaee40b49d87.png

配置PPPoEv6服务器为终端分配IPv6地址

企业路由器配置IPv6家用宽带的PPPoE拨号示例

在Ubuntu系统手撸一个自动创建SSL证书的SHELL脚本

在Ubuntu系统手撸一个自动搭建openVPN服务端的SHELL脚本

与CentOS用户态完全兼容的TencentOS你用过没?

如何使用Python提取Excel中固定单元格的内容

使用Python批量处理Excel的内容

使用Python脚本实现SSH登录设备

将iStoreOS部署到VMware Workstation

将iStoreOS部署到VMware ESXi变成路由器

对比华三设备配置,讲解Linux主机如何配置strongSwan

ufw命令简介

Ubuntu配置openVPN服务端和客户端

Ubuntu一键导入openVPN配置文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Danileaf_Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值