在上一篇分享中,我向大家介绍了NSX-T的逻辑路由组件与基本配置,现在让我们再来回顾一下这些内容:
- ▪NSX-T的路由器可以分为Tier-0和Tier-1两个级别;在很多项目中,T0更多是扮演运营商的角色,而T1是租户级别的逻辑路由器。
- ▪逻辑路由器(后文简称LR),在同一个级别,可以有两种不同的角色,分为服务路由器(后文简称SR)和分布式路由器(DR),对应NSX-V架构中的边界服务网关ESG和分布式逻辑路由器DLR。
- ▪想要实现物理网络与逻辑网络之间的互通,必须借助于T0SR角色;如果用户环境中是用T1DR实现逻辑网络的三层连通,还需要有T0DR角色,T1DR无法直接连接到T0SR。
在今天的分享中,我将继续上一篇未尽的配置,完成物理网络与逻辑网络之间的互通。不过,想要实现这一点,可以使用静态路由和动态路由两种不同的方式。现在,我们先来看看如何使用和配置静态路由。
如下图所示,这是当前环境的拓扑:
- ▪T1LR(T1DR角色)实现了Web、App、DB逻辑网络的三层互访
- ▪T1LR和T0LR之间属于内部互联,自动创建了一个Intra-Tier逻辑交换机,并分配了100.64.0.0/16的网络地址
- ▪T0DR和T0SR之间同属于内部互联,自动创建了一个Inter-Tier逻辑交换机,并分配了169.254.0.0/16的网络地址
- ▪T0LR(T0SR)上联到物理网络,上联地址为172.18.11.100/24,对接到物理核心172.18.11.10/24
0x07:配置静态路由
===================
看完了拓扑,我们一起来完成NSX-T的配置,并验证物理-逻辑网络最终实现的互通效果:
首先,明确很重要的一点:
在NSX-T的场景中,Inter-Tier-Link(100.64.0.0/24)与Intra-Tier-Link(169.254.0.0/16)不需要考虑路由设置;因此,对于T1LR,直接配置路由通告即可。
- 选择T1-LR_T1,点击路由-路由通告
- 激活路由通告,并通告所有连接的路由,即T1-dev-web-tier、T1-dev-app-tier和T1-dev-db-tier
- 等待片刻后,在“已通告的网络”,可以看到3网络已经被正确通告给T0LR
- 在完成路由通告后,web-01a已经可以ping通T0LR的Uplink接口地址,即172.18.11.100
注:暂时忽略Ping DUP!告警
但是,由于T0LR与上联设备之间未配置静态路由,因此无法Ping通T0LR的网关地址和其他外部网络地址
- 为T0LR配置设置静态路由
选择T0-LR_T1-T2,点击配置-静态路由,添加静态路由条目
- 添加一条默认静态路由,下一跳地址为Uplink接口地址的网关:172.18.11.10
- 在完成静态路由设置后,编辑T0DR的路由重分发配置
激活T0-LR_T1-T2的路由重分发状态
- 对于T0LR而言,路由重分发是通过配置文件定义的,点击添加,创建新的分发条件
- 选择将T0LR已连接的网络和静态路由重分发给T1LR
- 通过web-01a测试,发现依旧无法访问外部网络
注:由于上联路由器没有配置到T1-dev-web-tier等逻辑网络的路由,因此这属于正常的现象
- 在上层路由器添加静态路由,如:10.0.0.0/16 NH=172.18.11.100
- 此时外部网络可以正常访问逻辑网络
- 同样地,逻辑网络也能正常访问外部网络;至此,我已经借助静态路由,实现物理-逻辑网络的三层互访,达成了本次演示的目的。
- 在任何一台主机节点,进入nsx命令行,查看路由表
# nsxcli > get logical-router > get logical-router UUID forwarding
以下是T0-DR的路由表:
可以看到,虽然没有配置任何100.64.0.0/16和169.254.0.0/16的路由,但是这部分内部路由自动出现在了路由表中;T1DR下联的三个逻辑网络(10.0.10.0/24、10.0.20.0/24、10.0.30.0/24)下一跳地址为T1DR的Uplink地址(Intra-Tier逻辑交换机接口地址),即100.64.112.1/24;而由于T1DR上联还有一个T1SR,对于物理网络(172.18.11.0/24以及0.0.0.0/0)下一跳地址为T0SR的Downlink地址(Inter-Tier逻辑交换机接口地址),即169.254.0.2/24。
以下是T1-LR的路由表:
路由条目的逻辑与T0DR相同
当然,如果想要查看T0SR的路由表明细,应该访问Edge节点,使用相同的命令可以获取T0SR的路由表明细。
在上文的演示中,各位一定发现PING包会出现“Ping DUP!”的情况,原因是我的测试环境中,ESXi全部都是虚拟机导致的。在实际环境中,不会出现这个问题,解决方案如下:
开启混杂模式的情况下,只为对应的虚拟交换机分配1个物理上联vmnic
可以看到,只有一个vmnic上联的情况下,不会出现Ping Dup!警报
另外一种解决方案,关闭混杂模式
经过今天的演示配置,相信各位对NSX-T的静态路由、T0SR、T0DR和T1DR之间的内联路由已经有所了解;从下一篇分享起,我将连续推出三篇动态路由的配置演示,基本涵盖项目中的逻辑路由所有典型,提供给想要接触NSX DC产品的朋友作为学习和参考。