systemd-networkd templates
This commit is contained in:
@ -4,6 +4,6 @@ Kind=bridge
|
||||
|
||||
[Bridge]
|
||||
DefaultPVID=none
|
||||
VLANFiltering={{ item.vlan_filtering }}
|
||||
VLANFiltering={{ item.vlan_filtering | default(false)}}
|
||||
VLANProtocol=802.1q
|
||||
STP={{ item.stp }}
|
||||
STP={{ item.stp | default(false) }}
|
@ -1,11 +1,15 @@
|
||||
[Match]
|
||||
Name={{ item.name | regex_replace('^[0-9]*-', '') | regex_replace('\.netdev', '') }}
|
||||
Name={{ item.name | regex_replace('^[0-9]*-', '') | regex_replace('\.network', '') }}
|
||||
|
||||
[Link]
|
||||
ARP={{ item.arp | default(false) }}
|
||||
ARP={{ item.arp | default(true) }}
|
||||
|
||||
[Network]
|
||||
DHCP={{ item.dhcp | default(false) }}
|
||||
LinkLocalAddressing=false
|
||||
LLDP=true
|
||||
VLAN={{ item.vlan }}
|
||||
DHCP={{ item.dhcp | default(true) }}
|
||||
LinkLocalAddressing=False
|
||||
LLDP={{ item.lldp | default(true) }}
|
||||
{% if item.vlans is defined -%}
|
||||
{% for vlan in item.vlans -%}
|
||||
VLAN={{ item.vlan }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
@ -2,18 +2,72 @@
|
||||
MACAddress={{ item.mac_address }}
|
||||
|
||||
[Link]
|
||||
ARP={{ item.arp }}
|
||||
ARP={{ item.arp | default(true) }}
|
||||
|
||||
[Network]
|
||||
DHCP={{ item.dhcp | default(true) }}
|
||||
{% if item.bond %}
|
||||
LinkLocalAddressing=False
|
||||
LLDP={{ item.lldp | default(true) }}
|
||||
{% if item.nameserver is defined and item.nameserver.ipv4 is defined -%}
|
||||
{% for nameserver in item.nameserver.ipv4 -%}
|
||||
DNS={{ nameserver }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% if item.nameserver is defined and item.nameserver.ipv6 is defined -%}
|
||||
{% for nameserver in item.nameserver.ipv6 -%}
|
||||
DNS={{ nameserver }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% if item.bond is defined -%}
|
||||
Bond={{ item.bond }}
|
||||
{% endif %}
|
||||
{% if item.bridge %}
|
||||
Bridge={{ item.bridge }}
|
||||
{% endif %}
|
||||
{% if item.vlans %}
|
||||
{% for vlan in item.vlans %}
|
||||
{% endif -%}
|
||||
{% if item.bridge is defined -%}
|
||||
Bridge={{ item.bridge.name }}
|
||||
{% endif -%}
|
||||
{% if item.vlans is defined -%}
|
||||
{% for vlan in item.vlans -%}
|
||||
VLAN={{ vlan }}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
|
||||
{% if item.address is defined %}
|
||||
[Address]
|
||||
{% if item.address.ipv4 is defined -%}
|
||||
{% for address in item.address.ipv4 -%}
|
||||
Address={{ address }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% if item.address.ipv6 is defined -%}
|
||||
{% for address in item.address.ipv6 -%}
|
||||
Address={{ address }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% endif -%}
|
||||
|
||||
{% if item.gateway is defined and item.gateway.ipv4 is defined %}
|
||||
[Route]
|
||||
Destination=0.0.0.0/0
|
||||
Gateway={{ item.gateway.ipv4 }}
|
||||
Scope=global
|
||||
Protocol=static
|
||||
Type=unicast
|
||||
{% endif -%}
|
||||
|
||||
{% if item.gateway is defined and item.gateway.ipv6 is defined %}
|
||||
[Route]
|
||||
Destination=::/0
|
||||
Gateway={{ item.gateway.ipv6 }}
|
||||
Protocol=static
|
||||
Type=unicast
|
||||
{% endif -%}
|
||||
|
||||
{% if item.bridge is defined and item.bridge.vlans is defined %}
|
||||
[BridgeVLANs]
|
||||
{% for vlan in item.bridge.vlans -%}
|
||||
VLAN={{ vlan }}
|
||||
{% endfor -%}
|
||||
{% if item.bridge.pvid is defined -%}
|
||||
PVID={{ item.bridge.pvid }}
|
||||
EgressUntagged={{ item.bridge.pvid }}
|
||||
{% endif -%}
|
||||
{% endif -%}
|
@ -1,33 +1,39 @@
|
||||
[Match]
|
||||
Name={{ item.name | regex_replace('^[0-9]*-', '') | regex_replace('\.netdev', '') }}
|
||||
Name={{ item.name | regex_replace('^[0-9]*-', '') | regex_replace('\.network', '') }}
|
||||
|
||||
[Link]
|
||||
ARP={{ item.arp }}
|
||||
ARP={{ item.arp | default(true) }}
|
||||
|
||||
[Network]
|
||||
{% if item.nameserver.ipv4 is defined -%}
|
||||
DHCP={{ item.dhcp | default(true) }}
|
||||
LinkLocalAddressing=False
|
||||
LLDP={{ item.lldp | default(true) }}
|
||||
{% if item.nameserver is defined and item.nameserver.ipv4 is defined -%}
|
||||
{% for nameserver in item.nameserver.ipv4 -%}
|
||||
DNS={{ nameserver }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% if item.nameserver.ipv6 is defined -%}
|
||||
{% if item.nameserver is defined and item.nameserver.ipv6 is defined -%}
|
||||
{% for nameserver in item.nameserver.ipv6 -%}
|
||||
DNS={{ nameserver }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
|
||||
{% if item.address.ipv4 is defined %}
|
||||
{% if item.address is defined %}
|
||||
[Address]
|
||||
Address={{ item.address.ipv4 }}
|
||||
{% if item.address.ipv4 is defined -%}
|
||||
{% for address in item.address.ipv4 -%}
|
||||
Address={{ address }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% if item.address.ipv6 is defined -%}
|
||||
{% for address in item.address.ipv6 -%}
|
||||
Address={{ address }}
|
||||
{% endfor -%}
|
||||
{% endif -%}
|
||||
{% endif -%}
|
||||
|
||||
{% if item.address.ipv6 is defined %}
|
||||
[Address]
|
||||
Address={{ item.address.ipv6 }}
|
||||
{% endif -%}
|
||||
|
||||
|
||||
{% if item.gateway.ipv4 is defined %}
|
||||
{% if item.gateway is defined and item.gateway.ipv4 is defined %}
|
||||
[Route]
|
||||
Destination=0.0.0.0/0
|
||||
Gateway={{ item.gateway.ipv4 }}
|
||||
@ -36,7 +42,7 @@ Protocol=static
|
||||
Type=unicast
|
||||
{% endif -%}
|
||||
|
||||
{% if item.gateway.ipv6 is defined %}
|
||||
{% if item.gateway is defined and item.gateway.ipv6 is defined %}
|
||||
[Route]
|
||||
Destination=::/0
|
||||
Gateway={{ item.gateway.ipv6 }}
|
||||
|
Reference in New Issue
Block a user