69 lines
1.9 KiB
Plaintext
69 lines
1.9 KiB
Plaintext
template bgp dn42_peers {
|
|
local as DN42_ASN;
|
|
path metric 1;
|
|
|
|
ipv4 {
|
|
table dn42v4;
|
|
import filter {
|
|
if dn42_is_valid_network() && !dn42_is_self_net() then accept;
|
|
reject;
|
|
};
|
|
|
|
export filter {
|
|
if dn42_is_valid_network() && source ~ [RTS_STATIC, RTS_BGP] then accept; else reject;
|
|
};
|
|
import limit 9000 action block;
|
|
};
|
|
ipv6 {
|
|
table dn42v6;
|
|
import filter {
|
|
if dn42_is_valid_network_v6() && !dn42_is_self_net_v6() then accept;
|
|
reject;
|
|
};
|
|
export filter { if dn42_is_valid_network_v6() && source ~ [RTS_STATIC, RTS_BGP] then accept; else reject; };
|
|
import limit 9000 action block;
|
|
};
|
|
}
|
|
|
|
|
|
template bgp dn42_ibgp {
|
|
graceful restart;
|
|
local as DN42_ASN;
|
|
med metric;
|
|
direct;
|
|
ipv4 {
|
|
table dn42v4;
|
|
next hop self;
|
|
gateway direct;
|
|
import filter {
|
|
if bgp_large_community ~ [(DN42_ASN, 1,*)] then reject;
|
|
if !dn42_is_valid_network() then reject;
|
|
if dn42_is_self_net() then reject;
|
|
accept;
|
|
};
|
|
export filter {
|
|
if bgp_large_community ~ [(DN42_ASN, 1,*)] then reject;
|
|
if !dn42_is_valid_network() then reject;
|
|
if dn42_is_self_net() then reject;
|
|
accept;
|
|
};
|
|
};
|
|
ipv6 {
|
|
table dn42v6;
|
|
next hop self;
|
|
gateway direct;
|
|
import filter {
|
|
if bgp_large_community ~ [(DN42_ASN, 1,*)] then reject;
|
|
if !dn42_is_valid_network_v6() then reject;
|
|
if dn42_is_self_net_v6() then reject;
|
|
accept;
|
|
};
|
|
export filter {
|
|
if bgp_large_community ~ [(DN42_ASN, 1,*)] then reject;
|
|
if !dn42_is_valid_network_v6() then reject;
|
|
if dn42_is_self_net_v6() then reject;
|
|
accept;
|
|
};
|
|
};
|
|
}
|
|
include "/etc/bird/peers/dn42/*.conf"; |