we are not going to add any /32 routes to the name servers and will only populate teh "routes" section if the subnet had addtional routs popluated in neutron.
i suspect the issue you are fasing is in the neturon DHCP server or possible cloud init as nova is not going to activly push any rout infomation to the vm that would install a /32 directly.
looking at the metadata code this is where we generate the dns info
https:/ /github. com/openstack/ nova/blob/ 50fdbc752a9ca9c 31488140ef2997e d59d861a41/ nova/virt/ netutils. py#L103- L121
if subnet_v4: v4.get_ meta('dhcp_ server' ) is not None:
continue
if subnet_
if subnet_v4['ips']:
address = ip['address']
netmask = model.get_ netmask( ip, subnet_v4) v4['gateway' ]:
gateway = subnet_ v4['gateway' ]['address' ]
broadcast = str(subnet_ v4.as_netaddr( ).broadcast) [i['address' ] for i in subnet_v4['dns']]) v4['routes' ]:
( net, mask) = get_net_ and_mask( route_ref[ 'cidr'] )
route = {'gateway': str(route_ ref['gateway' ]['address' ]),
'cidr' : str(route_ ref['cidr' ]),
'network' : net,
'netmask' : mask}
routes. append( route)
ip = subnet_v4['ips'][0]
if subnet_
dns = ' '.join(
for route_ref in subnet_
so we just take the info from neutron and more or less use it directly
this resulted in a json blob that looks like this /specs. openstack. org/openstack/ nova-specs/ specs/liberty/ implemented/ metadata- service- network- info.html# rest-api- impact
https:/
which can be used by cloud init to configure networking
{ // Standard VM VIF networking
"ip_address" : "10.184.0.244",
"dns_nameserve rs": [
"69. 20.0.164" ,
"69. 20.0.196"
"network" : "10.0.0.0",
"netmask" : "255.0.0.0",
"gateway" : "11.0.0.1"
"network" : "0.0.0.0",
"netmask" : "0.0.0.0",
"gateway" : "23.253.157.1"
"network_ id": "da5bb487- 5193-4a65- a3df-4a0055a8c0 d7"
"id": "private-ipv4",
"type": "ipv4",
"link": "interface0",
"netmask": "255.255.240.0",
],
"routes": [
{
},
{
}
],
},
we are not going to add any /32 routes to the name servers and will only populate teh "routes" section if the subnet had addtional routs popluated in neutron.
i suspect the issue you are fasing is in the neturon DHCP server or possible cloud init as nova is not going to activly push any rout infomation to the vm that would install a /32 directly.