--- /usr/lib/python3.6/site-packages/cloudinit/net/sysconfig.py 2017-06-28 06:55:03.000000000 +0800 +++ sysconfig.py 2017-07-22 12:19:20.924882813 +0800 @@ -204,6 +204,7 @@ @classmethod def _render_iface_shared(cls, iface, iface_cfg): + print("XXA:", iface, iface_cfg) for k, v in cls.iface_defaults: iface_cfg[k] = v @@ -212,6 +213,28 @@ if old_value is not None: iface_cfg[new_key] = old_value + if 'subnets' in iface: + for subnet in iface['subnets']: + if 'dns_search' in subnet: + search_str = "" + for i, k in enumerate(subnet['dns_search']): + if i > 3: + break + if i > 0: + search_str = search_str + " " + search_str = search_str + k + iface_cfg['SEARCH'] = search_str + + if 'dns_nameservers' in subnet: + ns_str = "" + for i, k in enumerate(subnet['dns_nameservers']): + if i == 3: + break + iface_cfg['DNS'+str(i+1)] = k + + if 'gateway' in subnet: + iface_cfg['GATEWAY'] = subnet['gateway'] + @classmethod def _render_subnet(cls, iface_cfg, route_cfg, subnet): subnet_type = subnet.get('type')