diff --git a/bird/blank.conf b/bird/blank.conf new file mode 100644 index 0000000..31459b1 --- /dev/null +++ b/bird/blank.conf @@ -0,0 +1 @@ +# Yes, It's just a blank file. \ No newline at end of file diff --git a/config-example.conf b/config-example.conf index 00f01a5..4b4d640 100644 --- a/config-example.conf +++ b/config-example.conf @@ -1,3 +1,5 @@ +router id 10.0.0.101; + define LOCAL_ASN = 200536; define DOWNSTREAM_ASN = [ 140506, 200536 ]; @@ -6,4 +8,6 @@ define POP = 101; define REGION = 100; -define SELFASN = 4200000101; \ No newline at end of file +define SELFASN = 4200000101; + +define ROUTER_IP = 2a0a:6040:a901::1; \ No newline at end of file diff --git a/lib/10-community-transit.conf b/lib/10-community-transit.conf index 0e9d611..b9f2167 100644 --- a/lib/10-community-transit.conf +++ b/lib/10-community-transit.conf @@ -82,10 +82,10 @@ function transit_import_filter(int ASN) { } function transit_export_filter(int ASN) { - if !is_valid() then return false; # Delete Self eBGP Confed Path. bgp_path.delete([4200000000..4225479999]); + if !is_valid() then return false; pub_process_communities(ASN, 10); - if bgp_path.last !~ DOWNSTREAM_ASN then return false; + if bgp_path.last !~ DOWNSTREAM_ASN && source = RTS_BGP then return false; return true; } \ No newline at end of file diff --git a/lib/20-community-peer.conf b/lib/20-community-peer.conf index 5bfcd32..3b621ef 100644 --- a/lib/20-community-peer.conf +++ b/lib/20-community-peer.conf @@ -16,9 +16,9 @@ function direct_peer_import_filter(int ASN) { } function direct_peer_export_filter(int ASN) { + bgp_path.delete([4200000000..4225479999]); if !is_valid() then return false; # Delete Self eBGP Confed Path. - bgp_path.delete([4200000000..4225479999]); pub_process_communities(ASN, 10); if !is_peer_route() then return false; return true; diff --git a/protocol/external_network.conf b/protocol/external_network.conf index 4e3cef3..85b127f 100644 --- a/protocol/external_network.conf +++ b/protocol/external_network.conf @@ -1,5 +1,6 @@ template bgp pub_transit { local as LOCAL_ASN; + ipv6 { import where transit_import_filter(6939); export where transit_export_filter(6939); @@ -24,4 +25,4 @@ template bgp pub_peer { # import where downstream_import_filter(6939); # export where downstream_export_filter(6939); # }; -# } \ No newline at end of file +# } diff --git a/protocol/internal_network.conf b/protocol/internal_network.conf index d5eab25..a07e202 100644 --- a/protocol/internal_network.conf +++ b/protocol/internal_network.conf @@ -20,4 +20,4 @@ # }; # } -# } \ No newline at end of file +# } diff --git a/protocol/kernel.conf b/protocol/kernel.conf index 685cbdc..f5864ef 100644 --- a/protocol/kernel.conf +++ b/protocol/kernel.conf @@ -1,5 +1,5 @@ protocol device { - scan time 5; + scan time 10; } protocol kernel { diff --git a/util/util.conf b/util/util.conf index 43923a8..1753b8d 100644 --- a/util/util.conf +++ b/util/util.conf @@ -28,6 +28,6 @@ function is_valid() { if pub_is_invalid_net_length() then return false; if is_bogon_prefix() then return false; if is_bogon_asn() then return false; - if is_rpki_invalid() then return false; + if is_rpki_invalid() && source = RTS_BGP then return false; return true; }