Virtual network does not have both 'default_gateway' and 'dns_server_address' in some cases like below;
When VM uses Global IP address without both default gateway and dhcp, customer aims to use all of Global IP address for VM. Because each Global IP address is not wealth. Hence, customer wants to set both 'default_gateway' and 'dns_server_address' as '0.0.0.0'.
However, if both attributes are set '0.0.0.0', there is no Interface of pkt0 for sending APR packet from vRouter. As a result, nova live-migration will not work well.
To avoid this issue, I'd like to propose two solutions below.
1) At least one Pkt0 interface will be allocated to each virtual-network even if both 'default_gateway' and 'dns_server_address' are set "0.0.0.0". If vrouter sends ARP request to VM, use "0.0.0.0" for Sender IP address in ARP packet.
see DAD mode http://linux.die.net/man/8/arping
2) Allow dummy IP address to 'dns_server_address' such as '169.254.169.1' when Customer does not want to consume any IP address for Contrail internal use.
As per my test, nova live-migration with AAP worked well when I configured '169.254.169.1' to 'default_gateway'. I think dummy address will work in 'dns_server_address' after fixing this bug.
This is the JSON which I tested.
{
"virtual-network": { "display_name": "test1", "flood_unknown_unicast": false,
"fq_name": [ "default-domain", "admin",
"test1"
],
"href": "http://172.27.113.202:8082/virtual-network/02cf8444-8fdd-4451-91b5-967b7e6faf35",
"id_perms": { "created": "2016-03-03T00:55:47.726224", "creator": null, "description": null, "enable": true, "last_modified": "2016-03-03T00:55:47.841816", "permissions": { "group": "admin", "group_access": 7, "other_access": 7, "owner": "admin", "owner_access": 7
}, "user_visible": true,
"uuid": { "uuid_lslong": 10499463563430571829, "uuid_mslong": 202525938261247057
}
}, "is_shared": false,
"name": "test1", "network_ipam_refs": [
{ "attr": { "ipam_subnets": [ { "addr_from_start": true, "allocation_pools": [], "default_gateway": "169.254.169.1", "dhcp_option_list": { "dhcp_option": [ { "dhcp_option_name": "6", "dhcp_option_value": "0.0.0.0" } ] }, "dns_server_address": "0.0.0.0", "enable_dhcp": false, "host_routes": { "route": [] }, "subnet": { "ip_prefix": "10.0.0.0", "ip_prefix_len": 24 }, "subnet_uuid": "88a0d5fa-60ee-4eef-8d25-514ce1f2625e" } ]
}, "href": "http://172.27.113.202:8082/network-ipam/1e12f68b-f45e-4b25-96b8-f97d212365a0", "to": [ "default-domain", "default-project", "default-network-ipam"
], "uuid": "1e12f68b-f45e-4b25-96b8-f97d212365a0"
}
], "parent_href": "http://172.27.113.202:8082/project/1ab63ac7-e359-4ff9-b6a4-fc15e303e1a0", "parent_type": "project", "parent_uuid": "1ab63ac7-e359-4ff9-b6a4-fc15e303e1a0", "route_target_list": {}, "router_external": false, "routing_instances": [
{ "href": "http://172.27.113.202:8082/routing-instance/89e60b33-19a4-47fd-9341-6566a936e222", "to": [ "default-domain", "admin", "test1", "test1"
], "uuid": "89e60b33-19a4-47fd-9341-6566a936e222"
}
],
"uuid": "02cf8444-8fdd-4451-91b5-967b7e6faf35", "virtual_network_network_id": 8, "virtual_network_properties": { "allow_transit": false, "forwarding_mode": null
}
}
}
Virtual network does not have both 'default_gateway' and 'dns_server_ address' in some cases like below; address' as '0.0.0.0'.
When VM uses Global IP address without both default gateway and dhcp, customer aims to use all of Global IP address for VM. Because each Global IP address is not wealth. Hence, customer wants to set both 'default_gateway' and 'dns_server_
However, if both attributes are set '0.0.0.0', there is no Interface of pkt0 for sending APR packet from vRouter. As a result, nova live-migration will not work well. address' are set "0.0.0.0". If vrouter sends ARP request to VM, use "0.0.0.0" for Sender IP address in ARP packet. linux.die. net/man/ 8/arping
To avoid this issue, I'd like to propose two solutions below.
1) At least one Pkt0 interface will be allocated to each virtual-network even if both 'default_gateway' and 'dns_server_
see DAD mode http://
2) Allow dummy IP address to 'dns_server_ address' such as '169.254.169.1' when Customer does not want to consume any IP address for Contrail internal use. address' after fixing this bug. network" : {
"display_ name": "test1",
"flood_ unknown_ unicast" : false,
"default- domain" ,
"admin" , 172.27. 113.202: 8082/virtual- network/ 02cf8444- 8fdd-4451- 91b5-967b7e6faf 35",
"created" : "2016-03- 03T00:55: 47.726224" ,
"creator" : null,
"descripti on": null,
"enable" : true,
"last_ modified" : "2016-03- 03T00:55: 47.841816" ,
"permissio ns": {
"group" : "admin",
"group_ access" : 7,
"other_ access" : 7,
"owner" : "admin",
"owner_ access" : 7
"user_ visible" : true,
"uuid_ lslong" : 104994635634305 71829,
"uuid_ mslong" : 202525938261247057
"is_shared" : false,
"network_ ipam_refs" : [
"attr" : {
" ipam_subnets" : [
{
"addr_from_ start": true,
"allocation_ pools": [],
"default_ gateway" : "169.254.169.1",
"dhcp_option_ list": {
"dhcp_ option" : [
{
"dhcp_ option_ name": "6",
"dhcp_ option_ value": "0.0.0.0"
}
]
},
"dns_server_ address" : "0.0.0.0",
"enable_ dhcp": false,
"host_routes" : {
"route" : []
},
"subnet" : {
"ip_ prefix" : "10.0.0.0",
"ip_ prefix_ len": 24
},
"subnet_ uuid": "88a0d5fa- 60ee-4eef- 8d25-514ce1f262 5e"
}
]
"href" : "http:// 172.27. 113.202: 8082/network- ipam/1e12f68b- f45e-4b25- 96b8-f97d212365 a0",
"to": [
" default- domain" ,
" default- project" ,
" default- network- ipam"
"uuid" : "1e12f68b- f45e-4b25- 96b8-f97d212365 a0"
"parent_ href": "http:// 172.27. 113.202: 8082/project/ 1ab63ac7- e359-4ff9- b6a4-fc15e303e1 a0",
"parent_ type": "project",
"parent_ uuid": "1ab63ac7- e359-4ff9- b6a4-fc15e303e1 a0",
"route_ target_ list": {},
"router_ external" : false,
"routing_ instances" : [
"href" : "http:// 172.27. 113.202: 8082/routing- instance/ 89e60b33- 19a4-47fd- 9341-6566a936e2 22",
"to": [
" default- domain" ,
" admin",
" test1",
" test1"
"uuid" : "89e60b33- 19a4-47fd- 9341-6566a936e2 22" 8fdd-4451- 91b5-967b7e6faf 35",
"virtual_ network_ network_ id": 8,
"virtual_ network_ properties" : {
"allow_ transit" : false,
"forwardin g_mode" : null
As per my test, nova live-migration with AAP worked well when I configured '169.254.169.1' to 'default_gateway'. I think dummy address will work in 'dns_server_
This is the JSON which I tested.
{
"virtual-
"fq_name": [
"test1"
],
"href": "http://
"id_perms": {
},
"uuid": {
}
},
"name": "test1",
{
},
],
}
],
{
],
}
],
"uuid": "02cf8444-
}
}
}