{{ ansible_header | comment }} # This is a minimal configuration file, which allows the bird daemon to start # but will not cause anything else to happen. # # Please refer to the documentation in the bird-doc package or BIRD User's # Guide on http://bird.network.cz/ for more information on configuring BIRD and # adding routing protocols. # Change this into your BIRD router ID. It's a world-wide unique identification # of your router, usually one of router's IPv4 addresses. router id {{ bgp.ipv4.router_id }}; listen bgp address {{ bgp.ipv4.bind_address }} port 179; # The Kernel protocol is not a real routing protocol. Instead of communicating # with other routers in the network, it performs synchronization of BIRD's # routing tables with the OS kernel. protocol kernel { persist; scan time 60; import none; export all; # Actually insert routes into the kernel routing table } # The Device protocol is not a real routing protocol. It doesn't generate any # routes and it only serves as a module for getting information about network # interfaces from the kernel. protocol device { scan time 60; } protocol static { route {{ bgp.ipv4.network }} reject; } protocol bgp zayo { local as {{ bgp.as }}; neighbor {{ bgp.ipv4.neighbor }} as {{ bgp.remote_as }}; import all; export filter { if ( net ~ [ {{ bgp.ipv4.network }} ] ) then accept; reject; }; }