为 BIRD 移植 OSPF 路由过滤规则

为 BIRD 移植 OSPF 路由过滤规则

我有一个使用 BIRD 的 DNS 选播设置OSPF:将 Quagga 迁移到 BIRD

但是,在命令中使用“showroutes”,birdc我看到许多 OSPF 从我们的内部网络学到的路由。

事实上,在这种任播设置中(通常情况下),只需要通告路由,而不需要接收它们。

如何在 BIRD 中创建过滤器来忽略 OSPF 路由?

我的 OSPF 设置是这样的:

 protocol ospf {
        tick 2;
        rfc1583compat yes;

        area 0.0.0.0 {

            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 "MySecretPassword" {
                    id 5;
                };
                authentication cryptographic; 
            };

            interface "dummy0" {
                stub;
            };
            interface "dummy1" {
                stub;
            };
            interface "dummy2" {
                stub;
            };
            interface "dummy3" {
                stub;
            };

        };
}

答案1

我在这里找到了答案如何将内核表中的路由重新分配到 OSPF 协议?,并修改了 OSPF 配置以创建过滤器以丢弃从 OSPF 获知的路由。

修改将相应地针对所有元素进行选播DNS 集群。

请注意修改后的 OSPF 配置中添加的 import_OSPF 过滤器。

filter import_OSPF {
    reject;
}

protocol ospf {
        tick 2;
        rfc1583compat yes;

        import filter import_OSPF;
        area 0.0.0.0 {

            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 "MySecretPassword" {
                    id 5;
                };
                authentication cryptographic; 
            };

            interface "dummy0" {
                stub;
            };
            interface "dummy1" {
                stub;
            };
            interface "dummy2" {
                stub;
            };
            interface "dummy3" {
                stub;
            };

        };
}

重新启动 BIRD 后,“show Route”诊断命令birdc已不显示任何导入的 OSPF 路由,正如其预期的那样。

相关内容