Проблема настройки сети в Qemu

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#21

05 июн 2020, 07:22

Если бы это был режим NAT (который кстати у большинства систем виртуализации по умолчанию) - это была бы норма. Т.к. Сетка вируалок в таком случае прячется за NAT. Получается так: Маршрутизатор раздающий интернет - 192.168.х.х - ХОСТ - 10.0.2.х - виртуалки. И два NAT - на маршрутизаторе и на хосте. Вот только host-only отличается от такого режима всего одной "мелочью" - на хосте nat не поднимается, сети никак не связаны оказываются.

Код: Выделить всё

sudo qemu-system-x86_64 -hda winXP.img -m 640 -enable-kvm 
если понял, в таком режиме и должно работать - как NAT по умолчанию. Но... не работает... Причем попробовал Linux-машину подсоединить не по wi-fi, а напрямую кабелем - то же самое: в Linux интернет работает, в WinXP нет.

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#22

05 июн 2020, 10:17

arriome писал(а):
05 июн 2020, 07:22
Но... не работает... Причем попробовал Linux-машину подсоединить не по wi-fi, а напрямую кабелем
Чем присоединять - никакой разницы нет, NAT оперирует перебросом сетевых пакетов между существующими интерфейсами, но что именно они представляют (кабель, wifi или вообще виртуальное что-то вроде VPN ему никакого дела нету). Вот только ни сетевого интерфейса хоста к который должен смотреть в сеть виртуалок, ни маршрутов на него я в выводе ip не вижу. Т.е. виртуалки с внешней сетью вообще никак не связаны у вас.

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

И что-то мне подсказывает, что не будет в вашей строчке "по умолчанию" работать nat в принципе, т.к. он подразумевает связь двух интерфейсов. Внутреннего и внешнего. А у вас внешних два получается - кабель и wi-fi - т.е. в командной строке нужно как минимум указать, какой из них следует использовать для NAT из виртуалок.

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#23

06 июн 2020, 12:52

Поставил Virt-manager и при попытке подключиться к виртуалке :

Код: Выделить всё

Unable to connect to libvirt qemu:///system.

Убедитесь, что libvirtd запущен.

Libvirt URI is: qemu:///system
Стартуем сервис и воооот:

Код: Выделить всё

systemctl start libvirtd
Failed to start libvirtd.service: Unit libvirtd.service not found.
Последний раз редактировалось пользователем 1 arriome; всего редактировалось раз: 6

Аватара пользователя

symon2014
Сообщения: 5924
Зарегистрирован: 16 дек 2017, 21:59
Решено: 36
Откуда: Феодосия
Благодарил (а): 32 раза
Поблагодарили: 747 раз
Контактная информация:

Проблема настройки сети в Qemu

#24

06 июн 2020, 12:57

Снимок экрана в 2020-06-06 12-56-28.png
Что то пошло не так)

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#25

06 июн 2020, 14:11

symon2014 писал(а):
06 июн 2020, 12:57
Что то пошло не так)
А именно - libvirt отсутствует. Пакеты libvirt-bin virtinst libosinfo-bin libvirt-daemon-system доустановите. Правда я не помню, есть ли последний пакет в минте. Если нету - то и не нужен.

Аватара пользователя

symon2014
Сообщения: 5924
Зарегистрирован: 16 дек 2017, 21:59
Решено: 36
Откуда: Феодосия
Благодарил (а): 32 раза
Поблагодарили: 747 раз
Контактная информация:

Проблема настройки сети в Qemu

#26

06 июн 2020, 15:17

slant писал(а):
06 июн 2020, 14:11
доустановите.
Это не ко мне))

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#27

06 июн 2020, 16:00

symon2014 писал(а):
06 июн 2020, 15:17
Это не ко мне))
Дык не тебе и предлагается. Просто в форме уточнения - что именно не так пошло. А вот эта фраза - уже как раз твоя. :)

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#28

06 июн 2020, 16:34

Похоже, проще родить.
Libvirt же уже установлен:

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#29

06 июн 2020, 16:40

arriome писал(а):
06 июн 2020, 16:34
Libvirt же уже установлен:
Внимательно сравните имена пакетов которые я вам написал, и то что вы показываете. У вас стоит пакет относящийся к языку python - модуль сопряжения (который вам вряд ли нужен), и еще одна вспомогательная библиотека. А самого libvirt пока нету, во всяком случае если судить по скриншоту.

А если лень - можно просто в консоли команду дать: apt install libvirt-bin virtinst libosinfo-bin libvirt-daemon-system - сама доставит то, что не установлено из этого списка.

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#30

07 июн 2020, 08:35

Все поставил... Перезагрузил компьютер. Ну и вот что получилось:


Каких то особых настроек не вижу тут.
А вот ipconfig /a с виртуальной машины:

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#31

07 июн 2020, 08:56

На первом скриншоте "статус" видите? Кнопочку для активации интерфейса в левом нижнем углу окна найдите и нажмите. Это во первых.

Во вторых - на втором скриншоте у вас только lo в качестве сети (это loopback) - а должен быть, если правильно помню ту версию, еще и тот интерфейс откуда интернет приходит. Попробуйте вручную добавить. Кнопочка там же где и активация сети в первом случае.

Аватара пользователя

symon2014
Сообщения: 5924
Зарегистрирован: 16 дек 2017, 21:59
Решено: 36
Откуда: Феодосия
Благодарил (а): 32 раза
Поблагодарили: 747 раз
Контактная информация:

Проблема настройки сети в Qemu

#32

07 июн 2020, 09:19

slant писал(а):
07 июн 2020, 08:56
еще и тот интерфейс откуда интернет приходит.
Я там сейчас там в сетевых интерфейсах кнопочки понажимал , остался без сети , но с двумя вайфаями)))
Еле взад вернул))
https://www.altlinux.org/%D0%9D%D0%B0%D ... %D0%B2_KVM

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#33

07 июн 2020, 10:16

slant писал(а):
07 июн 2020, 08:56
На первом скриншоте "статус" видите? Кнопочку для активации интерфейса в левом нижнем углу окна найдите и нажмите. Это во первых.

Во вторых - на втором скриншоте у вас только lo в качестве сети (это loopback) - а должен быть, если правильно помню ту версию, еще и тот интерфейс откуда интернет приходит. Попробуйте вручную добавить. Кнопочка там же где и активация сети в первом случае.
Спасибо!!!
1. По первому пункту - при нажатии запуска виртуального интерфейса получаем некую внутреннюю ошибку, связанную с фаерволлом. При этом в Linux Mint фаерволл вообще выключен...

Код: Выделить всё

Ошибка запуска сети «default»: internal error: Failed to initialize a valid firewall backend

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 125, in tmpcb
    callback(*args, **kwargs)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 82, in newfn
    ret = fn(self, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/network.py", line 81, in start
    self._backend.create()
  File "/usr/lib/python2.7/dist-packages/libvirt.py", line 2892, in create
    if ret == -1: raise libvirtError ('virNetworkCreate() failed', net=self)
libvirtError: internal error: Failed to initialize a valid firewall backend
2. По пункту 2 - создал соединение типа Ethernet, с привязкой к вай-фай адаптеру компа с Linux... но интернет в виртуальной WinXP не пашет...
 ! Сообщение из: symon2014
Убедительная просьба пользоваться другим фотохостингом.

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#34

07 июн 2020, 11:45

arriome писал(а):
07 июн 2020, 10:16
По первому пункту - при нажатии запуска виртуального интерфейса получаем некую внутреннюю ошибку, связанную с фаерволлом. При этом в Linux Mint фаерволл вообще выключен...
Ну вот и нашли корень зла. Дело в том, что в линукс - фаервол, маршрутизация, и вообще сеть - это по большому счету одна структура, находится в ядре. И никаких разных фаерволов не существует - он один. НО! К нему есть разные управляющие т.н. backend - интерфейсы взаимодествия/управления. Это может быть комманданая строка, GUI, или вообще веб-интерфейс - внутри, под ним, одно и то-же. Но вот у вас явно чего-то в системе из общепринятых интерфейсов управления этим добром не хватает. А без него не получается ни мост поднять ни nat настроить.
arriome писал(а):
07 июн 2020, 10:16
но интернет в виртуальной WinXP не пашет
Про гостевую систему можете забыть и не отвлекаться на нее - проблема не в ней.

Надо найти чего на хосте не хватает. Быстрый поиск в гугле рекомендует попробовать доустановить: apt install ebtables iptables dnsmasq bridge-utils
Первые два - интерфейсы управления фаерволом, третий - dhcp/dns/tftp сервер (используется и для виртуалок), последний - это пакет с утилитами для организации соединений типа "мост" - именно они служат для того, чтобы хост был виден внутри сети виртуалок.

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#35

08 июн 2020, 23:37

slant писал(а):
07 июн 2020, 11:45
Быстрый поиск в гугле рекомендует попробовать доустановить: apt install ebtables iptables dnsmasq bridge-utils
Спасибо.. поставил, теперь в разделе Виртуальные сети соединение default в состоянии Активно, в разделе Сетевые интерфейсы есть 2 интерфейса в статусе Активно (lo и добавленный wlp3s0 типа ethernet), но инет не пашет на гостевой winXP - хотя ip-адреса сайтов разрешаются в команде ping, но "Заданный узел недоступен"
Запускаю sudo qemu-system-x86_64 -hda win7.img -m 640 -enable-kvm

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#36

09 июн 2020, 00:10

При запущенной виртуалке, покажите вывод команд ip a и ip r в консоли хоста.

И сделайте ping и tracert на 8.8.8.8 в госте - что показывает?

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#37

14 июн 2020, 11:10

ip r и ip a c Linux Mint при запущенной виртуалке (интернет по usb-кабелю с телефон):

Код: Выделить всё

HOST@USER:~$ ip r
default via 192.168.42.129 dev enp0s18u1u1 proto dhcp metric 100 
169.254.0.0/16 dev enp0s18u1u1 scope link metric 1000 
192.168.42.0/24 dev enp0s18u1u1 proto kernel scope link src 192.168.42.210 metric 100 
HOST@USER:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether c4:65:16:92:d6:47 brd ff:ff:ff:ff:ff:ff
3: wlp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 48:xx:xx:xx:xx:b1 brd ff:ff:ff:ff:ff:ff
11: enp0s18u1u1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
    link/ether 82:xx:xx:xx:xx:45 brd ff:ff:ff:ff:ff:ff
    inet 192.168.42.210/24 brd 192.168.42.255 scope global dynamic noprefixroute enp0s18u1u1
       valid_lft 2675sec preferred_lft 2675sec
    inet6 fexx::xxxx:xxxx:xxxx:xx87/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
Скрин с геста Windows XP (странно, что разрешает DNS-имена):


При этом для пробы поставил на виртуалку Puppy linux - интернет заработал "из коробки" :hoho: :blink2: :


Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#38

14 июн 2020, 12:49

Оно у вас вместо нормального виртуального интерфейса на хосте, полноценный мост поднимает. Даже не могу толком подсказать, что именно вы нахимичили. Вот как, примерно, должен выглядеть вывод ip a (это с моей машины):

Код: Выделить всё

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 4c:ed:fb:3d:b9:17 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.54/24 brd 192.168.0.255 scope global dynamic noprefixroute enp7s0
       valid_lft 34408sec preferred_lft 34408sec
    inet6 fe80::21ae:2ba6:e985:c7b1/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: virbr2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:fa:96:8c brd ff:ff:ff:ff:ff:ff
    inet 192.168.127.1/24 brd 192.168.127.255 scope global virbr2
       valid_lft forever preferred_lft forever
4: virbr2-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr2 state DOWN group default qlen 1000
    link/ether 52:54:00:fa:96:8c brd ff:ff:ff:ff:ff:ff
5: virbr1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:05:88:7b brd ff:ff:ff:ff:ff:ff
    inet 192.168.128.1/24 brd 192.168.128.255 scope global virbr1
       valid_lft forever preferred_lft forever
6: virbr1-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr1 state DOWN group default qlen 1000
    link/ether 52:54:00:05:88:7b brd ff:ff:ff:ff:ff:ff
lo - loopback (замыкание на себя)
enp7s0 - основной интерфейс - сетевая карта. Локалка 192.168.0.0/24 - физическая.
virbr2 - host-only сеть виртуалок - интерфейс хоста в нее. virbr2-nic - оно же. Сеть 192.168.127.0/24 - виртуальная, спецом назначил третьим числом адреса 127, чтоб не путать.
virbr1 - NAT сеть виртуалок, с выходом в интернет через хост. virbr1-nic - оно же. Сеть 192.168.128.0/24 - виртуальная, а вот это уже сообщающаяся через NAT сеть.

Суть в том, что должно быть несколько интерфейсов со своими сетевыми адресами. А у вас - enp0s18u1u1 - мост собравший в себя enp2s0 и, видимо, подключенный к виртуальной сети (потому виртуалка получает адрес и имена DNS разрешаются). Беда в том, что по умолчанию qemu делает это через mactap адаптер, а у него есть особенность - виртуалка работающая через mactap будет видна во внешней сети и сможет обмениваться там данными со всеми... кроме собственного хоста на котором работает. Почему так - не вникал, но это в документации описано. Если нужен полноценный мост и при этом еще и обмен с хостом - там цирк начинается и настройка многого вручную через /etc/network/interfaces и полное отключение NetworkManager. Проходили.

Дичь какая-то получается пока. Рискую предположить, что где-то что-то запускает сеть в режим моста. Может быть и сама виртуалка в интерфейсе virt-manager так настроена. Покажите скриншот вкладки с настройкой сетевой карты виртуалки.

P.S. Тут еще надо понимать, что режим моста сам по себе - это не хорошо и не плохо. Но в этом режиме виртуалка в сеть смотрит "голой ж..." наравне с хостом, без всякой изоляции. Что для XP с ее дырками - чревато. :)

no avatar

Автор темы
arriome
Сообщения: 25
Зарегистрирован: 04 авг 2019, 15:24
Благодарил (а): 4 раза
Поблагодарили: 1 раз
Контактная информация:

Проблема настройки сети в Qemu

#39

15 июн 2020, 16:55

Спасибо...
виртуалка работающая через mactap будет видна во внешней сети и сможет обмениваться там данными со всеми... кроме собственного хоста
Про это тоже вычитал, там вроде еще пинг на внешние узлы не должен проходить в принципе с гостевой машины, только от машин внутри виртуальной сети отклик на пинг.

ip r с машины Linux Mint (интернет приходит через юсб-кабель с телефона):

Код: Выделить всё

HOST@USER:~$ ip r
default via 192.168.42.129 dev enp0s18u1u1 proto dhcp metric 100 
169.254.0.0/16 dev enp0s18u1u1 scope link metric 1000 
192.168.42.0/24 dev enp0s18u1u1 proto kernel scope link src 192.168.42.210 metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown 
Скрин настроек виртуального адаптера QEMU:



Почему же тогда с Puppy Linux в качестве виртуалки инет пашет из коробки? Сравнил сетевые настройки - и Win XP и Puppy Linux ip/gate/mask/dns совпадают...
Puppy Linux:

WinXP:

Аватара пользователя

slant
Сообщения: 4469
Зарегистрирован: 21 июн 2017, 18:09
Решено: 95
Благодарил (а): 51 раз
Поблагодарили: 1966 раз
Контактная информация:

Проблема настройки сети в Qemu

#40

16 июн 2020, 11:13

Прости, но я не представляю КАК у тебя это происходит. В списке виртуальных адаптеров - только один, с сетью 192.168.122.0/24. А на виртуалках - сеть 10.0.2.0/24. Это не то, что работать не должно. Это вообще неизвестно откуда взялось.

Эм... Ты уверен, что виртуалки запускались как VM из virt-manager? Или может быть ты сеть virt-manager настраивал, а виртуалки как раньше, из консоли запускал? Тогда еще понято - эти два метода между собой не связаны. qemu сам по себе о libvirt и virt-manager никакого понятия не имеет, и настройки из них не берет. Весь смысл в том чтобы использовать интерфейс virt-manager как для настроек так и для запуска.

Закрыто

Вернуться в «Работа с сетью»

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и 9 гостей