diff --git a/hosts b/hosts index 52f5078..90917a4 100644 --- a/hosts +++ b/hosts @@ -96,6 +96,8 @@ radius-fleming.adm.auro.re dns-1.int.infra.auro.re isp-1.rtr.infra.auro.re isp-2.rtr.infra.auro.re +edge-1.rtr.infra.auro.re +edge-2.rtr.infra.auro.re dhcp-1.isp.auro.re dhcp-2.isp.auro.re radius-fleming-backup.adm.auro.re diff --git a/playbooks/bird.yml b/playbooks/bird.yml index f66c767..6c3d300 100755 --- a/playbooks/bird.yml +++ b/playbooks/bird.yml @@ -46,4 +46,95 @@ - 2a09:6840:128::127 roles: - bird + + +- hosts: + - edge-1.rtr.infra.auro.re + - edge-2.rtr.infra.auro.re + vars: + bird__router_ids: + edge-1.rtr.infra.auro.re: 10.136.1.1 + edge-2.rtr.infra.auro.re: 10.136.1.2 + bird__asn: + aurore: 43619 + crans: 204515 + zayo: 8218 + viarezo: 212424 + bird__orig_prefixes: + aurore: + - 45.66.108.0/22 + - 2a09:6840::/29 + crans: + - 185.230.76.0/22 + - 2a0c:700::/32 + viarezo: + - 138.195.144.0/20 + - 192.159.121.0/24 + - 2a0c:b641:2f0::/44 + bird__router_id: "{{ bird__router_ids[inventory_hostname] }}" + bird__bgp_sessions: + - name: zayo + local: + address: + - 83.167.52.69 + - 2001:1b48:2:103::d7:2 + as: "{{ bird__asn.aurore }}" + remote: + address: + - 83.167.52.68 + - 2001:1b48:2:103::d7:1 + as: "{{ bird__asn.zayo }}" + import: + accept: all + export: + accept: + - prefix: "{{ ['aurore', 'crans', 'viarezo'] + | map('extract', bird__orig_prefixes) + | flatten }}" + sub: true + - name: crans + local: + address: + - 185.230.79.254 + - 2a0c:700:28::2 + as: "{{ bird__asn.aurore }}" + remote: + address: + - 185.230.79.253 + - 2a0c:700:28::1 + as: "{{ bird__asn.crans }}" + import: + accept: + - prefix: "{{ bird__orig_prefixes.crans }}" + sub: true + export: + accept: all + - name: viarezo + local: + address: + - 192.159.121.134 + - 2a0c:b641:2ff::6 + as: "{{ bird__asn.aurore }}" + remote: + address: + - 192.159.121.133 + - 2a0c:b641:2ff::5 + as: "{{ bird__asn.viarezo }}" + import: + local_pref: + - prefix: "{{ bird__orig_prefixes.viarezo }}" + sub: true + negate: true + pref: 50 + accept: all + export: + as_prepend: + - prefix: "{{ bird__orig_prefixes.aurore }}" + size: 3 + accept: all + bird__static_unreachable: + - 45.66.108.0/22 + - 2a09:6840::/29 + roles: + - bird ...