quagga ospf max-metric オプションが送信ルートを台無しにする

quagga ospf max-metric オプションが送信ルートを台無しにする

高速ネットワークと低速ネットワークの両方に接続されているマシンがいくつかあり、他のマシンは低速ネットワークにのみ接続されています。各接続で最速のルートを自動的に選択できるように、OSPF の導入を検討しています。ただし、マシンが誤ってルーターになることは避けたいので、max-metric router-lsa administrative/etc/quagga/ospfd.conf のオプションを使用しています。

残念ながら、広告の目的で発信リンク コストを ∞ に設定することに加えて、ホスト上のルート コストを計算するときにもリンク コストとして ∞ (正確には 65535) が使用されるようです。その結果、高速リンクを使用するパスが優先されるのではなく、等コスト パスとして扱われます。設定を削除するとmax-metric、高速リンクが優先されることが正しく計算されます。

注: 現時点では VM と仮想ネ​​ットワークの使用を実験しているだけなので、リンクは実際には同等であり、コストを手動で指定しています。3 台のマシンが 1 つのネットワークに接続され、アドレスは 192.168.50.2-4 です。2 台は別のネットワークに接続され、アドレスは 192.168.51.2-3 です。また、各マシンにはループバック アドレス 192.168.100.x があり、これがマシン同士のアドレスになります。マシンの 1 台にある /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 のコストがかかり、どちらかのインターフェースを介してルーティングされます。

ホストがトランジット ルーターとして使用されるのを防ぎながら、ホストが独自の最短パス計算にリンク コストを使用するようにする方法はありますか?

答え1

Quagga で望みどおりの動作をさせることはできませんでした (FRR でも試しましたが、同じ問題がありました) が、OSPF v3 を使用した Bird はうまく動作しました。OSPF v3 には、リンク コストを無限大に設定することに依存するのではなく、スタブ ルーター用の機能が組み込まれています。Quagga/FRR は RFC 5838 をサポートしていないため、それらで OSPF v3 を試すことはできませんでした。

関連情報