42 lines
911 B
Django/Jinja
42 lines
911 B
Django/Jinja
{% set exit = inventory_hostname.split('-')[1]|int %}
|
|
{% set lo_address = interfaces
|
|
| selectattr('name', '==', 'lo')
|
|
| map(attribute='ip_addresses') | first
|
|
| selectattr('role') | selectattr('role.value', '==', 'loopback')
|
|
| map(attribute='address') %}
|
|
{% set ip = lo_address | ipv4 | first %}
|
|
{% set ip6 = lo_address | ipv6 | first -%}
|
|
|
|
auto inside
|
|
iface inside
|
|
vrf-table auto
|
|
address {{ ip }}
|
|
address {{ ip6 }}
|
|
|
|
auto outside
|
|
iface outside
|
|
vrf-table auto
|
|
address {{ ip }}
|
|
address {{ ip6 }}
|
|
|
|
{% for iface in ifaces_firewall %}
|
|
auto {{ iface }}.2
|
|
iface {{ iface }}.2
|
|
vrf inside
|
|
|
|
auto {{ iface }}.4
|
|
iface {{ iface }}.4
|
|
vrf outside
|
|
|
|
{% endfor -%}
|
|
|
|
# Backup firewall routes are exchanged over these subinterfaces.
|
|
auto peerlink.2
|
|
iface peerlink.2
|
|
vrf inside
|
|
|
|
auto peerlink.4
|
|
iface peerlink.4
|
|
vrf outside
|
|
address {{ "169.254.1.0/24" | ipaddr(exit + 1) }}
|