Может пинговать, но не может wget на хосте с интерфейсом моста
Это сводит меня с ума, так как я провел два дня, пытаясь решить эту проблему.
У меня есть Ubuntu Server 14.04.2 LTS с KVM и libvirt. У меня есть два гостя виртуальных машин:
- pfSense-2.2: сетевые интерфейсы virtio, WAN1 - кабель, WAN2: aDSL и LAN IP: 192.168.2.13
- Ubuntu Server 14.10: сетевой интерфейс ne2000, IP:192.168.2.10 (имя хоста: deathstar)
Хост имеет мостовые интерфейсы следующим образом:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#auto eth0
#iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.2.10
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.13
bridge_ports eth0
bridge_stp on
bridge_fd 0
bridge_maxwait 0
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 192.168.2.13
dns-search localdomain
auto br1
iface br1 inet manual
bridge_ports eth1
bridge_stp off
bridge_fd 0
bridge_maxwait 0
auto br2
iface br2 inet manual
bridge_ports eth2
bridge_stp off
bridge_fd 0
bridge_maxwait 0
Гость pfSense с мостовым интерфейсом virtio работает отлично, но второй гость с Ubuntu работает нормально только с интерфейсом ne2000, если вместо этого я использую мостовой интерфейс virtio, он может отлично пропинговать и разрешать DNS, купить не может получить доступ к любому сайту с помощью wget или apt-get,
Ничего страшного, я могу жить с этим с ne2000, но хост-машина теперь не может получить доступ к Интернету, с теми же символами, что и раньше, я могу пинговать и разрешать DNS, но не могу получить доступ с помощью wget или apt-get.
Самое смешное, что до 10 дней назад это работало идеально, возможно, какое-то обновление системы "сломало" что-то на хост-машине, и теперь его нельзя обновить или получить доступ к какому-либо сайту.
Я много раз искал разные форумы, пытался отключить IPv6 (многие люди сообщали, что это исправило проблему), менял и отключал bridge_stp, включал и исключал "auto eth0" из файла /etc/network/interfaces и т. Д., Но ничего не работает Я застрял с этим.
Как видите DNS и ping работает нормально...
pablot@deathstar:~$ ping google.com
PING google.com (173.194.42.14) 56(84) bytes of data.
64 bytes from eze03s05-in-f14.1e100.net (173.194.42.14): icmp_seq=1 ttl=51 time=26.0 ms
64 bytes from eze03s05-in-f14.1e100.net (173.194.42.14): icmp_seq=2 ttl=51 time=27.4 ms
64 bytes from eze03s05-in-f14.1e100.net (173.194.42.14): icmp_seq=3 ttl=51 time=24.9 ms
64 bytes from eze03s05-in-f14.1e100.net (173.194.42.14): icmp_seq=4 ttl=51 time=24.7 ms
^C
--- google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
rtt min/avg/max/mdev = 24.732/25.798/27.421/1.071 ms
pablot@deathstar:~$
Но все остальное терпит неудачу...
pablot@deathstar:~$ sudo apt-get update
0% [Connecting to ar.archive.ubuntu.com (200.236.31.4)]
Это просто заканчивается так...
Err http://ar.archive.ubuntu.com trusty InRelease
Err http://ar.archive.ubuntu.com trusty-updates InRelease
Err http://ar.archive.ubuntu.com trusty Release.gpg
Unable to connect to ar.archive.ubuntu.com:http:
Err http://ar.archive.ubuntu.com trusty-updates Release.gpg
Unable to connect to ar.archive.ubuntu.com:http:
Reading package lists... Done
W: Failed to fetch http://ar.archive.ubuntu.com/ubuntu/dists/trusty/InRelease
W: Failed to fetch http://ar.archive.ubuntu.com/ubuntu/dists/trusty-updates/InRelease
W: Failed to fetch http://ar.archive.ubuntu.com/ubuntu/dists/trusty/Release.gpg Unable to connect to ar.archive.ubuntu.com:http:
W: Failed to fetch http://ar.archive.ubuntu.com/ubuntu/dists/trusty-updates/Release.gpg Unable to connect to ar.archive.ubuntu.com:http:
W: Some index files failed to download. They have been ignored, or old ones used instead.
И это то, что я получаю с Wget...
pablot@deathstar:~$ wget google.com
--2015-03-17 10:13:20-- http://google.com/
Resolving google.com (google.com)... 173.194.42.0, 173.194.42.1, 173.194.42.9, ...
Connecting to google.com (google.com)|173.194.42.0|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.1|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.9|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.3|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.7|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.14|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.4|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.2|:80... failed: Connection timed out.
Connecting to google.com (google.com)|173.194.42.8|:80...
Я заменил свой брандмауэр новой новой установкой pfSense (на тот случай, если я заблокировал себя, не зная), и получил те же результаты. Я также установил ту же версию Ubuntu на Virtualbox на своем блокноте и попробовал ее как с мостовыми, так и без мостовых интерфейсов, и отлично работает в обоих случаях, несмотря на один и тот же брандмауэр.
Так что все заставляет меня думать, что на моей хост-машине неправильная конфигурация, которая также влияет только на установку Ubuntu с мостовым интерфейсом, но не может ее найти.
Любая помощь будет оценена.
Заранее спасибо, Пабло
2 ответа
У меня была такая же проблема, использовал ли я стандартные мосты linux или открытые виртуальные мосты на сервере kvm. Наконец, я нашел ответ на веб-странице pfSense в разделе Поддержка драйверов VirtIO:
Отключение разгрузки контрольной суммы оборудования В текущем (2014-06-11) состоянии сетевых драйверов VirtIO во FreeBSD необходимо установить флажок "Отключить разгрузку контрольной суммы оборудования" в разделе "Система"> "Дополнительно" на вкладке "Сеть" и перезагрузить pfSense вручную после сохранения настроек. даже несмотря на то, что нет подсказки, чтобы сделать это, чтобы иметь возможность подключаться к системам (по крайней мере, другим гостям виртуальных машин, возможно, другим), защищенным pfSense, непосредственно с хоста виртуальной машины. Кажется, проблема связана с https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=165059
Это сработало для меня.
У меня была проблема с теми же симптомами, мои настройки были следующими: Ноутбук Lenovo работает под управлением Ubuntu. Я вручную создал мост с интерфейсами USB-Enet, которые используют драйвер ax88179_178a. Я использую мост, чтобы моделировать плохие условия сети для всего, что подключено к "другой стороне" моста.
Я был в состоянии пинговать и ssh в устройство через мост, но wget не работал.
Я попытался отключить IPv6, как описано здесь, но безуспешно. Я тоже пытался возиться с настройками mtu, но безуспешно.
В конце концов мне удалось использовать собственный порт Ethernet на ноутбуке в качестве одного из интерфейсов моста и использовать ключ в качестве второго порта моста. Как только я это сделал, все работало нормально. Поэтому для меня проблема заключается в ошибке в драйвере для интерфейсов, которые я использовал.