
エニーキャスト OSPF ルーティング BIND 冗長設定を Quagga から BIRD に移行しています。
私の問題の1つは、quaggaのようにBIRDを使用してコストが異なる複数のパスを取得することです。
私がQuaggaでやったように/etc/quagga/ospfd.conf
:
interface dummy0
ip ospf cost 100
!
interface dummy1
ip ospf cost 500
!
interface dummy2
ip ospf cost 1000
!
interface dummy3
ip ospf cost 900
!
birdc
コマンドを使用すると、自分のshow ospf state
設定がすでに存在しているにもかかわらず、重みを与えないことがわかります/etc/bird.conf
。どうすればいいですか?
protocol ospf {
tick 2;
rfc1583compat yes;
area 0.0.0.0 {
networks {
1.1.1.0/22;
2.2.2.2/32;
3.3.3.3/32;
4.4.4.4/32;
5.5.5.5/32;
};
interface "eth0" {
cost 1000;
password "xxxxxxxxxx" {
id 5;
};
authentication cryptographic;
};
interface "dummy0" {
stub;
cost 100;
};
interface "dummy1" {
stub;
cost 500;
};
interface "dummy2" {
stub;
cost 1000;
};
interface "dummy3" {
stub;
cost 900;
};
};
}
答え1
show ospf state
私はBIRD用語で言及された結果を学びました。そして、stubnet
あいまいな質問とBIRD構文定義で正しい構文と配置を見つけました。
したがって、最後に、この場合、OSPFが既知の特定のパスのコストを提供する構成は、次のようにOSPFゾーン定義でネットワークを知っているスタブネットワークを定義することです。
protocol ospf {
tick 2;
rfc1583compat yes;
area 0.0.0.0 {
#stub;
networks {
1.1.1.0/22;
};
stubnet 2.2.2.2/32 {
cost 100;
};
stubnet 3.3.3.3/32 {
cost 500;
};
stubnet 4.4.4.4/32 {
cost 1000;
};
stubnet 5.5.5.5/32 {
cost 900;
};
interface "eth0" {
cost 1000;
password "xxxxxxxxxxxxxxxxxxxx" {
id 5;
};
authentication cryptographic;
};
interface "dummy0" {
stub;
};
interface "dummy1" {
stub;
};
interface "dummy2" {
stub;
};
interface "dummy3" {
stub;
};
};
}
以下を使ってわかるようにbirdc
:
dns:/etc/bird# birdc
BIRD 1.6.3 ready.
bird> show ospf state
bird>
area 0.0.0.0
.....................
router 1.1.1.1
distance 1000
network 1.1.1.0/22 metric 1000
stubnet 4.4.4.4/32 metric 1000
stubnet 5.5.5.5/32 metric 900
stubnet 3.3.3.3/32 metric 500
stubnet 2.2.2.2/32 metric 100
.................
dns:/etc/bird# exit