静态路由和多个路由器

网络工程 思科 路由 纳特 无处不在 会计
2022-02-04 11:40:18

我有以下设置:

Ubiquiti USG router (WAN: DHCP client: 192.168.20.100/24 GW: 192.168.20.1)
Ubiquiti USG router (LAN: DHCP server: 192.168.1.1/24)
|
Cisco 3750 Switch Port on VLAN 1 (LAN: DHCP client: 192.168.1.100/24 GW: 192.168.1.1)
Cisco 3750 Switch Port on VLAN 2 (LAN: DHCP server: 172.27.71.1/24)
|
PC (LAN: DHCP client: 172.27.71.100/24 GW: 172.27.71.1)

Cisco 3750 Switch Port on VLAN 3 (LAN: DHCP server: 172.27.72.1/24)
|
Server (LAN: DHCP client: 172.27.72.100/24 GW: 172.27.72.1)

现在为了让它工作,我在 3750 上配置了 IP 路由和 DHCP。这允许 PC 和服务器通过 Cisco 交换机进行通信,因为它是它们的通用网关。

为了获得对服务器的 Internet 访问,我添加了一个静态路由:

在 Ubiquiti USG 中:172.27.0.0/16 通过 192.168.1.100

但这没有用!为了让它工作,我不得不向上游路由器添加另一个静态路由:

172.27.0.0/16 via 192.168.20.100

现在我们要解决的问题:

  1. 如果 Ubiquiti USG 正在对出站流量进行 NAT,那么为什么我需要添加一条静态路由到包含 172.27.2.0/24 子网的上游路由器,这不是断章取义吗?

  2. Ubiquiti USG 执行带宽记帐,但它不会在其客户端列表中列出服务器或电话,它只列出 Cisco 交换机。如果 Cisco 交换机不执行 NAT,那么为什么流量会归属于交换机?

  3. 我需要更改我的设置以使 USG 了解连接到 Cisco 交换机的设备 - 同时仍允许 Cisco 交换机上发生 Vlan 间通信?

我知道我可以通过在 USG 上定义所有 VLAN 并为每个 VLAN 运行 DHCP 服务器并仅运行到 Cisco 交换机(即棒上的路由器)的中继来使其工作,然后是 VLAN 之间的所有 VLAN 间流量必须通过 USG,而且速度要慢得多。

2个回答

要回答问题二和三(问题一是针对家庭网络、消费级设备),VLAN 2 的 DHCP 是在交换机上完成的,而不是在路由器上,因此路由器不知道它们,无论是通过 DHCP 还是通过第 2 层。您可以在路由器上为两个 VLAN 运行 DHCP,然后路由器将知道两个 VLAN 上的设备,或者您可以在路由器上运行两个 VLAN,以便它可以通过第 2 层看到所有设备。

我知道我可以通过在 USG 上定义所有 VLAN 并为每个 VLAN 运行 DHCP 服务器并仅运行到 Cisco 交换机(即棒上的路由器)的中继来使其工作,然后是 VLAN 之间的所有 VLAN 间流量必须通过 USG,而且速度要慢得多。

为什么你这么想?它可能慢了几十微秒,您可能无法看到任何差异或测量它。

编辑(基于编辑的问题):

您的路由器不知道如何到达交换机上定义的路由,除非您专门配置它,或者您在路由器和交换机之间运行路由协议。您的路由不知道将发往172.27.2.0/24网络的流量发送到哪里,除非将其丢弃或发送到默认路由。

您朋友的家庭网络、消费级路由器对静态路由的需求在这里是题外话。

如果 Ubiquiti USG 正在对出站流量进行 NAT,那么为什么我需要添加一条静态路由到包含 172.27.2.0/24 子网的上游路由器,这不是断章取义吗?

我认为您是 100% 正确的,问题不在上游路由器上,而在 USG 上。问题的开头有一个很大的“如果”;听起来 USG 并没有真正进行 NAT。就我个人而言,我不知道这个特定的产品,但似乎极有可能仅添加静态路由是不够的,即默认情况下,它不会对到达其“内部”接口的任何东西进行 NAT,可能只针对直接连接的子网。所以你必须以某种方式告诉它也为 172.27.0.0/16 做 NAT。