# THIS CONFIG FILE IS NOT A COMPLETE DOCUMENTATION
# PLEASE LOOK IN THE BIRD DOCUMENTATION FOR MORE INFO

# However, most of options used here are just for example
# and will be removed in real-life configs.

log syslog all;

# Override router ID
#router id 192.168.0.1;

# Turn on global debugging of all protocols
#debug protocols all;


# Define a route filter...
# filter test_filter {
#	if net ~ 10.0.0.0/16 then accept;
#	else reject;
# }

# The direct protocol automatically generates device routes to all network
# interfaces. Can exist in as many instances as you wish if you want to
# populate multiple routing tables with device routes. Because device routes
# are handled by Linux kernel, this protocol is  usually not needed.
# protocol direct {
#	interface "*";	# Restrict network interfaces it works with
# }

# This pseudo-protocol performs synchronization between BIRD's routing
# tables and the kernel. You can run multiple instances of the kernel
# protocol and synchronize different kernel tables with different BIRD tables.
protocol kernel {
#	learn;			# Learn all alien routes from the kernel
#	persist;		# Don't remove routes on bird shutdown
	scan time 20;		# Scan kernel routing table every 20 seconds
#	import none;		# Default is import all
#	export all;		# Default is export none
}

# This pseudo-protocol watches all interface up/down events.
protocol device {
	scan time 10;		# Scan interfaces every 10 seconds
}

# Static routes (again, there can be multiple instances, so that you
# can disable/enable various groups of static routes on the fly).
protocol static {
#	export all;		# Default is export none
#	route 0.0.0.0/0 via 62.168.0.13;
#	route 10.0.0.0/8 reject;
#	route 192.168.0.0/16 reject;
}


#protocol rip {
#	disabled;
#	import all;
#	export all;
#	export filter test_filter;

#	port 1520;
#	period 7;
#	infinity 16;
#	garbage time 60;
#	interface "*" { mode broadcast; };
#	honor neighbor;
#	honor always;
#	honor never;
#	authentication none;
#}


#protocol ospf {
#	disabled;
#	import all;
#	export all;
#	export where source = RTS_STATIC;

#	area 0 {
#		interface "eth*" {
#			cost 10;
#			hello 3;
#			retransmit 2;
#			wait 5;
#			dead 20;
#			type broadcast;
#			authentication simple;
#			password "pass";
#		};
#	};
#}


#protocol bgp {
#	disabled;
#	import all;
#	export all;
#	export where source = RTS_STATIC;

#	local as 65000;
#	neighbor 192.168.1.1 as 65001;
#	multihop 20 via 192.168.2.1;

#	hold time 240;
#	startup hold time 240;
#	connect retry time 120;
#	keepalive time 80;	# defaults to hold time / 3
#	start delay time 5;	# How long do we wait before initial connect
#	error wait time 60, 300;# Minimum and maximum time we wait after an error (when consecutive
#				# errors occur, we increase the delay exponentially ...
#	error forget time 300;	# ... until this timeout expires)
#	disable after error;	# Disable the protocol automatically when an error occurs
#	next hop self;		# Disable next hop processing and always advertise our local address as nexthop
#	source address 62.168.0.14;	# What local address we use for the TCP connection
#	password "secret"	# Password used for MD5 authentication
#	rr client;		# I am a route reflector and the neighor is my client
#	rr cluster id 1.0.0.1	# Use this value for cluster id instead of my router id 
#	};
#}