Add p14 configuration

This commit is contained in:
Sonny Bakker 2026-02-24 19:46:53 +01:00
parent be2ed3c9bf
commit 5fe1764dbe
32 changed files with 332 additions and 14 deletions

View file

@ -0,0 +1,11 @@
[Match]
Name={{ lan_interface }}
[Network]
DHCP=yes
DNS={{ default_network_dns }}
MulticastDNS=yes
DNSOverTLS=yes
[Link]
RequiredForOnline=routable

View file

@ -0,0 +1,25 @@
# {{ ansible_managed }}
[NetDev]
Name={{ wireguard.interface }}
Kind=wireguard
Description=WireGuard tunnel {{ wireguard.interface }}
[WireGuard]
PrivateKeyFile={{ wireguard.private_key_path }}
RouteTable=main
{% for peer in wireguard.peers %}
[WireGuardPeer]
PublicKey={{ peer.public_key }}
PresharedKeyFile={{ peer.preshared_key_path }}
{% for ip in peer.allowed_ips %}
AllowedIPs={{ ip }}
{% endfor %}
{% if peer.endpoint %}
Endpoint={{ peer.endpoint }}
{% endif %}
{% if not loop.last %}
{% endif %}
{% endfor %}

View file

@ -0,0 +1,10 @@
# {{ ansible_managed }}
[Match]
Name={{ wireguard.interface }}
[Network]
Address={{ wireguard.ip }}/{{ wireguard.prefix }}
DNS={{ wireguard.dns }}
Domains={{ wireguard.domains | join(' ') }}
BindCarrier={{ lan_interface }} {{ wireless_interface }}

View file

@ -0,0 +1,25 @@
# {{ ansible_managed }}
[NetDev]
Name={{ wireguard.interface }}
Kind=wireguard
Description=WireGuard tunnel {{ wireguard.interface }}
[WireGuard]
PrivateKeyFile={{ wireguard.private_key_path }}
RouteTable=main
{% for peer in wireguard.peers %}
[WireGuardPeer]
PublicKey={{ peer.public_key }}
PresharedKeyFile={{ peer.preshared_key_path }}
{% for ip in peer.allowed_ips %}
AllowedIPs={{ ip }}
{% endfor %}
{% if peer.endpoint %}
Endpoint={{ peer.endpoint }}
{% endif %}
{% if not loop.last %}
{% endif %}
{% endfor %}

View file

@ -0,0 +1,10 @@
# {{ ansible_managed }}
[Match]
Name={{ wireguard.interface }}
[Network]
Address={{ wireguard.ip }}/{{ wireguard.prefix }}
DNS={{ wireguard.dns }}
Domains={{ wireguard.domains | join(' ') }}
BindCarrier={{ lan_interface }} {{ wireless_interface }}

View file

@ -0,0 +1,12 @@
[Match]
Name={{ wireless_interface }}
[Network]
DNS={{ default_network_dns }}
DNSOverTLS=yes
DNSSEC=yes
DHCP=yes
IgnoreCarrierLoss=3s
[Link]
RequiredForOnline=routable