@@ -77,6 +77,13 @@ func (v VMWare) FetchMetadata() (metadata datasource.Metadata, err error) {
7777 }
7878 metadata.NetworkConfig.DNS.Nameservers = append(metadata.NetworkConfig.DNS.Nameservers, val)
7979 }
80+ dnsServers, _ := v.read("dns.servers")
81+ for _, val := range strings.Split(dnsServers, ",") {
82+ if val == "" {
83+ break
84+ }
85+ metadata.NetworkConfig.DNS.Nameservers = append(metadata.NetworkConfig.DNS.Nameservers, val)
86+ }
8087
8188 for i := 0; ; i++ {
8289 //if domain := saveConfig("dns.domain.%d", i); domain == "" {
@@ -86,6 +93,13 @@ func (v VMWare) FetchMetadata() (metadata datasource.Metadata, err error) {
8693 }
8794 metadata.NetworkConfig.DNS.Search = append(metadata.NetworkConfig.DNS.Search, val)
8895 }
96+ dnsDomains, _ := v.read("dns.domains")
97+ for _, val := range strings.Split(dnsDomains, ",") {
98+ if val == "" {
99+ break
100+ }
101+ metadata.NetworkConfig.DNS.Search = append(metadata.NetworkConfig.DNS.Search, val)
102+ }
89103
90104 metadata.NetworkConfig.Interfaces = make(map[string]netconf.InterfaceConfig)
91105 found := true
@@ -120,6 +134,11 @@ func (v VMWare) FetchMetadata() (metadata datasource.Metadata, err error) {
120134 if address == "" {
121135 break
122136 }
137+ netmask, _ := v.read("interface.%d.ip.%d.netmask", i, a)
138+ if netmask != "" {
139+ ones, _ := net.IPMask(net.ParseIP(netmask).To4()).Size()
140+ address = fmt.Sprintf("%s/%d", address, ones)
141+ }
123142 netDevice.Addresses = append(netDevice.Addresses, address)
124143 found = true
125144 netDevice.DHCP = false
0 commit comments