Skip to content

Ansible role for configuring systemd-networkd

License

Notifications You must be signed in to change notification settings

aleksei-mv/ansible-networkd

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

networkd

An Ansible role for configuring systemd-networkd.

This project adheres to Semantic Versioning.

Requirements

This role assumes that networkd is already present in the system. So it should be suitable for any distro with networkd.

Role Variables

Example configuration. Follow networkd documentation to construct yours.

networkd:
 link:
     # This is file name
   - name: eth0
     # This is prefix for file. This results in following file name: 50-eth0.link
     priority: 50
     content:
       - Match:
         - MACAddress: "aa:bb:cc:dd:ee:ff"
       - Link:
         - Name: eth0
 netdev:
   - name: br0
     priority: 50
     content:
       - NetDev:
         - Name: br0
         - Kind: bridge
 network:
   - name: eth0
     priority: 50
     content:
       - Match:
         - Name: eth0
       - Network:
         - DHCP: ipv4
         - LinkLocalAddressing: no
         - LLDP: yes
       - DHCPv4:
         - UseHostname: no
         - Hostname: gimme-some-addr
         - UseMTU: yes
   - name: br0_slaves
     priority: 50
     content:
       - Match:
         - MACAddress: "11:bb:cc:dd:ee:ff 22:bb:cc:dd:ee:ff"
       - Network:
         - Bridge: br0

What to do on configuration changes. Could be "restart", "reload" or "nothing". Variable is mandatory.

networkd_apply_action: "restart"

Custom content for /etc/resolv.conf. Every element in list is string in file. Variable is optional.

networkd_resolv_conf_content:
  - nameserver 1.1.1.1
  - nameserver 8.8.8.8

License

MIT

About

Ansible role for configuring systemd-networkd

Resources

License

Stars

Watchers

Forks

Packages

No packages published