Files
dn42-ansible/roles/wireguard/templates/wireguard_peer.network.j2

36 lines
759 B
Django/Jinja

[Match]
Name={{ peer.name }}
[Network]
DHCP=no
IPv6AcceptRA=false
IPForward=yes
# IPv4ReversePathFilter=no # required if sysctl item `net.ipv4.conf.default.rp_filter` is not 0
# for networkd < 244 the CriticalConnection parameter achieves
# the same thing
[DHCP]
CriticalConnection=true
{% if 'ipv4' in peer.wg %}
[Address]
Address={{ peer.wg.ipv4 }}
{% elif 'peer_v4' in peer %}
[Address]
Address={{ bgp.ownip }}/32
Peer={{ peer.peer_v4 }}/32
{% endif %}
{% if 'ipv6' in peer.wg %}
[Address]
Address={{ peer.wg.ipv6 }}
{% elif 'peer_v6' in peer and peer.peer_v6_linklocal | default(false) %}
[Address]
Address={{ misc.ipv6_linklocal_address }}/64
{% elif 'peer_v6' in peer %}
[Address]
Address={{ bgp.ownipv6 }}
Peer={{ peer.peer_v6 }}/128
{% endif %}