template bgp unet_bgp_up0 { graceful restart; local as UNET_ASN; ipv4 { table unet4; import filter { if unet_is_valid_network_v4_allnet() && !unet_is_self_net() then accept; reject; }; export filter { if unet_is_valid_network_v4_allnet() && source ~ [RTS_STATIC, RTS_BGP] then accept; else reject; }; import limit 9000 action block; }; ipv6 { table unet6; import filter { if unet_is_voalid_net_v6() && !unet_is_self_net_v6() then accept; reject; }; export filter { if unet_is_voalid_net_v6() && source ~ [RTS_STATIC, RTS_BGP] then accept; else reject; }; import limit 9000 action block; }; } template bgp unet_bgp_up1 { graceful restart; local as UNET_ASN; ipv4 { table unet4; import filter { if unet_is_valid_network_v4() && !unet_is_self_net() then accept; reject; }; export filter { if unet_is_valid_network_v4() && source ~ [RTS_STATIC, RTS_BGP] then accept; else reject; }; import limit 9000 action block; }; } template bgp unet_ibgp { graceful restart; local as UNET_ASN; med metric; direct; ipv4 { table unet4; next hop self; gateway direct; import filter { if bgp_large_community ~ [(UNET_ASN, 1,*)] then reject; if !unet_is_valid_network_v4_allnet() then reject; if unet_is_self_net() then reject; accept; }; export filter { if bgp_large_community ~ [(UNET_ASN, 1,*)] then reject; if !unet_is_valid_network_v4_allnet() then reject; if unet_is_self_net() then reject; accept; }; }; ipv6 { table unet6; next hop self; gateway direct; import filter { if bgp_large_community ~ [(UNET_ASN, 1,*)] then reject; if !unet_is_voalid_net_v6() then reject; if unet_is_self_net_v6() then reject; accept; }; export filter { if bgp_large_community ~ [(UNET_ASN, 1,*)] then reject; if !unet_is_voalid_net_v6() then reject; if unet_is_self_net_v6() then reject; accept; }; }; } include "/etc/bird/peers/unet/*.conf";