ansible-dhcpd/defaults/main.yml
Maciej Delmanowski 48c658bbdf Add 'dhcpd_ipversion' variable
This variable indicates which Internet Protocol version should be enabled
in DHCP server, because ISC DHCP server supports only 1 version active
at a time.
2015-03-29 21:11:40 +02:00

193 lines
4.6 KiB
YAML

---
# Default variables
# =================
# .. contents:: Sections
# :local:
#
# -------------------
# General options
# -------------------
# .. envvar:: dhcpd_mode
#
# What service type to configure on this host:
#
# - ``server``: host is an ISC DHCP server, see ``dhcpd(8)``
#
# - ``relay``: host is an ISC DHCP relay, see dhcrelay(8)
#
dhcpd_mode: 'server'
# .. envvar:: dhcpd_ipversion
#
# Internet Protocol version to configure: ``4`` or ``6``
dhcpd_ipversion: '4'
# .. envvar:: dhcpd_base_packages_map
#
# What packages should be installed, depending on mode of operation
dhcpd_base_packages_map:
'server': [ 'isc-dhcp-server' ]
'relay': [ 'isc-dhcp-relay' ]
# --------------------------------
# ISC DHCP Relay configuration
# --------------------------------
# .. envvar:: dhcpd_relay_servers
#
# List of DHCP servers which should receive the relayed packets
dhcpd_relay_servers: [ '{{ ansible_default_ipv4.gateway }}' ]
# .. envvar:: dhcpd_relay_interfaces
#
# List of network interfaces that dhcrelay should listen on
dhcpd_relay_interfaces: []
# .. envvar:: dhcpd_relay_options
#
# Additional dhcrelay options
dhcpd_relay_options: '{{ "-" + dhcpd_ipversion }}'
# ---------------------------------
# ISC DHCP Server configuration
# ---------------------------------
# .. envvar:: dhcpd_server_options
#
# dhcpd(8) options
dhcpd_server_options: '{{ "-" + dhcpd_ipversion }}'
# ---------------------------
# DHCP main configuration
# ---------------------------
# .. envvar:: dhcpd_authoritative
#
# Is this DHCP server authoritative?
dhcpd_authoritative: False
# .. envvar:: dhcpd_interfaces
#
# List of network interfaces to listen on for DHCP requests
# If this list is empty, Ansible will try to guess correct interfaces
# automatically
dhcpd_interfaces: []
# .. envvar:: dhcpd_domain
#
# Default domain to use
dhcpd_domain: '{{ ansible_domain }}'
# .. envvar:: dhcpd_dns_servers
#
# List of default DNS servers. By default, point users to the same host that
# serves them DHCP requests, on default interface. If this host is a router,
# you might need to set DNS server to internal interface IP address.
dhcpd_dns_servers: [ '{{ ansible_default_ipv4.address }}' ]
# .. envvar:: dhcpd_lease_time
#
# Max lease time in hours (default lease time is calculated below)
dhcpd_lease_time: 24
# .. envvar:: dhcpd_global_options
#
# Default global options formatted as a text block
dhcpd_global_options: |
option domain-name "{{ ansible_domain }}";
option domain-name-servers {{ dhcpd_dns_servers | join(' ') }};
default-lease-time {{ (((dhcpd_lease_time / 2) + 6) * 60 * 60)|round|int }};
max-lease-time {{ (dhcpd_lease_time * 60 * 60)|round|int }};
log-facility local7;
# .. envvar:: dhcpd_options
#
# Custom options formatted as a text block
dhcpd_options: False
# ----------------------------------------
# ISC DHCP Server configuration scopes
# ----------------------------------------
# These lists allow you to generate nested configuration scopes in
# dhcpd.conf. Most of the information about them can be found in dhcpd.conf(5)
# manual page. You can create nested configuration using Ansible variable
# expansion.
# .. envvar:: dhcpd_keys
#
# List of secret keys used for Dynamic DNS configuration. See
# :ref:`dhcpd_keys` for more details.
dhcpd_keys: []
# .. envvar:: dhcpd_classes
#
# List of client classes (see dhcpd.conf(5)). More informaction can be found in
# :ref:`dhcpd_classes`.
dhcpd_classes: []
# .. envvar:: dhcpd_groups
#
# List of configuration scopes groped together. See :ref:`dhcpd_groups` for
# more details.
dhcpd_groups: []
# .. envvar:: dhcpd_shared_networks
#
# List of shared networks grouping specified subnets together. See
# :ref:`dhcpd_shared_networks` for more details.
dhcpd_shared_networks: []
# .. envvar:: dhcpd_subnets
#
# List of subnets not in a shared network. See :ref:`dhcpd_subnets` for more
# details.
dhcpd_subnets: [ '{{ dhcpd_subnet_default[dhcpd_ipversion] }}' ]
# Default subnet managed automatically
dhcpd_subnet_default:
'4':
subnet: '{{ ansible_default_ipv4.network + "/" + ansible_default_ipv4.netmask }}'
comment: 'Generated automatically by Ansible'
'6':
subnet: '{{ ansible_default_ipv6.address + "/" + ansible_default_ipv6.prefix }}'
comment: 'Generated automatically by Ansible'
# .. envvar:: dhcpd_hosts
#
# Global list of hosts in DHCP. See ref:`dhcpd_hosts` for more details.
dhcpd_hosts: []
# List of external files to include. See :ref:`dhcpd_includes` for more
# details.
dhcpd_includes: []
# .. envvar:: dhcpd_failovers
#
# DHCP failover configuration. See :ref:`dhcpd_failovers` for more details.
dhcpd_failovers: []