# Configuration for babeld. See the man page babeld(8) for # details on the configuration format. # Works on Linux > 3.11 ipv6-subtrees true # You must provide at least one interface for babeld to operate on. {% if 'ffrl_uplink' in group_names %} {% for peer in groups['fastd'] %} interface bb{{ hostvars[peer]['wireguard_bb_name'] }} {% endfor %} {% endif %} {% if 'fastd' in group_names %} {% for peer in groups['ffrl_uplink'] %} interface bb{{ hostvars[peer]['wireguard_bb_name'] }} {% endfor %} {% endif %} # Global options you might want to set. There are many more, see the man page. #debug 1 local-port 33123 #diversity true #random-id true # Per-interface configuration. Note that each interface referenced here # will be used by babeld. #interface eth1 rxcost 10 #interface tun0 faraway true #interface wlan0 hello-interval 1 # Since 1.4.2, you can also specify defaults for interface parameters, which # will be used for all interfaces except specified otherwise (see above). #default rxcost 42 #default hello-interval 5 # Since 1.5.0, you can use the RTT-based metric, most useful for a network # with tunnels (overlay network). #default enable-timestamps true #interface tun0 max-rtt-penalty 150 #interface tun0 rtt-max 100 default type wired max-rtt-penalty 128 export-table 42 import-table 42 # Filtering rules. # Only accept routes included in a specific prefix. #in ip 192.168.42.0/24 allow #in ip 2001:db8:cafe:cafe::/64 allow #in deny {% if 'mullvad_uplink' in group_names %} redistribute if mullvad metric 128 {% endif %} {% if 'ffrl_uplink' in group_names %} {% for peer in ffrl_peers %} redistribute if {{ peer.name }} metric 128 {% endfor %} {% endif %} # Only redistribute addresses from a given prefix, to avoid redistributing # all local addresses redistribute ip 10.222.0.0/16 allow redistribute ip 2001:470:cd45:FF00::/56 allow redistribute ip 2a03:2260:1016::/48 allow redistribute local deny