У меня есть проблема, чтобы понять, как KVM работает в сети с гостем Windows 2008 Server, который я настроил. Моя проблема заключается в следующем:

У меня есть выделенный корневой сервер и есть гость (сервер Win 2k8). Я установил драйверы Ethernet из образа ISO внутри виртуальной машины. Адаптер - это RedHat VirtIO. Это было успешно в гостях. Конфиг использует virtio для сетевой карты, и я установил мост в virbr0:

virbr0    Link encap:Ethernet  HWaddr fe:54:00:0e:68:af  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16231 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3279 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2637216 (2.5 MiB)  TX bytes:705652 (689.1 KiB)

Есть еще один интерфейс:

vnet0     Link encap:Ethernet  HWaddr fe:54:00:0e:68:af  
          inet6 addr: fe80::fc54:ff:fe0e:68af/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2529 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44561 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:571094 (557.7 KiB)  TX bytes:2366159 (2.2 MiB)

Я хочу иметь сеть для гостя и возможность использовать rdesktop (поэтому, я думаю, порт должен быть перенаправлен). Я стараюсь избегать магии iptables, так как не имеет смысла обращаться с ней на брандмауэре. Как мне получить доступ к сети в обоих направлениях к / от гостя.

Если мост 192.168.122.1, как мне добраться до ВМ? Для rdesktop или что-то? Практически я хочу получить доступ к порту rdesktop от eth0 или около того, который является внешним интерфейсом с достижимым IP-адресом.

Обновить:

маршрут:

         target            gateway          source    proto    scope    dev tbl
       10.8.0.2                           10.8.0.1   kernel     link   tun0 
   217.11.52.0/ 24                   217.11.52.231   kernel     link   eth0 
      10.8.0.0/ 24        10.8.0.2                                     tun0 
 192.168.122.0/ 24                   192.168.122.1   kernel     link virbr0 
        default        217.11.52.1                                     eth0 
127.255.255.255          broadcast       127.0.0.1   kernel     link     lo local
       10.8.0.1              local        10.8.0.1   kernel     host   tun0 local
    217.11.52.0          broadcast   217.11.52.231   kernel     link   eth0 local
  217.11.52.231              local   217.11.52.231   kernel     host   eth0 local
  217.11.52.230              local   217.11.52.231   kernel     host   eth0 local
  192.168.122.1              local   192.168.122.1   kernel     host virbr0 local
  192.168.122.0          broadcast   192.168.122.1   kernel     link virbr0 local
  217.11.52.233              local   217.11.52.231   kernel     host   eth0 local
  217.11.52.232              local   217.11.52.231   kernel     host   eth0 local
  217.11.52.255          broadcast   217.11.52.231   kernel     link   eth0 local
      127.0.0.0          broadcast       127.0.0.1   kernel     link     lo local
192.168.122.255          broadcast   192.168.122.1   kernel     link virbr0 local
      127.0.0.1              local       127.0.0.1   kernel     host     lo local
     127.0.0.0/ 8            local       127.0.0.1   kernel     host     lo local
        fe80::/ 64                                   kernel            eth0 
        fe80::/ 64                                   kernel          virbr0 
        fe80::/ 64                                   kernel           vnet0 
        default        unreachable                   kernel              lo unspec
            ::1                 ::                     none              lo local
fe80::21b:21ff:fe95:a4f                 ::                     none              lo local
fe80::fc54:ff:fe0e:68af                 ::                     none              lo local
        ff00::/ 8                                                      eth0 local
        ff00::/ 8                                                    virbr0 local
        ff00::/ 8                                                     vnet0 local
        default        unreachable                   kernel              lo unspec

брктл шоу

bridge name     bridge id               STP enabled     interfaces
virbr0          8000.fe54000e68af       yes             vnet0

1 ответ1

1

Я считаю, что ваш мост не установлен должным образом.

Чтобы настроить мост на сервере Debian, вы должны определить свой мост с IP-адресом и сетью (которые у вас есть). Тогда у тебя будет маршрут для моста. Вы не показали нам свою таблицу маршрутизации. Вы можете увидеть это на сервере Debian с помощью команды

route

Ваша проблема может быть вашей таблицей маршрутизации, поэтому, пожалуйста, обновите ваш вопрос с этим. Кроме того, мне странно, что IP-адрес вашего моста будет 192.168.122.1, так как обычно это IP-адрес шлюза.

Как только ваш мост настроен, вам нужно добавить к нему свой интерфейс. KVM должен автоматически войти в гостевой интерфейс. Убедитесь, что вы разместили интерфейс сервера Debian (вы предоставили это?) находится на мосту. Вы делаете это с помощью команды:

brctl show

Если бы вы могли обновить свой вопрос результатами этой команды, это поможет нам определить, все ли настроено.

ОБНОВИТЬ

Вывод вашей команды route показывает, что у вас есть интерфейс с именем eth0, который, как я полагаю, является сетевым интерфейсом вашего Debian. Вам нужно добавить eth0 к вашему мосту с помощью команды:

brctl addif virbr0 eth0

Где вы взяли IP 192.168.122.1 для моста? Обычно у меня не будет IP для eth0, я назначу IP-адрес eth0 мосту, а затем добавлю eth0 к мосту с помощью приведенной выше команды. После этого я проверил бы, что маршрут по умолчанию был правильным, и затем попытался пропинговать 8.8.8.8 из коробки Debian, чтобы проверить мою сеть в тот момент. KVM должен добавить виртуальное гостевое сетевое устройство к мосту без дальнейшей настройки с вашей стороны. Подтвердите это, запустив гостя, а затем используйте команду brctl show и посмотрите, что подключено к мосту.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .