diff --git a/overlays/wwinit/etc/NetworkManager/system-connections/ww4-managed.ww b/overlays/wwinit/etc/NetworkManager/system-connections/ww4-managed.ww index 465565cf..c90f6f1d 100644 --- a/overlays/wwinit/etc/NetworkManager/system-connections/ww4-managed.ww +++ b/overlays/wwinit/etc/NetworkManager/system-connections/ww4-managed.ww @@ -12,9 +12,17 @@ id={{ $connection_id }} interface-name={{ $netdev.Device }} {{ if $netdev.Type -}} +{{ if eq $netdev.Type "bond-slave" -}} +slave-type=bond +{{- $conn := split $connection_id "_" }} +{{- $master := index $conn 0 }} +master={{ $master }} +type=ethernet +{{ else }} type={{ $netdev.Type }} -{{ end -}} autoconnect=true +{{ end -}} +{{ end -}} {{ if $netdev.Hwaddr -}} {{ if eq $netdev.Type "ethernet" -}} @@ -26,6 +34,22 @@ mtu={{ $netdev.MTU }} {{ end -}} {{ end -}} +# bond +{{ if eq $netdev.Type "bond" -}} +[ethernet] +{{ if $netdev.MTU -}} +mtu={{ $netdev.MTU }} +{{ end -}} + +[bond] +downdelay=0 +miimon=100 +mode=802.3ad +xmit_hash_policy=layer2+3 +updelay=0 + +{{ end -}} + {{ if eq $netdev.Type "infiniband" -}} [infiniband] transport-mode=datagram @@ -34,7 +58,7 @@ mtu={{ $netdev.MTU }} {{ end -}} {{ end -}} -{{ if $netdev.IpCIDR -}} +{{ if and ($netdev.IpCIDR) (ne $netdev.Type "bond-slave") -}} [ipv4] address={{ $netdev.IpCIDR }} {{ if $netdev.Gateway -}}