到同一网络的两条路由 - 优先级不同

到同一网络的两条路由 - 优先级不同

我正在尝试确定最适合我的服务器的配置,该服务器有两个外部接口,均通过 DHCP 从 ISP 获取外部 IP 号码。这样我就可以在不同的 IP 上托管不同的服务。地址将最有可能的位于同一个网络中,这可能会给我的路由带来一些麻烦。

最简单的情况就是分配一个不同的优先事项到每个网络接口,将一个接口作为“主接口”,默认情况下所有内容都路由到该接口。由于我对负载平衡或故障转移不感兴趣,所以这应该可行。

ifconfig em0 priority 0
ifconfig em2 priority 10

我已经使用本地 DHCP 服务器模拟了该场景,看起来效果不错。路由表通过 DHCP 自动配置后如下所示:

# route -n show -inet
Routing tables

Internet:
Destination        Gateway            Flags   Refs      Use   Mtu  Prio Iface
default            10.0.0.1           UGS        0        0     -     8 em0
224/4              127.0.0.1          URS        0        0 32768     8 lo0
10.0.0/24          10.0.0.2           UCn        1       13     -     4 em0
10.0.0/24          10.0.0.3           UCn        0        0     -    14 em2
10.0.0.1           xx:xx:xx:xx:xx:01  UHLch      1       12     -     3 em0
10.0.0.2           xx:xx:xx:xx:xx:02  UHLl       0        0     -     1 em0
10.0.0.3           xx:xx:xx:xx:xx:03  UHLl       0        3     -     1 em2
10.0.0.255         10.0.0.2           UHPb       0        0     -     1 em0
10.0.0.255         10.0.0.3           UHPb       0        0     -     1 em2
127/8              127.0.0.1          UGRS       0        0 32768     8 lo0
127.0.0.1          127.0.0.1          UHhl       1        2 32768     1 lo0

我的网关只有一个默认出口,并且冲突的路线10.0.0/24具有不同的优先级,因此除非明确请求,否则只应使用一种方式。

根据我的所有测试,这种方法效果很好。特别是:

  • 可以使用任一 IP 访问监听两个 IP 的服务器上的服务。
  • 在任一接口上监听的服务只能通过该接口访问。
  • 当从服务器 ping 主机时,我可以选择传出接口。一切按预期运行。

但我仍然很担心,特别是两个问题:

我是否应该删除到我的网络的额外路由?

我有两条通往 的路线10.0.0/24。后者的“使用”计数器从未增加,即使我删除了 的路线,我的网络似乎仍能正常工作em2

10.0.0/24          10.0.0.2           UCn        1       13     -     4 em0
10.0.0/24          10.0.0.3           UCn        0        0     -    14 em2

第二种方法是否有必要?如果没有,会有什么坏处吗?

我是否需要对同一个网络进行两次广播?

每个接口还会向同一网络设置自己的广播。

10.0.0.255         10.0.0.2           UHPb       0        0     -     1 em0
10.0.0.255         10.0.0.3           UHPb       0        0     -     1 em2

这里有同样的问题:两者都是必要的吗?如果不是,是否有害?我可以很容易地想象每个接口都必须在表中有一个条目,但恐怕我对此了解不够。我没有看到我的局域网中发生任何奇怪的事情。


...坚持,稍等

使用此设置运行一段时间后,网络停止工作。检查日志,我看到以下内容:

arp: attempt to add entry for 10.0.0.1 on em0 by xx:xx:xx:xx:xx:xx on em2
arpresolve: 10.0.0.1: route contains no arp information
arpresolve: 10.0.0.1: route contains no arp information
arpresolve: 10.0.0.1: route contains no arp information
...

显然某物设置中需要更改。我仍不确定是什么。

相关内容