Ticket #8609 (closed defect: fixed)
NAT incorrectly works with guest's with static-assigned IP addresses -> fixed in SVNand uses ARP announce mechanism.
Reported by: | fmoreau | Owned by: | |
---|---|---|---|
Component: | network/NAT | Version: | VirtualBox 4.0.4 |
Keywords: | Cc: | ||
Guest type: | Linux | Host type: | Linux |
Description
Hello,
I'm using VBOX 4.0.2, with a Linux guest which is using NAT.
The guest can do ping, ping www.virtualbox.org works, but doing wget www.virtualbox.org doesn't work, wget application is waiting for the HTTP server answer.
I'm attaching the pcap file which logs the vbox network activity.
I'm also attaching the host tcpdump log.
Attachments
Change History
Changed 12 years ago by fmoreau
-
attachment
linux.pcap
added
packet trace on the VM level when doing wget www.virtualbox.org
Changed 12 years ago by fmoreau
-
attachment
host.log
added
A tcpdump trace at the host level when doing wget www.virtualbox.org
comment:1 Changed 12 years ago by Hachiman
- Summary changed from Linux Guest can't receive packets to NAT incorrectly works with guest's with self assigned IP addresses.
comment:2 Changed 12 years ago by Hachiman
While conversation on IRC we've found that this guest uses static-assigned IP, which leads to broadcasting of all IP traffic, dropped by guest TCP/IP stack.
comment:3 Changed 12 years ago by Hachiman
- Version changed from VirtualBox 4.0.2 to VirtualBox 4.0.4
comment:5 Changed 12 years ago by Hachiman
- Summary changed from NAT incorrectly works with guest's with self assigned IP addresses. to NAT incorrectly works with guest's with static-assigned IP addresses and uses ARP announce mechanism.
comment:7 follow-up: ↓ 9 Changed 12 years ago by Hachiman
- Summary changed from NAT incorrectly works with guest's with static-assigned IP addresses and uses ARP announce mechanism. to NAT incorrectly works with guest's with static-assigned IP addresses -> fixed in SVNand uses ARP announce mechanism.
comment:8 Changed 12 years ago by Hachiman
Some distros like Mandriva executes arping -U and arping -A in case of statically assigned IP in ethernet initialization scripts, that results that guest generates Gratuitous ARP packets, without respect to sysctl *.arp_notify.
comment:9 in reply to: ↑ 7 Changed 12 years ago by fmoreau
Replying to Hachiman:
BTW, I'm wondering what was going on on the NAT side: does it incorreclty set an entry in the ARP table for the guest to broadcast ethernet address, or does it add no entry at all ?
Thanks
comment:10 Changed 12 years ago by Hachiman
It's used not right fields: in case ARP Gratuitous requests and response source IP and Ether are the same, but target pair is different in one case it's exactly copy of source ones, and in other target broadcast ethernet and source IP; that made collision in mandriva case. Now we use source pair and in case of any type of announce (arping or arp_notify) we print result to the log. Probably we should add some logging for statically address assigned guests without notification for information.
VBox.log