Назад | Перейти на главную страницу

Qemu: проблемы с мостовой сетью (хост Linux, гость OpenBSD)

У меня компьютер под управлением Linux. На нем установлен qemu. Имеет мостовой интерфейс br0 настроен со следующими параметрами:

IP: 10.1.1.1
Netmask: 255.255.255.0

Также есть tap0 интерфейс, который добавлен к br0. tap0 предполагается использовать для сетевых гостей, работающих внутри qemu.

Я запускаю Slax Linux с его LiveCD внутри qemu вот так:

qemu -kernel-kqemu \
 -net nic,vlan=0,macaddr=aa:aa:aa:aa:aa:aa,model=pcnet \
 -net tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup \
 -m 512 \
 -cdrom slax-6.0.7.iso \
 1>stdout.log 2>stderr.log 

Я загружаю Slax в текстовом режиме (X мне не нужен, потому что моя цель - проверить работу сети). Я настраиваю сетевой интерфейс в гостевой системе так:

IP: 10.1.1.4
Netmask: 255.255.255.0
Gateway: 10.1.1.1 

Все работает хорошо, могу пинговать в обе стороны:

10.1.1.1 -> 10.1.1.4
10.1.1.4 -> 10.1.1.1

Теперь я заменяю Slax LiveCD образом qemu, который содержит недавно установленный OpenBSD 4.5. Я запускаю его так:

qemu -kernel-kqemu \
 -net nic,vlan=0,macaddr=aa:aa:aa:aa:aa:aa,model=pcnet \
 -net tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup \
 -m 512 \
 -hda obsd.img \
 1>stdout.log 2>stderr.log 

OpenBSD загружается, я точно так же настраиваю его сетевой интерфейс:

IP: 10.1.1.4
Netmask: 255.255.255.0
Gateway: 10.1.1.1

Теперь я не могу пинговать ни в какую сторону.

Журналы qemu не содержат никаких подсказок.

Также это не проблема брандмауэра: в OpenBSD 4.5 по умолчанию не включен pf. Фрагмент из его /etc/rc.conf:

pf=NO # Packet filter / NAT

Это похоже на известная регрессия в версиях QEMU, включая, но не ограничиваясь, 0.10.4 и 0.10.5. Во-первых, использование model = rtl8139 и QEMU 0.9.1 работает, так что вы можете попробовать это.

Я не думаю, что openbsd самостоятельно определит ваш маршрут по умолчанию

Вы можете проверить, используя route show -inet

У вас должно получиться что-то вроде:
bash-3.2 # показ маршрута -inet
Таблицы маршрутизации

Интернет:
Флаги целевого шлюза Ссылки Использовать Mtu Prio Iface
по умолчанию 10.1.1.1 UGS 1 1600975 - 48 em0
...

Если он работает правильно, если по умолчанию нет, вам нужно добавить 10.1.1.1 в / etc / mygate, чтобы он добавлял его при загрузке и вручную создавал маршрут, используя

маршрут добавить по умолчанию gw 10.1.1.1