LINUX.ORG.RU

Qemu kvm мост macvtap ethernet mikrotik

 , , ,


2

3

На хостовой машине установлена Arch linux. Qemu собрал из git. На машинке 4 сетевухи, которые пробрасываю macvtap в гостя. Гостем выступает mikrotik. Соответственно в микротике вижу 4 интерфейса и трафик от них уходит и приходит во внешку, но хост и гость друг друга не видят. Так и должно быть, судя по официальной документации. Задача сделать мост, чтобы гость и хост друг друга видели и трафик внешний проходил в гостя. Пробую сделать один виртуальный tap интерфейс и классический мост над физикой ethernet и tap. Остальные сетевушки в виде macvtap.

ip link add name br0_home type bridge
ip link set address 00:42:43:af:00:30 br0_home up
ip addr add dev br0_home 192.168.17.2/24
brctl addif br0_home eth0
ip link set eth3 up
ip tuntap add dev macvtap0 mode tap
ip link set macvtap0 address 00:42:43:af:00:70 up
brctl addif br0_home macvtap0

ip link set ethХ up
ip link add link ethХ name macvtapХ type macvtap
ip link set macvtapХ address 00:42:43:af:00:7Х up

При такой настроке eth0 хоста должет быть в мосту с tap0, который на микротике eth0. Соответственно даю им адреса из одной подсети (адрес на br0_home и на eth0 на микротике). При этом со стороннего компьютера, подключённого к eth0 хоста кабелем хост пингуется, а микротик нет. Но по мак-адресу зайти на микротик можно, и делать различные настройки. С микротика хост пингуется, а дальше пинги не проходят. В чём может быть проблема? Netctl в archе отключил. Сеть при запуске настраивается скриптом.



Последнее исправление: hardd (всего исправлений: 2)

Если пускаешь через libvirt он может добавлять правила в файрвол. Покажи выхлоп iptables-save и brctl show после старта виртуалки с mikrotik.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)

Выхлоп запрошенный

Все команды после запуска виртуалки с микротиком.

bridge name bridge id STP enabled interfaces br0_home 8000.004243af0030 no eth0 macvtap0

iptables-save ничего не выводит, попробовал iptables -L

Chain INPUT (policy ACCEPT) target prot opt source destination

Chain FORWARD (policy ACCEPT) target prot opt source destination

Chain OUTPUT (policy ACCEPT) target prot opt source destination

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0_home state UP mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:xx brd ff:ff:ff:ff:ff:ff 3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:xx brd ff:ff:ff:ff:ff:ff 4: eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:xx brd ff:ff:ff:ff:ff:ff 5: eth3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:xx brd ff:ff:ff:ff:ff:ff 6: br0_home: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:30 brd ff:ff:ff:ff:ff:ff 7: macvtap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0_home state UP mode DEFAULT group default qlen 1000 link/ether 00:42:43:af:00:70 brd ff:ff:ff:ff:ff:ff 8: macvtap1@eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state LOWERLAYERDOWN mode DEFAULT group default qlen 500 link/ether 00:42:43:af:00:71 brd ff:ff:ff:ff:ff:ff 9: macvtap2@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state LOWERLAYERDOWN mode DEFAULT group default qlen 500 link/ether 00:42:43:af:00:72 brd ff:ff:ff:ff:ff:ff 10: macvtap3@eth3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state LOWERLAYERDOWN mode DEFAULT group default qlen 500 link/ether 00:42:43:af:00:73 brd ff:ff:ff:ff:ff:ff

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

Решил проблему

Мост с tap интерфейсом реализовал. Добавил в автозагрузку модули моста. Добавил

sysctl net.bridge.bridge-nf-call-ip6tables=0
sysctl net.bridge.bridge-nf-call-iptables=0
sysctl net.bridge.bridge-nf-call-arptables=0
Также поставил в настройках интерфейса в микротике мак отличный от интерфейса tap в хосте. Пакеты пошли.

hardd
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.