web-dev-qa-db-ja.com

Quaggaが特定のサブネット広告を表示しないようにする

次のインターフェイスを備えたUbuntu12.10ワークステーションがあります。

eth0 : 10.11.1.15/24
lo:1 : 10.90.50.50/32
lo:2 : 10.1.100.100/32
tap0 : 10.5.200.200/24

ご覧のとおり、すべてのIPは10.0.0.0/8サブネットに収まります。

また、OSPFを介して他のルーターにリンク状態をアナウンスするQuaggaがあります。これが私の/etc/quagga/ospfd.confです:

router ospf
   passive-interface eth0

   router-id 10.90.50.50

   redistribute kernel route-map MYMAP
   redistribute connected route-map MYMAP
   redistribute static route-map MYMAP

   network 10.0.0.0/8 area 0.0.0.0

   ip prefix-list MYLIST seq 5 deny 10.11.0.0/16 le 32
   ip prefix-list MYLIST seq 10 permit 10.0.0.0/8 le 32
   ip prefix-list MYLIST seq 20 deny any

   route-map MYMAP permit 10
   match ip address prefix-list MYLIST

Quaggaがローカルサブネットであるルート10.11.1.0/24をアドバタイズするのを防ぐ試みに失敗しています。

ip prefix-list MYLIST seq 5 deny 10.11.0.0/16 le 32ip prefix-list MYLIST seq 5 deny 10.11.1.0/24もルートアドバタイズに影響を与えません。最も奇妙なことは、すべてのプレフィックスリストアクションを許可から拒否に変更した場合でも、Quaggaがルートをアドバタイズし続けることです。私が間違っていることについて何か考えがありますか?

2
Fmy Oen

次のようなものを使用する必要があるようです

distribute-list noeth0 out kernel
!
access-list noeth0 deny 10.11.1.0/24
access-list noeth0 permit any

Quaggga OSPFデーモンのドキュメント は少しあいまいですが、おそらくこれを少し調整する必要があります。

3
the-wabbit

まず第一に。アドバタイズメント/ルーティングステートメントで取得されたサブネットを再配布してからブロックするのはなぜですか?人々が台所の流しを再配布し、後でそれをブロックしようとするとき、私は何度も何度も見ます。これは根本的に不健全です。最後に、除外するリンクはルーティングステートメントでカバーされており、passiveinterfaceコマンドにもかかわらずスタブネットワークとしてアドバタイズされます。すでに含まれている接続ルートを再配布しないでください。

アドバタイズし、すべてを再配布してからフィルタリングを試みる人は、基本的なOSPFルーティング設定を学ぶ必要があります。

初心者のために接続された再配布を取り除きます。パッシブインターフェイスコマンドを保持し、ステートメントを特定にするか、含める特定のインターフェイスに配置します。

router ospf 1
network 10.90.50.50 0.0.0.0 area 0
network 10.1.100.100 0.0.0.0 area 0
network 10.5.200.0 0.0.0.255 area 0

または、たとえば特定のインターフェイスで(上記の関連するネットワークステートメントはありません)

interface lo:1 
ip ospf 1 area 0

含めたい他のリンクに対してこれを行います

最後に、どうしても必要な場合を除いて、何も再配布しないでください。

1
Tuzo