@@ -1892,6 +1892,11 @@ let eject_self ~__context ~host =
1892
1892
| `Static ->
1893
1893
" static"
1894
1894
in
1895
+ let mode_v6 =
1896
+ Record_util. ipv6_configuration_mode_to_string
1897
+ pif.API. pIF_ipv6_configuration_mode
1898
+ |> String. uncapitalize_ascii
1899
+ in
1895
1900
let write_first_boot_management_interface_configuration_file () =
1896
1901
(* During firstboot, now inventory has an empty MANAGEMENT_INTERFACE *)
1897
1902
let bridge = " " in
@@ -1905,7 +1910,11 @@ let eject_self ~__context ~host =
1905
1910
(* If the management_interface exists on a vlan, write the vlan id into management.conf *)
1906
1911
let vlan_id = Int64. to_int pif.API. pIF_VLAN in
1907
1912
let config_base =
1908
- [sprintf " LABEL='%s'" management_device; sprintf " MODE='%s'" mode]
1913
+ [
1914
+ sprintf " LABEL='%s'" management_device
1915
+ ; sprintf " MODE='%s'" mode
1916
+ ; sprintf " MODEV6='%s'" mode_v6
1917
+ ]
1909
1918
in
1910
1919
let config_static =
1911
1920
if mode <> " static" then
@@ -1915,17 +1924,32 @@ let eject_self ~__context ~host =
1915
1924
sprintf " IP='%s'" pif.API. pIF_IP
1916
1925
; sprintf " NETMASK='%s'" pif.API. pIF_netmask
1917
1926
; sprintf " GATEWAY='%s'" pif.API. pIF_gateway
1918
- ; sprintf " DNS='%s'" pif.API. pIF_DNS
1919
1927
]
1920
1928
in
1929
+ let configv6_static =
1930
+ if mode_v6 <> " static" then
1931
+ []
1932
+ else
1933
+ [
1934
+ sprintf " IPv6='%s'" (String. concat " ," pif.API. pIF_IPv6)
1935
+ ; sprintf " IPv6_GATEWAY='%s'" pif.API. pIF_ipv6_gateway
1936
+ ]
1937
+ in
1938
+ let config_dns =
1939
+ if mode = " static" || mode_v6 = " static" then
1940
+ [sprintf " DNS='%s'" pif.API. pIF_DNS]
1941
+ else
1942
+ []
1943
+ in
1921
1944
let config_vlan =
1922
1945
if vlan_id = - 1 then
1923
1946
[]
1924
1947
else
1925
1948
[sprintf " VLAN='%d'" vlan_id]
1926
1949
in
1927
1950
let configuration_file =
1928
- List. concat [config_base; config_static; config_vlan]
1951
+ List. concat
1952
+ [config_base; config_static; configv6_static; config_dns; config_vlan]
1929
1953
|> String. concat " \n "
1930
1954
in
1931
1955
Unixext. write_string_to_file
0 commit comments