From 318c337ccc883d77d9bed297c01f29a40280e927 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Fri, 24 Mar 2023 10:11:59 +0000 Subject: [PATCH] Make sure meraxes holds a DHCPv6 lease --- cookbooks/networking/templates/default/network.erb | 14 ++++++++++++++ roles/meraxes.rb | 6 +++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/cookbooks/networking/templates/default/network.erb b/cookbooks/networking/templates/default/network.erb index 6e1493738..431330e2c 100644 --- a/cookbooks/networking/templates/default/network.erb +++ b/cookbooks/networking/templates/default/network.erb @@ -2,6 +2,9 @@ Name=<%= @interface[:interface] %> [Network] +<% if @interface.dig(:inet6, :dhcp) -%> +DHCP=ipv6 +<% end -%> <% if @interface[:inet] -%> Address=<%= @interface[:inet][:address] %>/<%== @interface[:inet][:prefix] %> <% end -%> @@ -12,6 +15,17 @@ IPv6AcceptRA=no <% Array(@interface[:vlans]).sort.uniq.each do |vlan| -%> VLAN=<%= @interface[:interface] %>.<%= vlan %> <% end -%> +<% if @interface.dig(:inet6, :dhcp) -%> + +[DHCPv6] +<% if @interface[:inet6][:dhcp][:duidtype] -%> +DUIDType=<%= @interface[:inet6][:dhcp][:duidtype] %> +<% end -%> +<% if @interface[:inet6][:dhcp][:duidrawdata] -%> +DUIDRawData=<%= @interface[:inet6][:dhcp][:duidrawdata] %> +<% end -%> +WithoutRA=solicit +<% end -%> <% if @interface.dig(:inet, :gateway) && @interface[:inet][:gateway] != @interface[:inet][:address] -%> [Route] diff --git a/roles/meraxes.rb b/roles/meraxes.rb index 3fee32b31..3c75dba62 100644 --- a/roles/meraxes.rb +++ b/roles/meraxes.rb @@ -15,7 +15,11 @@ default_attributes( :inet6 => { :address => "2001:bc8:2d57:100:aa1e:84ff:fe72:e660", :prefix => "48", - :gateway => "2001:bc8:2::2:258:1" + :gateway => "2001:bc8:2::2:258:1", + :dhcp => { + :duidtype => "link-layer", + :duidrawdata => "00:01:14:e9:19:1c:49:e0" + } } } } -- 2.45.1