- 在上一篇分享中,我通过设置静态路由条目,实现了NSX-T演示环境中,逻辑网络与物理网络的三层互通。虽然静态路由没有动态路由协议的灵活性,但在一些情况下,静态路由却是首选的方案:
- 用户现网采用OSPF作为动态路由协议组网;由于NSX-T的逻辑路由只支持BGP,此时通过设置静态路由的方式,可以实现物理-逻辑网络的互通,并且无需改变现网架构。
- 在一些PoC项目中,只需要1-2条简单的静态路由,就可以实现物理-逻辑网络的互通,并且不会对现行网络产生不利的影响。
- 不过,在大型数据中心的复杂网络环境中,动态路由协议的优势就能得到很好的体现。在接下来的分享中,我将演示如何在NSX-T的逻辑路由组件上设置动态路由协议实现物理-逻辑网络的互通。
- 首先来看一下新的网络拓扑:
- 在Tier1级别,依旧由T1LR(T1DR)实现3-Tier-App逻辑网络的三层互通,包括10.0.10.0/24、10.0.20.0/24和10.0.30.0/24三个网络
- T1LR和T0LR之间的Intra-Tier连接不变,暂时不会生成T1SR角色
- T0LR(T0SR)上联地址更改为10.0.100.2/29,对端从原先的ADDC,更改为软路由器sa-vyos-01
- 图中的另一个上联地址为10.0.110.2/29,将会在下一个演示中用到,包括软路由器sa-vyos-02也不会在本演示中出现
- T0SR与sa-vyos-01之间,将配置BGP动态路由协议,实现物理-逻辑网络互访
- ">
- 0x08:配置BGP动态路由-T0LR为Active-Standby部署模型+一个上联网络
- =========================
- 这里,我要在明确两点:
- 今天的演示中,T0SR依旧采用Active-Standby架构
- T0SR只有一根模拟的物理网络上联链路
- 言归正传,让我们开始今天的配置演示:
- 为了后续的配置实例,将标准交换机上的虚拟机端口组network-uplink更名为network-uplink-1
- ">
- 创建network-uplink-2的虚拟机端口组注:本实例中暂时不会用到这个虚拟机端口组
- ">
- 删除之前配置的默认静态路由
- ">
- ">
- 为了区分后续的实验,将T0-dev-uplink-external VLAN逻辑交换机更名为T0-dev-uplink-external-1
- ">
- ">
- 同时新建一个VLAN逻辑交换机,命名为T0-dev-uplink-external-2
- ">
- 编辑T0-LR_T1-T2的Uplink上联配置
- ">
- 更新上联接口地址为10.0.100.2/24
- ">
- ">
- ">
- 点击路由-BGP,为T0LR开启BGP动态路由协议
- ">
- 激活BGP协议,设置Local AS为65002
- ">
- 点击添加BGP邻居
- ">
- 添加10.0.100.1作为BGP邻居路由器,自治系统为65001
- ">
- 选择本地地址10.0.100.2所在的T0-dev-uplink-external-1作为上行链路
- ">
- ">
- 修改之前的静态路由重分发策略
- ">
- 勾选T0已连接和T1已连接,将逻辑网络的路由重分发给BGP邻居
- ">
- 在T0LR与上联路由器正常建立邻居关系后,可以通过在Edge节点命令行查看到邻居建立的信息
- # get logical-router T0LR的UUID neighbor
- 可以看到,T0LR和上联10.0.100.1建立了邻居关系
- ">
- 在Edge节点和Hypervisor节点查看当前T0LR的路由表
- # get logical-router T0LR的UUID
- ">
- ">
- ">
- ">
- 在上层路由器查看BGP动态路由协议学习到的路由表
- ">
- 上层路由器与逻辑网络中的3-Tier-App实现三层通信
- ">
- 保持ADDC软路由器的静态路由不变
- ">
- ADDC与3-Tier-App实现三层通信
- ">
- ">
- 可以看到,相比较NSX-V的动态路由设置,NSX-T的动态路由设置更加简化:
- 只需要在T0设置BGP相关参数,如自治系统和邻居管理,而不像NSX-V中需要在DLR和ESG上均设置动态路由协议的一些设置
- 对于网络地址转换和负载均衡相关的路由,可以通过配置文件的形式发布到BGP,配置更加简化和灵活(这点将在后面演示T1SR角色的时候得到验证)
- 在今天的演示中,我们的T0SR是Active-Standby模式,同时T0SR也只有一根上联链路。各位不妨思考一下:如果T0SR拥有两根上联链路,动态路由协议该如何设置?同时在Active-Standby模式下,只有一个Edge传输节点中的T0SR实例才是激活的,那么两根上联链路如何实现冗余呢?