Anonet/BIRD

This normally goes in /etc/bird.conf: log syslog { debug, trace, info, remote, error, auth, fatal, bug };

router id 21.2.3.4;
 * 1) Your router ID is formatted as an IP address. It should be unique, so you should use one of your local IP addresses.

filter dn42 { if net = 172.16.0.0/12 then reject; if net = 172.22.0.0/15 then reject; if net ~ 172.16.0.0/12 then accept; if net = 21.0.0.0/8 then accept; reject; } filter anonet { if net = 21.0.0.0/8 then reject; if net ~ 21.0.0.0/8 then accept; if net = 172.16.0.0/12 then accept; if net = 172.22.0.0/15 then accept; reject; }
 * 1) This filter allows prefixes in dn42, as well as the big anonet network
 * 1) This filter allows prefixes in anonet, as well as the big dn42 network

protocol kernel { persist;		# Don't remove routes on bird shutdown scan time 20;		# Scan kernel routing table every 20 seconds import all; export all;		# Default is export none }
 * 1) 	learn;			# Learn all alien routes from the kernel
 * 1) 	import none;		# Default is import all

protocol device { scan time 30;		# Scan interfaces every 10 seconds }

protocol static { route 21.2.3.0/24 reject; }
 * 1) This is where we define our local network. If you just use the network only
 * 2) on this host, or use individual IP addresses, use the reject statement.
 * 3) Alternatively, you can route your entire subnetwork to a specific interface.
 * 1) 	route 21.2.3.0/24 via "eth0";


 * 1) This is a peering with a trusted machine, we exchange all routes
 * 2) Jupiter is just a name we give this connection, for use in the
 * 3) interactive control shell 'birdc'.
 * 4) protocol bgp jupiter {
 * 5) 	local as 64530;
 * 6) 	neighbor 10.11.1.2 as 64521;
 * 7) 	import all; export all;
 * }

protocol bgp as1112 { local as 1234; neighbor 21.82.98.2 as 1112; export filter anonet; import filter anonet; }
 * 1) This is a peering with an anonet peer


 * 1) To add another anonet peer, add another protocol block.