Кажется, что по этой теме уже много, поэтому прошу прощения за добавление в море информации, но мне не повезло найти что-то, что, кажется, соответствует моему сценарию.

Мой гость не может пропинговать мой шлюз по умолчанию, но мой хост может пропинговать мой шлюз по умолчанию.

У меня есть хост KVM (CentOS7) с настроенным мостовым интерфейсом 'ip a':

2: eno16777984: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master virbr0 state UP qlen 1000
    link/ether 00:0c:29:80:14:0a brd ff:ff:ff:ff:ff:ff
    inet6 fe80::20c:29ff:fe80:140a/64 scope link
       valid_lft forever preferred_lft forever
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
    link/ether 00:0c:29:80:14:0a brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.11/24 brd 192.168.1.255 scope global virbr0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe80:140a/64 scope link
       valid_lft forever preferred_lft forever
12: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virbr0 state UNKNOWN qlen 500
    link/ether fe:54:00:a0:02:d5 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fea0:2d5/64 scope link
       valid_lft forever preferred_lft forever

Теперь интересная часть: мой гость получает действительную аренду DHCP от моего DHCP-сервера. Мой гость может пропинговать IP-адрес хоста, а хост может пинговать IP-адрес гостя. Я попытался остановить firewalld, чтобы решить проблему, но это не решило проблему, и я подозреваю, что проблема не так высока в стеке, так как DHCP работал. Если я пингую гостя с другого сетевого устройства, запросы истекают, но запись для устройства добавляется в таблицу гостей arp, и устройство инициирует пинг.

Я думал, что мой мост настроен неправильно, но я не уверен, что приведет к сбою только некоторого трафика.

Вот моя конфигурация интерфейса для справки:

[root@kvm01 ~]# cat /etc/sysctl.d/99-ipforward.conf
net.ipv4.ip_forward = 1
[root@kvm01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777984
DEVICE="eno16777984"
ONBOOT=yes
BRIDGE=virbr0
[root@kvm01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-virbr0
TYPE=Bridge
BOOTPROTO=static
DEVICE=virbr0
ONBOOT=yes
IPADDR="192.168.1.11"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS1="192.168.1.15"
[root@kvm01 ~]#

1 ответ1

0

Иногда я не самый всесторонний мыслитель. ARP работают нормально, это означает, что уровень 2 хорош. Что вы тестируете после слоя 2? Ну, слой 3 конечно. Хосты в физической сети не могли вернуться к гостям.

Поскольку хост эффективно функционирует в качестве маршрутизатора для гостей, любой IP-трафик будет отправляться от гостя без проблем, но никогда не получит ответ, так как получатель не будет иметь маршрут к этому IP через хост.

Я добавил статическую сеть на свою тестовую машину в физической сети для моего гостевого IP-адреса со шлюзом хоста, и эхо-запросы начали работать нормально.

Решение состоит в том, чтобы просто разместить гостей в несвязанной сети уровня 2, а затем маршрутизатор в моей физической сети должен получить маршрут к сети гостя через хост. Это решит мою проблему.

Следующая документация libvirt описывает параметры сети KVM относительно хорошо. Единственным исключением, не задокументированным здесь, будет использование Cisco Nexus 1000v или Open vSwitch.

http://wiki.libvirt.org/page/VirtualNetworking

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .