X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/42e99538a6a521e8c6896a713ec136844d09a780..a81d3cdabca3b55a19b2bcc4c2cf5a1dd30071b4:/cookbooks/networking/templates/default/interfaces.erb diff --git a/cookbooks/networking/templates/default/interfaces.erb b/cookbooks/networking/templates/default/interfaces.erb index 4d1f277e5..d0d4dd7c8 100644 --- a/cookbooks/networking/templates/default/interfaces.erb +++ b/cookbooks/networking/templates/default/interfaces.erb @@ -14,37 +14,46 @@ auto <%= interface[:bond][:slaves].sort.uniq.join(" ") %> <% end -%> iface <%= interface[:interface] %> <%= interface[:family] %> static - address <%= interface[:address] %> +<% if interface[:interface] =~ /\.\d+$/ -%> + vlan-raw-device <%= interface[:interface].split(".").first %> +<% end -%> + address <%= interface[:address] %> <% if interface[:family] == "inet" -%> - netmask <%= interface[:netmask] %> + netmask <%= interface[:netmask] %> <% elsif interface[:family] == "inet6" -%> - netmask <%= interface[:prefix] %> + netmask <%= interface[:prefix] %> <% end -%> <% if interface[:hwaddress] -%> hwaddress <%= interface[:hwaddress] %> <% end -%> <% if interface[:gateway] -%> <% if interface[:network].include?(interface[:gateway]) or IPAddr.new("fe80::/64").include?(interface[:gateway]) -%> - gateway <%= interface[:gateway] %> - metric <%= interface[:metric] %> + gateway <%= interface[:gateway] %> + metric <%= interface[:metric] %> <% else -%> - post-up /sbin/ip -f <%= interface[:family] %> route add <%= interface[:gateway] %> dev <%= interface[:interface] %> - post-up /sbin/ip -f <%= interface[:family] %> route add default metric <%= interface[:metric] %> via <%= interface[:gateway] %> - pre-down /sbin/ip -f <%= interface[:family] %> route del default metric <%= interface[:metric] %> via <%= interface[:gateway] %> - pre-down /sbin/ip -f <%= interface[:family] %> route del <%= interface[:gateway] %> dev <%= interface[:interface] %> + post-up /sbin/ip -f <%= interface[:family] %> route add <%= interface[:gateway] %> dev <%= interface[:interface] %> + post-up /sbin/ip -f <%= interface[:family] %> route add default metric <%= interface[:metric] %> via <%= interface[:gateway] %> + pre-down /sbin/ip -f <%= interface[:family] %> route del default metric <%= interface[:metric] %> via <%= interface[:gateway] %> + pre-down /sbin/ip -f <%= interface[:family] %> route del <%= interface[:gateway] %> dev <%= interface[:interface] %> <% end -%> <% end -%> <% if interface[:mtu] -%> - mtu <%= interface[:mtu] %> + mtu <%= interface[:mtu] %> <% end -%> <% if interface[:family] == "inet6" -%> - autoconf 0 + autoconf 0 <% end -%> <% if interface[:bond] -%> bond-mode <%= interface[:bond][:mode] || "active-backup" %> bond-slaves none bond-primary <%= interface[:bond][:slaves].first %> bond-miimon <%= interface[:bond][:miimon] || 100 %> +<% if interface[:bond][:xmithashpolicy] -%> + bond_xmit_hash_policy <%= interface[:bond][:xmithashpolicy] %> +<% end -%> +<% if interface[:bond][:lacprate] -%> + bond-lacp-rate <%= interface[:bond][:lacprate] %> +<% end -%> bond-downdelay <%= interface[:bond][:downdelay] || 200 %> bond-updelay <%= interface[:bond][:updelay] || 200 %> <% end -%>