Мостова мережа KVM не працює


23

Щойно я встановив KVM на своєму сервері Ubuntu відповідно до цього посібника: https://help.ubuntu.com/community/KVM/Installation

Потім підготували мостову мережу, як показано тут: https://help.ubuntu.com/community/KVM/Networking

Потім я створив віртуальну машину з virt-менеджером. Я кілька разів намагався, але гість не вдається підключитися до мережі! Будь-яка допомога?

ifconfig:

      br0       Link encap:Ethernet  HWaddr d0:27:88:b0:e4:38  
                inet addr:192.168.20.100  Bcast:192.168.20.255  Mask:255.255.255.0
                inet6 addr: fe80::d227:88ff:feb0:e438/64 Scope:Link
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                RX packets:62 errors:0 dropped:0 overruns:0 frame:0
                TX packets:62 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:0 
                RX bytes:10493 (10.4 KB)  TX bytes:8433 (8.4 KB)

      eth0      Link encap:Ethernet  HWaddr d0:27:88:b0:e4:38  
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                RX packets:62 errors:0 dropped:0 overruns:0 frame:0
                TX packets:63 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:1000 
                RX bytes:11361 (11.3 KB)  TX bytes:8479 (8.4 KB)
                Interrupt:41 

      lo        Link encap:Local Loopback  
                inet addr:127.0.0.1  Mask:255.0.0.0
                inet6 addr: ::1/128 Scope:Host
                UP LOOPBACK RUNNING  MTU:16436  Metric:1
                RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:0 
                RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

      virbr0    Link encap:Ethernet  HWaddr 5a:8c:57:95:af:3b  
                inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
                UP BROADCAST MULTICAST  MTU:1500  Metric:1
                RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:0 
                RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

шоу БРКТЛ:

 bridge name    bridge id      STP enabled    interfaces
 br0       8000.d02788b0e438   no        eth0
 virbr0         8000.000000000000   yes  

brctl showmacs br0:

 port no   mac addr       is local? ageing timer
   1  5c:d9:98:67:b6:28   no          48.33
   1  d0:27:88:b0:e4:38   yes          0.00
   1  e0:2a:82:f9:6c:09   no           0.00

ip маршрут:

 default via 192.168.20.1 dev br0  metric 100 
 192.168.20.0/24 dev br0  proto kernel  scope link  src 192.168.20.100 
 192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1

* В гостях * Я не зміг скопіювати вставити інформацію від гостя, тому що не можу ввімкнути її. Він не отримав жодного ip від DHCP. Не працює навіть після налаштування вручну.


Чи можу я запропонувати вам надати висновок із наступних команд? На хості: ifconfig, brctl show, brctl showmacs br0, і ip route. На гостя: ifconfig, ip route, ping 8.8.8.8, ping <your internet router>, і traceroute 8.8.8.8. Я не можу сказати, що я налаштував kvm так, як у вас є, але я змусив моститися працювати за допомогою kvmкоманди. Мені довелося відключити бездротовий зв'язок, щоб мій хост підключився до Інтернету, і, як сказано у вказаних вами напрямках, вам потрібно підключитися до Інтернету за допомогою Ethernet.
Джон С Грубер

@JohnSGruber Просто додав інформацію, яку ви запитували. Але мені не вдалося скопіювати вставити інформацію від гостя, тому що я не можу ввімкнути її. Він не отримав жодного ip від DHCP. Не працює навіть після налаштування вручну.
THpubs

Чи вказана MAC-адреса, яку ви призначили гостю, у brctl showmacs br0списку вище?
John S Gruber

Я не додав Mac вручну .. але дозвольте мені перевірити Mac, який він отримав ..
THpubs

@JohnSGruber Ні, я не бачу цього MAC тут!
THpubs

Відповіді:


22

Прелімінарії

Цей підхід працював для мене для Ubuntu 12.04. Ви повинні відключити брандмауер комп'ютера під час тестування цього, щоб він не заважав.

Файл / etc / default / qemu-kvm повинен бути як встановлений спочатку.

Вам потрібно буде встановити bridge-utils qemu-kvm та libvirt-bin . Будь-які користувачі, що використовують віртуальні машини, повинні бути додані до групи libvirtd.Встановіть мости-утиліти Встановіть qemu-kvmВстановіть libvirt-bin

Здається, більше не потрібно додавати можливості CAP_NET_ADMIN.

Налаштування мережі

Мережевим режимом за замовчуванням є Режим користувача, який також називається SLIRP. Він використовує заздалегідь заданий міст virbr0, який NAT направляється на гостьовий комп'ютер. На маршрутизації NAT використовується функція ip_forwarding ядра та iptables . У режимі Bridge використовується віртуальний міст у гості, до якого підключається (ненумерований) інтерфейс Ethernet, і на якому і хост, і гість мають свої мережеві інтерфейси.

Наступні схеми можуть зробити відмінності більш чіткими:

Діаграми мережі

Ви можете бачити, як визначається користувацька мережа користувача за замовчуванням за допомогою:

virsh net-dumpxml default

Я можу встановити мостовий режим за допомогою наступних підходів:

В / etc / network / інтерфейси (з мостової частини публікації, яку ви згадуєте у своєму запитанні):

авто ло
iface lo inet loopback
#auto eth0
#iface eth0 inet dhcp
auto eth0
iface eth0 inet керівництво
авто br0
iface br0 inet dhcp
    bridge_ports eth0
    bridge_stp off
    bridge_fd 0
    bridge_maxwait 0

Перезавантажити; і переконайтеся, що бездротова мережа не активна. Перевірте IP-маршрут за замовчуванням за допомогою ip route. Він повинен використовувати інтерфейс br0.

Примітка: Якщо ваша мережа Ethernet не підключена після внесення цієї зміни, вам потрібно підключити кабель Ethernet і підключити носій, або завантажувач зависне дві хвилини, і ви не будете мати можливості мережі. Це тому, що інтерфейс eth0, від Знаходячись у цьому файлі, він повинен з'явитися до того, як завантаження може нормально тривати.

NB Загалом, ви не можете використовувати бездротову мережу замість eth0 через їх неможливість використовувати декілька MAC-адрес (я вважаю, що для мосту їм потрібна друга).

В якості альтернативи ви можете відключити використання Ethernet і переконатися, що в ньому немає IP-адреси, і що не встановлено маршрут за замовчуванням ip route. Потім:

 sudo ifconfig eth0 0.0.0.0 up
 sudo brctl addbr br0
 sudo brctl addif br0 eth0
 sudo ifconfig br0 up
 sudo dhclient br0 &

Тут ви також можете надати статичну IP-адресу, а також визначити маршрут за замовчуванням та DNS-адресу. Для цього прикладу dhclientце робить.

Ось моя таблиця маршрутів:

$ ip список маршрутів
за замовчуванням через 192.168.1.1 dev br0 метрику 100 
169.254.0.0/16 dev br0 метрика посилань на область дії 1000 
192.168.1.0/24 dev br0 proto ядро ​​області посилання src 192.168.1.45 
192.168.122.0/24 dev virbr0 proto ядро ​​області посилання src 192.168.122.1

Використовуючи kvm

Тоді я можу завантажувати мостову машину kvm за допомогою:

 $ sudo kvm -name Quantal -m 1024 -hda foo.qcow2 --soundhw ac97 -device virtio-net,netdev=tunnel -netdev tap,id=tunnel,ifname=vnet0

В -netdev tapмарці параметрів Sudo вимоги. Коли VM запускається, qemu-kvm виконує такі команди:

ifconfig vnet0 0.0.0.0 up
brctl addif brctl addif br0 vnet0

Це робиться через / etc / qemu-ifup

Інтерфейс vnet0 VM доданий до мосту br0, тому що за типовим маршрутом вище використовується інтерфейс мосту. Якщо б не було, натомість інтерфейс tap додавався б до інтерфейсу virbr0. Оскільки це не підключено до Інтернету, в моїх експериментах NAT буде використовуватися для підключення гостя до хоста та Інтернету. Ви можете направити vnet0 на певний міст в / etc / default / qemu-kvm. Використовуючи virt-менеджер нижче, ви можете чітко направити, до якого мосту підключитися.

Через вищезазначені команди, видані qemu-kvm, і -netdev tap,id=tunnel,ifname=vnet0параметр, віртуальна машина vm підключається до тунелю vnet0, а тунель підключається до мосту br0.

Тепер я можу безпосередньо перейти в цю гостьову машину з іншого комп'ютера в моїй мережі.

Мій хост ifconfig(зверніть увагу на інтерфейс vnet0, який з’являється в моїй мережі під час роботи VM):

$ ifconfig
br0 Link encap: Ethernet HWaddr 00: 1e: 33: 88: 07: e5  
          inet addr: 192.168.1.45 Bcast: 255.255.255.255 Маска: 255.255.255.0
          inet6 addr: fe80 :: 21e: 33ff: fe88: 7e5 / 64 Область застосування: Посилання
          НАГОРОДЖЕННЯ РОЗКЛАДУВАННЯ МУЛЬТИКАСТ МТУ: 1500 метрик: 1
          Пакети RX: 6526 помилок: 0 випало: 0 перевитрат: 0 кадр: 0
          TX-пакети: 7543 помилки: 0 випали: 0 перевитрати: 0 оператор: 0
          зіткнення: 0 txqueuelen: 0 
          RX байти: 2712940 (2,7 МБ) TX байт: 1071835 (1,0 МБ)

eth0 Link encap: Ethernet HWaddr 00: 1e: 33: 88: 07: e5  
          НАГОРОДЖЕННЯ РОЗКЛАДУВАННЯ МУЛЬТИКАСТ МТУ: 1500 метрик: 1
          Пакети RX: 7181 помилок: 0 випали: 0 перевитрати: 0 кадр: 0
          TX-пакети: 7740 помилок: 0 випало: 0 перевитрат: 0 оператор: 0
          зіткнення: 0 txqueuelen: 1000 
          RX байти: 2974585 (2,9 Мб) TX байт: 1096580 (1,0 МБ)
          Перерва: 43 Базова адреса: 0x6000 

lo Link encap: Local Loopback  
          inet addr: 127.0.0.1 Маска: 255.0.0.0
          inet6 addr: :: 1/128 Область застосування: Хост
          НАГОРОДНЕ РОЗВ'ЯЗАННЯ МТУ: 16436 Показник: 1
          Пакети RX: 10 помилок: 0 випало: 0 перевитрат: 0 кадр: 0
          TX-пакети: 10 помилок: 0 випало: 0 перевитрат: 0 оператор: 0
          зіткнення: 0 txqueuelen: 0 
          RX байти: 664 (664,0 Б) TX байти: 664 (664,0 Б)

vnet0 Link encap: Ethernet HWaddr ca: 0c: 73: c3: bc: 45  
          inet6 addr: fe80 :: c80c: 73ff: fec3: bc45 / 64 Область застосування: Посилання
          НАГОРОДЖЕННЯ РОЗКЛАДУВАННЯ МУЛЬТИКАСТ МТУ: 1500 метрик: 1
          Пакети RX: 226 помилок: 0 випало: 0 перевитрат: 0 кадр: 0
          TX-пакети: 429 помилок: 0 випало: 0 перевитрат: 0 оператор: 0
          зіткнення: 0 txqueuelen: 500 
          RX байт: 26919 (26,9 КБ) TX байт: 58929 (58,9 КБ)

virbr0 Link encap: Ethernet HWaddr d6: 18: 22: db: ff: 93  
          inet addr: 192.168.122.1 Bcast: 192.168.122.255 Маска: 255.255.255.0
          НАГОРОДЖЕННЯ МІЛЬТИКАСТ МТУ: 1500 метрик: 1
          Пакети RX: 0 помилок: 0 випало: 0 перевитрат: 0 кадр: 0
          TX-пакети: 0 помилок: 0 випало: 0 перевитрат: 0 оператор: 0
          зіткнення: 0 txqueuelen: 0 
          RX байти: 0 (0,0 B) TX байти: 0 (0,0 B)

Моя конфігурація мосту під час роботи VM:

$ brctl шоу
Інтерфейси з підтримкою мосту Bridge ID ID STP
br0 8000.001e338807e5 немає eth0
                                                        vnet0
virbr0 8000.000000000000 так

Зауважте, що інтерфейс vnet0 віртуальної машини та інтерфейс eth0 підключені до мосту br0.

І MAC на інтерфейсі br0:

$ brctl showmacs br0
port no mac addr не є локальним? таймер старіння
  1 00: 05: 5d: cf: 64: 61 ні 2,54
  1 00: 19: d2: 42: 5d: 3f ні 36,76
  1 00: 19: df: da: af: 7c ні 2.86
  1 00: 1e: 33: 88: 07: e5 так 0,00
  1 00: 60: 0f: e4: 17: d6 немає 0,79
  2 52: 54: 00: 12: 34: 56 ні 0,80
  1 58: 6d: 8f: 17: 5b: c0 ні 5,91
  1 c8: aa: 21: be: 8d: 16 no 167.69
  2 ca: 0c: 73: c3: bc: 45 так 0,00

Зауважте, що інтерфейс br0 підключає мій хост-комп'ютер до того ж мосту, який використовує гість.

За допомогою програми ви можете перевірити, чи є мост заміщеним, а не NAT traceroute 8.8.8.8. Якщо перший вузол - це маршрутизатор вашої мережі, а не ip-адреса гостя, ваша мережа повинна працювати коректно.

Дивіться цю документацію .

virt-менеджер

Будьте впевнені, що ви встановили virt-managerі hal. halПакет є запропонував залежність для virt-managerі використовується для визначення мережевої конфігурації вашої системи при створенні або редагуванні гостей.

Маючи br0-міст, визначений вище, я створив віртуальну машину з virt-менеджером наступним чином:

введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення

Мені вдалося перейти безпосередньо до решти моєї домашньої мережі та до Інтернету від цього гостя. Мені також вдалося ввійти в нього з іншого (нехозяйного, не запрошеного) комп'ютера Ubuntu в моїй домашній мережі.

Ось дуже довга kvmкоманда, яку виконує virt-менеджер (для порівняння з EApubs або будь-яким іншим, хто має проблеми з цим):

/ usr / bin / kvm -S -M pc-1.0 -enable-kvm -m 1024 -smp 1, розетки = 1, сердечники = 1, нитки = 1 -ім'я точне -uuid f057a729-eda6-4b85-84dc-f100c9ae3789 - nodefconfig -nodefaults -chardev socket, id = charmonitor, path = / var / lib / libvirt / qemu / preci.monitor, сервер, nowait -mon chardev = charmonitor, id = монітор, режим = контроль -rtc base = utc -no- shutdown -drive file = / media / natty / home / gruber / ubuntu-kvm / tmpW8gSGB.qcow2, якщо = немає, id = drive-ide0-0-0, format = qcow2 -device ide-drive, bus = ide.0 , unit = 0, drive = drive-ide0-0-0, id = ide0-0-0, bootindex = 1 -netdev tap, fd = 18, id = hostnet0 -пристрій rtl8139, netdev = hostnet0, id = net0, mac = 52: 54: 00: 0e: da: 9b, шина = pci.0, addr = 0x3 -chardev pty, id = charserial0 -пристрій isa-serial, chardev = charserial0, id = serial0 -usb -vnc 127.0.0.1: 0 -vga cirrus -device intel-hda, id = sound0, шина = pci.0, addr = 0x4 -пристрій hda-duplex, id = sound0-codec0, шина = sound0.0,cad = 0 -пристрій virtio-balloon-pci, id = балон0, шина = pci.0, addr = 0x5

Ось мережева частина опису віртуальної машини в /etc/libvirt/qemu/quantal.xml

    <interface type='bridge'>
      <mac address='52:54:00:b0:8e:aa'/>
      <source bridge='br0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

Згідно з цим посиланням, для продуктивності та надійності може бути найкращим чином встановити модель мережевого пристрою. virtioЦе можна зробити за допомогою віртуального переглядача, натиснувши кнопку i , перейти до налаштування NIC та встановити "Модель пристрою "до virtio. Ви також можете додати це до XML вище, додавши рядок:

      <model type='virtio'/>

Підсумки

Все, що відбулося 12.04:

  1. Встановлення virt-manager, bridge-utils, qemu-kvm та пов'язаних з ними пакетів
  2. Переконайтеся, що кожен користувач, який бажає використовувати kvm, знаходиться у групі libvirtd.
  3. Визначення / etc / network / інтерфейсів, як зазначено вище (які відповідають цитованій статті)
  4. Перезавантажте, переконайтесь, що Ethernet підключений, а бездротовий (якщо такий є) вимкнено.
  5. Або запустіть kvm проти зображення безпосередньо за допомогою, наприклад -device e1000,netdev=tunnel -netdev tap,id=tunnel,ifname=vnet0, або створіть віртуальну машину з virt-менеджером, вказавши мережевий міст br0 на панелі Крок 4-> Додаткові параметри.

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

Щоб відкрити послугу свого нового гостя в Інтернеті, слід:

  1. Підготуйте та налаштуйте будь-яку службу брандмауера, яка вам знадобиться.
  2. Або призначте статичну адресу в гостьовій конфігурації або в службі DHCP.
  3. Якщо ви користуєтесь маршрутизатором NAT, відкрийте порт для послуги, яку ви реалізуєте, направляючи його на IP-адресу гостя.

Не забудьте перевірити та повторно включити службу брандмауера для вашого хост-комп'ютера. Може знадобитися будь-який запис для пересилання трафіку гостю.

Див. Https://help.ubuntu.com/community/KVM/Installation , https://help.ubuntu.com/community/KVM/Networking та https://help.ubuntu.com/12.04/serverguide/libvirt. html .


Привіт, у мене на цій машині немає бездротової карти. тільки Ethernet :)
THpubs

Я розумію, у вас немає бездротового зв’язку - але інші, хто читає це запитання, можуть. Я опублікував розділ virt-manager, оскільки саме цим ви користувались. Чи вказали Ви мостику до br0 на кроці 4 Додаткові параметри під час створення віртуальної машини? Чи відповідають параметри мережі в команді kvm, запущеній virt-manager, моєю? (Ви можете побачити це, запустивши ps aux | grep kvm).
Джон С Грубер

Привіт під час створення віртуальної машини за допомогою менеджера virt, у розширених опціях я не бачу eth0 та br0.
THpubs

Ну, це, мабуть, проблема - це ключ до того, щоб він працював під virt-менеджером. Ви працюєте на машині, яка розмістить його (і з br0 визначено, brctl showяк у вас є питання у вашому запитанні?) Яку версію Ubuntu ви використовуєте? Можливо, саме в цьому різниця. Яка версія virt-менеджера? (Шахта становить 0,9,1-1ubuntu5,1).
John S Gruber

Мені працює Ubuntu 12.04 та virt-менеджер 0.9.1-1ubuntu5.1. Насправді у мене не встановлено virt-менеджера в хості. У мене він є у віддаленій машині, і я використовую його для підключення до хоста. Це проблема у них?
THpubs

6

Якщо поведінка, яку ви бачите, хост може отримати доступ до гостя, а гість може отримати доступ до хоста, але гість не може отримати доступ до інших машин у мережі або візово навпаки ... можливо, брандмауер хоста блокує доступ.

Дивіться: https://bugs.launchpad.net/ubuntu/+source/ufw/+bug/573461

Зокрема, цей розділ: "Останнім кроком є ​​відключення netfilter на мосту:

# cat >> /etc/sysctl.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
EOF

3

Це два сценарії, якими я користуюся, щоб створити міст qemu-kvm.

По-перше, нехай хост стане IP-роутером.

Сценарій ip-router.sh:

#!/bin/bash

internetinterface="eth0"

username=`whoami`

if [ "x$username" != "xroot" ] ; then

    echo    
    echo "You must be root in order to run this script..."
    echo    

    exit    

fi  

if [ "x$1" != "x" ] ; then
    internetinterface="$1"
fi  

if [ "x$1" == "xdel" ] || [ "x$2" == "xdel" ] ; then
    disable="1"
else
    disable="0"
fi  

if [ "$disable" == "0" ] ; then
    echo "Enabling IP forward and setting up masquerade NAT on interface $internetinterface"

    echo 1 > /proc/sys/net/ipv4/ip_forward

    iptables -t nat -A POSTROUTING -o $internetinterface -j MASQUERADE
else
    echo "Disable IP forward and setting down masquerade NAT on interface $internetinterface"

    echo 0 > /proc/sys/net/ipv4/ip_forward

    iptables -t nat -D POSTROUTING -o $internetinterface -j MASQUERADE
fi  

Потім створіть tun-tapінтерфейс та bridgeйого за допомогою інтерфейсу за замовчуванням (як правило, інтернету).

Сценарій create-qemu-bridged-tuntap.sh:

#!/bin/bash

bridgename=br0
tapinterface=tap0
outinterface=eth1

if [ "x$1" != "x" ] ; then
    outinterface="$1"
fi  

ifaces=`awk -F: '{print $1}' /proc/net/dev | tail -n +3`
iffound="0"

for i in $ifaces
do  
    if [ "$outinterface" == "$i" ] ; then
            iffound="1"
    fi  
done

if [ "$iffound" == "0" ] ; then
    echo
    echo "Can't find the output interface."
    echo
    exit 1
fi  

outifaceip=`ifconfig | grep -A1 $outinterface | tail -1 | awk -F: '{print $2}' | awk '{print $1}'`
outifaceiptokens=`echo $outifaceip | awk -F \. '{print NF}'`

if [ "$outifaceiptokens" != "4" ] ;  then
    echo
    echo "The selected output interface $outinterface doesn't seem to have a valid IP address."
    echo
    exit 1
fi  

hostaddress="192.168.1.1"
guestaddress="192.168.1.95"

sudo tunctl -t $tapinterface

sudo brctl addbr $bridgename
sudo brctl addif $bridgename $tapinterface

sudo ip link set $bridgename up
sudo ip addr add $hostaddress/24 dev $bridgename

sudo route add -host $guestaddress dev $bridgename
sudo parprouted eth1 $bridgename

sudo ~/scripts/ip-router.sh $outinterface

Я використовую ці сценарії щодня, тому вони повинні добре працювати і для вас. Вам доведеться встановити якийсь пакет, щоб все це працювало. Використання:

dlocate `which COMMAND`

ви можете бачити, який пакет потрібно мати COMMAND. Наприклад, щоб побачити, який пакет потрібно мати brctl, просто запустіть:

dlocate `which brctl`

і у вас буде:

bridge-utils: /sbin/brctl

Використовуючи однаковий підхід для всіх команд у цих скриптах, слід (принаймні) запустити цей aptitudeкомандний рядок:

sudo aptitude install dlocate iproute parprouted iptables uml-utilities bridge-utils net-tools

Нарешті, ви можете запустити основний сценарій (як звичайний користувач):

#> create-qemu-bridged-tuntap.sh eth0
Set 'tap0' persistent and owned by uid 0
Enabling IP forward and setting up masquerade NAT on interface eth0

Запуск ip addrви повинні побачити br0інтерфейс з IP-адресою 192.168.1.1, як зазначено всередині create-qemu-bridged-tuntap.shсценарію:

#> ip addr
8: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN 
    link/ether 36:76:ee:d6:63:b2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 scope global br0

Це , host addressяк видно по guest. І навпаки, гість матиме IP-адресу 192.168.1.95(знову це можна легко змінити всередині основного сценарію).

Тепер, використовуючи virt-manager, вам просто потрібно налаштувати гостьовий нік для використання br0в якості фізичного інтерфейсу.

virt-менеджер-br0-nic

Всередині цього guestпросто потрібно вказати eth0IP-адресу, 192.168.1.95і все повинно працювати нормально.

Slackware13:~> ifconfig 
eth0      Link encap:Ethernet  HWaddr 52:54:00:F7:6A:78  
          inet addr:192.168.1.95  Bcast:192.168.1.255  Mask:255.255.255.0

Хоча для цього ви використовуєте міст, мені здається, ви створюєте об'єкт для переадресації NAT. Тим не менш, якщо ви зможете переправити певні порти хосту, можливо, це зробить те, що хоче EApubs. Дуже цікава і дуже корисна відповідь беззаперечно.
John S Gruber

Дякую, це працює бездоганно для моїх цілей. Але, по суті, мені не потрібен віддалений доступ до моєї віртуальної машини, і я подумав, що EApubs просто намагається мати доступ до Інтернету у своїй машині управління.
Авіо

@Avio Ні, мій друг, мені потрібен віддалений доступ до моєї машини. Якщо я встановив NAT і створив VM, він працює.
THpubs

Тут є підказка про проблему, з якою у мене було відключення переадресації IP, що cat /proc/sys/net/ipv4/ip_forwardдається 0. Якщо це ввімкнути та наполегливо, він вирішив проблему для мене, інструкції в цій публікації .
Джейк Кобб
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.