Zhu*_*Wei 6 networking virtualbox ping bridge
有一个运行 Ubuntu Server 12.04.2 的专用服务器。此服务器有 4 个可用 IP:A、B、C、D。服务器本身采用 A。
服务器现在正在运行两个 VirtualBox 来宾,均具有“桥接适配器”网络类型。一个来宾运行 Windows Server 2003,使用 IP 地址 B。另一台运行 Arch Linux (Live CD),使用 IP 地址 C。
apt-get,下载速度也不错。ping www.google.com在 cmd.exe 中,但我无法在 IE6 中访问 www.google.com。ping www.google.com在 zsh 中,但curl -v www.google.com不起作用。我还可以telnet www.google.com 80,这意味着至少 80/tcp 和 53/udp 端口正在工作。(实际上,服务器上没有 iptables 防火墙。)ssh至可以到另一台机器上!(使用标准 22/tcp )wget一些 https 站点,它停留在“连接到 XXX.XXX.XXX.XXX:443...已连接”。我已经尝试更改--nictype1VM 的设置和/或在来宾操作系统中设置不同的 MTU,但问题仍然存在。
谁能帮我?
附加信息:将“桥接适配器”更改为“NAT”时,来宾操作系统可以curl www.google.com。一切安好。但是由于我需要公共 IP,所以我必须为来宾操作系统使用“桥接适配器”。
附加信息 2:在带有“桥接适配器”的来宾操作系统中,我可以ssh使用 22/tcp 的其他主机,我可以dig使用 53/udp 的某些域,但我不能wget或curl使用 80/tcp 或 443/tcp 的网站,但是telnet www.google.com 80或telnet www.google.com 443很好。使用 "NAT" 时,一切正常。
嗯,这是我自己想出来的。
我偶然发现我可以curl google.com但不能curl www.google.com,因为第一个比较小,我认为这是MTU或什么的问题,导致客户操作系统无法传输大段数据。
谷歌搜索“虚拟桥接mtu”后,我找到了这篇文章:https : //forums.virtualbox.org/viewtopic.php?f=7& t=30632&start =0
然后我ethtool -K eth2 sg off rx off tx off tso off在 Ubuntu 服务器(eth2 是桥接接口)中进行了尝试,并且......它就像一个魅力!即刻