LINUX.ORG.RU
решено ФорумAdmin

KVM, два бриджа вместо одного.

 , ,


1

1

В наличии: виртуалка со squid'ом и двумя интерфейсами: 10.10.2.2 и 10.10.1.1
Оба на хостовой машине выведены в один br0 и, соответственно, смотрят в один физический свитч.
Туда же воткнут NAT-роутер 10.10.2.1
Это был так сколхожен(мной) transparent-proxy.

Я вынес интерфейс 10.10.2.2 на виртуалке в отдельный бридж(br1) и в отдельную сетевушку. Воткнул кабель с неё в роутер. Траффик не идёт. Роутер(и с роутера) не пингуется. Всё плохо.
Воткнул обратно обратно всё через свитч:
10.10.1.1 через br0,
10.10.2.2 через br1.
Заработало. Кабели подбирал подходящие.
Прошу советов по диагностике.

Спасибо за внимание.

★★★★
Ответ на: комментарий от frob

Везде /24.
Я понимаю что это дичЪ, собираюсь урезать.

Yustas ★★★★
() автор топика
Ответ на: комментарий от Yustas

Ну скорее всего дело в рутере. Пробовал туда компом подключиться и перейти во вкладку «Центр управления сетями» ?

pyatak123
()
Ответ на: комментарий от pyatak123

Ну скорее всего дело в рутере.

MT 750GL

Пробовал туда компом подключиться и перейти во вкладку «Центр управления сетями» ?

У меня нет такого на компе :(

Yustas ★★★★
() автор топика
Ответ на: комментарий от Yustas

да блин, тот же кабель берешь которым втыкался в br1 его в комп и рутер ,проверить сетевой уровень , работает? Исключить проблемы с бриджом тем самым.

pyatak123
()
Последнее исправление: pyatak123 (всего исправлений: 1)
Ответ на: комментарий от pyatak123

Если я на хостовой машине добавляю на бридж ip - роутер доступен.
Так что проблема, судя по всему, с бриджом.
Но вот что это за проблема, я понять не могу.

Yustas ★★★★
() автор топика

конфиги в студию, особенно в случае двух мостов

ну и заодно sysctl -a |grep «\.rp_filter» и brctl show

dyasny ★★★★★
()
Ответ на: комментарий от dyasny
# cat /etc/network/interfaces
~~~~~~~~~~~~~
auto em0
iface em0 inet manual

auto em1
iface em1 inet manual

auto br0
iface br0 inet static
        address 10.10.1.11
        network 10.10.1.0
        netmask 255.255.255.0
        broadcast 10.10.1.255
        gateway 10.10.1.1
        bridge_ports em0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0

auto br1
iface br1 inet manual
        bridge_ports em1
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0
# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.009c02998a38       no              em0
                                                        vnet0
                                                        vnet1
                                                        vnet3
                                                        vnet4
                                                        vnet5
                                                        vnet6
                                                        vnet7
br1             8000.009c02998a39       no              em1
                                                        vnet2
# sudo sysctl -a | grep ".rp_filter"
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.br0.arp_filter = 0
net.ipv4.conf.br0.rp_filter = 1
net.ipv4.conf.br1.arp_filter = 0
net.ipv4.conf.br1.rp_filter = 1
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.em0.arp_filter = 0
net.ipv4.conf.em0.rp_filter = 1
net.ipv4.conf.em1.arp_filter = 0
net.ipv4.conf.em1.rp_filter = 1
~~~~~~~~~~~~~
Yustas ★★★★
() автор топика

запусти ping на виртуалке и запусти tcpdump на em1, и снифер на роутере тоже можно. Посмотреть, что там происходит, а потом можно будет и дальше гадать.

swelf
()
Ответ на: комментарий от Yustas

1. rp_filter надо установить на двойку везде

2. внутри VM и на хосте ip r l, но для начала, оставить в VM включенным только NIC к раутеру, и проверить что пинги идут

dyasny ★★★★★
()
Ответ на: комментарий от pyatak123

Это типа 100baseTX full duplex.

А. Туплю. 1000baseTX full duplex во все поля.
Драйвер в гесте - virtio.

Yustas ★★★★
() автор топика
Ответ на: комментарий от dyasny

rp_filter надо установить на двойку везде

Речь про хостовую систему или геста?

оставить в VM включенным только NIC к раутеру, и проверить что пинги идут

Не идут :(

внутри VM и на хосте ip r l

хост

default via 10.10.1.1 dev br0 
10.10.1.0/24 dev br0  proto kernel  scope link  src 10.10.1.11
гест
default via 10.10.2.1 dev eth1 
10.10.1.0/24 dev eth0  proto kernel  scope link  src 10.10.1.11
10.10.2.0/24 dev eth1  proto kernel  scope link  src 10.10.2.2 

Yustas ★★★★
() автор топика
Последнее исправление: Yustas (всего исправлений: 1)
Ответ на: комментарий от Yustas

Речь про хостовую систему или геста?

хост. если не страшно, можно и на нули

Не идут :(

добавить на br1 айпи из 10.10.2.0/24, запустить VM заново и проконтролировать снова

естественно, маршрут на хосте нужно будет добавить.

если и это не поможет, смотреть на дампы

dyasny ★★★★★
()

Вопрос решили.
Как водится, всё просто: кривой конфиг виртуалки с отличающимися одним символом MAC'ами.

Всех благодарю, dyasny отдельный респект.

Yustas ★★★★
() автор топика
Последнее исправление: Yustas (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.