除了主机组件以外,NSX 路由还使用控制器群集和 DLR 控制虚拟机的服务,它们都是 DLR 控制层面信息来源,并具有自己的 CLI 以用于检查这些信息。
DLR 实例主控制器
每个 DLR 实例由某个控制器节点提供服务。可以使用以下 CLI 命令查看 DLR 实例的主控制器节点包含的信息:
nsx-controller # show control-cluster logical-routers instance 1460487509 LR-Id LR-Name Hosts[] Edge-Connection Service-Controller 1460487509 default+edge-1 192.168.210.57 192.168.110.201 192.168.210.51 192.168.210.52 192.168.210.56 192.168.110.51 192.168.110.52 nsx-controller # show control-cluster logical-routers interface-summary 1460487509 Interface Type Id IP[] 570d455500000002 vxlan 5003 192.168.10.2/29 570d45550000000b vxlan 5001 172.16.20.1/24 570d45550000000c vxlan 5002 172.16.30.1/24 570d45550000000a vxlan 5000 172.16.10.1/24 nsx-controller # show control-cluster logical-routers routes 1460487509 LR-Id Destination Next-Hop 1460487509 0.0.0.0/0 192.168.10.1
- “show control-cluster logical-routers”命令的“instance”子命令显示连接到该 DLR 实例的该控制器的主机列表。在正常工作的环境中,该列表包含所有群集中 DLR 所在的所有主机。
- “interface-summary”显示控制器从 NSX Manager 中获悉的 LIF。该信息将发送到主机。
- “routes”显示该 DLR 的控制虚拟机发送到该控制器的路由表。请注意,与 ESXi 主机上不同,该表不包含任何直接连接的子网,因为该信息是 LIF 配置提供的。
DLR 控制虚拟机
DLR 控制虚拟机具有 LIF 和路由/转发表。DLR 控制虚拟机的生命周期的主要输出是 DLR 路由表,这是 Interfaces 和 Routes 生成的。
edge-1-0> show ip route Codes: O - OSPF derived, i - IS-IS derived, B - BGP derived, C - connected, S - static, L1 - IS-IS level-1, L2 - IS-IS level-2, IA - OSPF inter area, E1 - OSPF external type 1, E2 - OSPF external type 2 Total number of routes: 5 S 0.0.0.0/0 [1/1] via 192.168.10.1 C 172.16.10.0/24 [0/0] via 172.16.10.1 C 172.16.20.0/24 [0/0] via 172.16.20.1 C 172.16.30.0/24 [0/0] via 172.16.30.1 C 192.168.10.0/29 [0/0] via 192.168.10.2 edge-1-0> show ip forwarding Codes: C - connected, R - remote, > - selected route, * - FIB route R>* 0.0.0.0/0 via 192.168.10.1, vNic_2 C>* 172.16.10.0/24 is directly connected, VDR C>* 172.16.20.0/24 is directly connected, VDR C>* 172.16.30.0/24 is directly connected, VDR C>* 192.168.10.0/29 is directly connected, vNic_2
- 转发表的用途是显示选择哪个 DLR 接口以作为给定目标子网的输出。
- 将为所有“内部”类型的 LIF 显示“VDR”接口。“VDR”接口是与 vNIC 不对应的伪接口。
DLR 控制虚拟机的接口可能如下所示:
edge-1-0> show interface Interface VDR is up, line protocol is up index 2 metric 1 mtu 1500 <UP,BROADCAST,RUNNING,NOARP> HWaddr: be:3d:a1:52:90:f4 inet6 fe80::bc3d:a1ff:fe52:90f4/64 inet 172.16.10.1/24 inet 172.16.20.1/24 inet 172.16.30.1/24 proxy_arp: disabled Auto-duplex (Full), Auto-speed (2460Mb/s) input packets 0, bytes 0, dropped 0, multicast packets 0 input errors 0, length 0, overrun 0, CRC 0, frame 0, fifo 0, missed 0 output packets 0, bytes 0, dropped 0 output errors 0, aborted 0, carrier 0, fifo 0, heartbeat 0, window 0 collisions 0 Interface vNic_0 is up, line protocol is up index 3 metric 1 mtu 1500 <UP,BROADCAST,RUNNING,MULTICAST> HWaddr: 00:50:56:8e:1c:fb inet6 fe80::250:56ff:fe8e:1cfb/64 inet 169.254.1.1/30 inet 10.10.10.1/24 proxy_arp: disabled Auto-duplex (Full), Auto-speed (2460Mb/s) input packets 582249, bytes 37339072, dropped 49, multicast packets 0 input errors 0, length 0, overrun 0, CRC 0, frame 0, fifo 0, missed 0 output packets 4726382, bytes 461202852, dropped 0 output errors 0, aborted 0, carrier 0, fifo 0, heartbeat 0, window 0 collisions 0 Interface vNic_2 is up, line protocol is up index 9 metric 1 mtu 1500 <UP,BROADCAST,RUNNING,MULTICAST> HWaddr: 00:50:56:8e:ae:08 inet 192.168.10.2/29 inet6 fe80::250:56ff:fe8e:ae08/64 proxy_arp: disabled Auto-duplex (Full), Auto-speed (2460Mb/s) input packets 361446, bytes 30167226, dropped 0, multicast packets 361168 input errors 0, length 0, overrun 0, CRC 0, frame 0, fifo 0, missed 0 output packets 361413, bytes 30287912, dropped 0 output errors 0, aborted 0, carrier 0, fifo 0, heartbeat 0, window 0 collisions 0
感兴趣的注意事项:
- “VDI”接口没有关联的虚拟机网卡 (vNIC)。这是单个“伪接口”,将为其配置 DLR 的所有“内部”LIF 的所有 IP 地址。
- 此示例中的 Nic_0 接口是 HA 接口。
- 上面的输出是从启用了 HA 的部署 DLR 中提取的,并为 HA 接口分配一个 IP 地址。这显示为两个 IP 地址:169.254.1.1/30(为 HA 自动分配的)和 10.10.10.1/24(为 HA 接口手动分配的)。
- 在 ESG 上,操作员可以手动将某个 vNIC 指定为 HA,或者保留默认设置以让系统自动从可用的“内部”接口中进行选择。具有“内部”类型是一项要求,否则,HA 将失败。
- vNic_2 接口具有“上行链路”类型;因此,它表示为“真实”vNIC。
- 请注意,在该接口上看到的 IP 地址与 DLR 的 LIF 相同;但 DLR 控制虚拟机不会应答 LIF IP 地址(此处为 192.168.10.2/29)的 ARP 查询。可以为该 vNIC 的 MAC 地址应用一个 ARP 筛选器以进行应答。
- 在 DLR 上配置动态路由协议之前,上述观点是正确的,此时,将 IP 地址与 ARP 筛选器一起移除,并替换为在动态路由协议配置期间指定的“协议 IP”地址。
- 在 DLR 控制虚拟机上运行的动态路由协议使用该 vNIC 与其他路由器通信以发布和获悉路由。
- 在断开连接 Edge 并进行 HA 故障切换后,将从活动 Edge 路由信息库 (Routing Information Base, RIB)/转发信息库 (Forwarding Information Base, FIB) 中移除断开连接的 Edge 接口 IP 地址。但备用 Edge FIB 表或
show ip forwarding
命令仍显示该 IP,并且不会从 FIB 表中移除该 IP。这是预期的行为。