VirtualBox

Ticket #8609 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

NAT incorrectly works with guest's with static-assigned IP addresses -> fixed in SVNand uses ARP announce mechanism.

Reported by: fmoreau Owned by:
Priority: major 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

VBox.log Download (48.1 KB) - added by fmoreau 3 years ago.
VBox.log
linux.pcap Download (5.4 KB) - added by fmoreau 3 years ago.
packet trace on the VM level when doing wget www.virtualbox.org
host.log Download (1.7 KB) - added by fmoreau 3 years ago.
A tcpdump trace at the host level when doing wget www.virtualbox.org

Change History

Changed 3 years ago by fmoreau

VBox.log

Changed 3 years ago by fmoreau

packet trace on the VM level when doing wget www.virtualbox.org

Changed 3 years ago by fmoreau

A tcpdump trace at the host level when doing wget www.virtualbox.org

comment:1 Changed 3 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 3 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 3 years ago by Hachiman

  • Version changed from VirtualBox 4.0.2 to VirtualBox 4.0.4

comment:4 Changed 3 years ago by Hachiman

And I was able to reproduce issue locally.

comment:5 Changed 3 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:6 Changed 3 years ago by Hachiman

Affected guests use ARP announce mechanism only.

comment:7 follow-up: ↓ 9 Changed 3 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 3 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 3 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 3 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.

comment:11 Changed 3 years ago by frank

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use