Friday, January 22, 2010

virtualbox bridged networking osx host windows xp guest mtu bug!

if you are running windows xp as a guest os using bridged networking, and osx as the host os, using virtualbox for the virtualization software, then i am sure you have noticed some difficulty getting to various websites, such as microsoft's windows update site

the strange thing is that some sites do indeed load, my personal natefrogg.com site loaded without incident, google.com also loads just fine, you may even be able to access other machines on the lan without any issues as well!

it comes down to the mtu settings, for whatever reason, the standard 1500 mtu needs to be reduced in your guest operating system. it appears that the bridged networking mode in virtualbox actually interferes with packet size, packets larger than 1469 will not correctly transmit, seems to be that virtualbox is padding the packets

we need to change the mtu in windows xp, or whatever guest os you are using, to 1469 in order to resolve this problem

to do so, open up a registry editor, i am using regedit, and navigate to this key:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\[Adapter ID]]

note that [Adapter ID] is going to be a unique alphanumeric sequence, you may have several, you need to find the correct one, usually the correct key will have more entries within it, to be safe you could add the mtu entry to all of them, it wouldn't do any harm to do so...

once in the registry key for your interface, create a new dword value and call it MTU

edit the MTU dword value, change the value itself to 1469 and make sure it is a decimal value and not hexadecimal

close up the registry editor, it is time to reboot

once rebooted, try to get to the sites you were having issues with, all should be well in the land of bridged networking now

the virtualbox.org site does in fact have record of this bug, it is filed as trouble ticket #3783 and can be viewed on the virtualbox site here: http://www.virtualbox.org/ticket/3783