Привет всем!
ОС: Archlinux (6/9/2016)
Пытаюсь уже пятый день настроить сеть в виртуальной машине, но никак не получается.
Пробовал -net nic,vlan=0 -net user,vlan=0 - адреса сетевая карта получает, но интернета нет, и что самое главное - когда пингуешь, IP-адрес определяется, но при этом ни инета, ни фига нет.
Машина запускается так: qemu-system-x86_64 -enable-kvm -m 2048M -smp 3 -hda hard -cdrom os.iso -boot d -vga qxl.
Пробовал еще так: -net tap,vlan=0,ifname=tap0,script=no,downscript=no, назнал адреса хосту и гостевой, но не работает, хост даже не пингуется!
А что касается моста, то:
Есть сетевой интерфейс eth0, настраиваю мост:
brctl addbr br0
btctl addif br0 eth0
и сеть пропадает, ввожу ifconfig up br0 и dhcpcd br0 и сети по прежнему нет.
Самый простой вариант не указывать -net параметр. Будет NAT. Интернет в виртуалке работать будет, хост и виртуальная машина по ip-адресу друг друга НЕ видят.
xibir: фаерволом случаем чего не закрыто?
ну а то, что адрес теряется, когда интерфейс в бридж добавляется, то это известный факт. нужно делать в такой последовательности (лучше скриптом, или инициализацией в системе), сначала снести адрес на интерфейсе, после этого его добавить в бридж, бриджу присвоить старый адрес.
ip addr del 192.168.0.10/24 dev eth0
btctl addif br0 eth0
ip addr add 192.168.0.10/24 dev br0
<code>
Пробовал еще так: -net tap,vlan=0,ifname=tap0,script=no,downscript=no, назнал адреса хосту и гостевой, но не работает, хост даже не пингуется!
Регулярно пользуюсь этим способом, всё работает. Если стоит networkmanager надо следить за тем, чтобы он не потушил tap-интерфейс если qemu от него отключается.
# add bridge "br0"
[root@dlp ~]# nmcli c add type bridge autoconnect yes con-name br0 ifname br0
Connection 'br0' (0f4b7bc8-8c7a-461a-bff1-d516b941a6ec) successfully added.
# set IP for br0
[root@dlp ~]# nmcli c modify br0 ipv4.addresses 10.0.0.30/24 ipv4.method manual
# set Gateway for br0
[root@dlp ~]# nmcli c modify br0 ipv4.gateway 10.0.0.1
# set DNS for "br0"
[root@dlp ~]# nmcli c modify br0 ipv4.dns 10.0.0.1
# remove the current setting
[root@dlp ~]# nmcli c delete eno16777736
# add an interface again as a member of br0
[root@dlp ~]# nmcli c add type bridge-slave autoconnect yes con-name eno16777736 ifname eno16777736 master br0
# restart
[root@dlp ~]# reboot
поменять под себя айпи и названия сетевых карт. Кстати была еще проблема в том что перед этой настройкой шеф забекапил eth0 и тот пытался подгрузится и мешал работе.