ansible/roles/networking/templates/raspbian_dhcpcd.conf.j2

57 lines
1.6 KiB
Text
Raw Normal View History

2021-07-08 02:13:11 +02:00
{{ ansible_managed | comment }}
# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.
# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel
# Inform the DHCP server of our hostname for DDNS.
hostname
# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid
# Persist interface configuration when dhcpcd exits.
persistent
# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit
# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu
# Most distributions have NTP support.
#option ntp_servers
# A ServerID is required by RFC2131.
require dhcp_server_identifier
# Generate SLAAC address using the Hardware Address of the interface
#slaac hwaddr
# OR generate Stable Private IPv6 Addresses based from the DUID
slaac private
2021-07-10 02:39:21 +02:00
{% for item in lookup('dict', interfaces, wantlist=True) %}
2021-07-08 02:13:11 +02:00
{% if item.value.type == 'static' %}
interface {{ item.key }}
{% if 'ipv4' in item.value %}
static ip_address={{ item.value.ipv4 }}/{{ item.value.netmaskv4 }}
{% endif %}
{% if 'gateway' in item.value %}
static routers={{ item.value.gateway }}
{% endif %}
{% endif %}
{% endfor %}