Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I have two virtual machines both running on a Linux host (Fedora 16). I set both adapters as attached to NAT. When I boot them up they both have their default gateway set to 10.0.2.2. They also both have the same IP address (10.0.2.15). They are both on the same adapter (adapter 1). I don't know why they are getting assigned the same IP address, and shouldn't the default gateway be 10.0.2.1 since the subnet address is 10.0.2.0 and the netmask is 255.255.255.0. Is there something I am missing, has this happened to anyone before? How do I get the VirtualBox DHCP working properly?

share|improve this question

3 Answers 3

up vote 6 down vote accepted

VirtualBox DHCP is working properly.

There is nothing wrong with having all of your machines getting the same address in NAT configuration. All VMs are isolated from each other so there is no risk of conflict. They are also not on the same adapter. Each VM has its own virtualized hardware including NICs.

The default gateway also need not to be 10.0.2.1. Although it is a common practice to have it at the lower IP address, it can be any IP in the subnet range.

Also, there is no "real" dhcp service, everything is hardcoded in the VirtualBox code, although if you are not happy with the default IP addresses you can fine tune the NAT engine.

share|improve this answer

They will get their default gateway from the dhcp server - so it will be whatever is set up in there. You will need to look at the dhcp server to see what it is delivering (generally just set it in the server config to be whatever you want it to be)

With regard to the two adapters having the same address, this is most likely down to the configuration you have set in Virtualbox. If they are clones then you may need to explicitly give one a new MAC address.

Check the network configurations for each and see if they think they are the same.

If different, you could temporarily set a fixed IP for each one at the dhcp server (assigned by MAC address)

Have a look at this section from the VirtualBox manual for more information.

share|improve this answer
1  
The link you posted doesn't apply to NAT. –  jlliagre Jan 27 '12 at 23:01

Your virtual machines will get the same IP adress from any dhcp service as long as they have the same ethernet MAC address (a hardware address, unique like a fingerprint, set by the hardware manufacturer of your network device).

Since you are running virtual machines, they have virtual hardware and therefore they "fake" the MAC address. You have to make sure not 2 machines have the same ethernet hardware address.

You can set the ethernet MAC address of your virtual machine in VirtualBox in the hardware network section (it looks like this: 3c:08:51:05:24:8a)

You can check it in your running VM:

sudo ifconfig

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
    ether 3c:08:51:05:24:8a 
    media: autoselect (none)
    status: inactive
share|improve this answer
1  
The NAT dhcp server embedded with VirtualBox isn't a real one. In particular it doesn't care about MAC addresses. In any case, multiple VM might have the same MAC address, that doesn't matter as the virtual networks are fully isolated. –  jlliagre Jan 27 '12 at 23:00

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.