[openstack-dev] How does instance's tap device mac address generate?

Radek Smigielski radek.smigielski at ymail.com
Thu Jun 11 11:26:30 UTC 2015


> On Thursday, 11 June 2015, 12:00:46, Neil Jerram <Neil.Jerram at metaswitch.com> wrote:
> > On 11/06/15 10:47, changzhi wrote:
>>  Hi, all.
>>  I create a vm and it's neutron port's mac address is
>>  "fa:16:3e:3f:02:ff". I see "fa:16:3e:3f:02:ff" inside 
> vm when I run
>>  "ifconfig eth0". Why does vm's tap device's mac address 
> is
>>  "fe:16:3e:3f:02:ff"? Why different between neutron port's mac 
> address
>>  and tap device's mac address? Does libvirt create instance tap device
>>  and its mac address is generated randomly?
>> 
>>  Thx
>>  zhi
> 
> There are two MAC addresses, one at each end of the link between the 
> host and the VM.
> 
> -------------------+
>   Host              |           +-------------------+
>                     |           |             VM    |
>      tap12345-CD ------------------- eth0           |
>   fa:16:3e:56:71:42 |           | fa:16:3e:3f:02:ff |
>                     |           |                   |
>                     |           +-------------------+
> -------------------+
> 
> I believe that both of these addresses are randomly generated, although 
> I'm not sure exactly which components do that.
> 
> Does that help at all?
> 
> Thanks,
>     Neil



In neutron.conf you've got base_mac option and "fa:16:3e" is the default value.

# Base MAC address. The first 3 octets will remain unchanged. If the
# 4h octet is not 00, it will also be used. The others will be
# randomly generated.
# 3 octet
# base_mac = fa:16:3e:00:00:00
# 4 octet
# base_mac = fa:16:3e:4f:00:00





Cheers,
Radosław Śmigielski



More information about the OpenStack-dev mailing list