我们有许多机器连接到高速网络和低速网络;其他的机器只在低速网络上。我正在调查部署OSPF,这样每个连接都可以自动选择最快的路由。但是,我不希望机器意外地成为路由器,所以我在/etc/quagga/ospfd.conf中使用了选项max-metric router-lsa administrative。
不幸的是,除了为了广告的目的将发送链路成本设置为∞之外,它似乎还使用∞(好,65535)作为计算主机路由成本的链接成本。其结果是,它没有选择使用高速链路的路径,而是将它们视为等成本路径。如果我取消max-metric设置,那么它将正确地计算高速链接是首选的.
注意:目前我只是在尝试使用‘m和虚拟网络,所以链接实际上是等价的,我正在手动指定成本。三台机器连接到一个网络,地址192.168.50.2-4,两台连接到另一网络,地址192.168.51.2-3,每台机器也有一个回环地址192.168.100.x,这是它们之间的地址。以下是其中一台机器上的/etc/quagga/ospfd.conf文件:
hostname ospf
password zebra
enable password zebra
interface eth1
ip ospf area 0
ip ospf cost 1000
ip ospf hello-interval 1
ip ospf dead-interval 5
interface eth2
ip ospf area 0
ip ospf cost 100
ip ospf hello-interval 1
ip ospf dead-interval 5
interface lo
ip ospf area 0 192.168.100.1
ip ospf cost 100
router ospf
log-adjacency-changes
passive-interface lo
max-metric router-lsa administrative
auto-cost reference-bandwidth 1000
log stdout这是路由表:
node1# show ip ospf route
============ OSPF network routing table ============
N 192.168.50.0/24 [65535] area: 0.0.0.0
directly attached to eth1
N 192.168.51.0/24 [65535] area: 0.0.0.0
directly attached to eth2
N 192.168.100.1/32 [0] area: 0.0.0.0
directly attached to lo
N 192.168.100.2/32 [65535] area: 0.0.0.0
via 192.168.50.3, eth1
via 192.168.51.3, eth2
N 192.168.100.3/32 [65535] area: 0.0.0.0
via 192.168.50.4, eth1
============ OSPF router routing table =============如您所见,对于192.168.100.2的访问,它的开销为65535,并且将通过任何一个接口进行路由。
是否有办法让主机使用其自己的最短路径计算的链路成本,同时仍然防止主机被用作传输路由器?
发布于 2020-08-18 11:12:38
我没有设法让Quagga去做我想做的事情(也尝试了FRR,同样的问题),但是我发现用OSPF v3的鸟很好的工作。OSPF v3具有内置的存根路由器功能,而不是依赖于将链接成本设置为无穷大。Quagga/FRR不支持RFC 5838,所以我无法尝试OSPF v3与他们。
https://serverfault.com/questions/1030234
复制相似问题