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

qemu, kvm: Гость: DHCPOFFERS не получен

Я пытаюсь создать виртуальная машина (гость), который должен действовать как маршрутизатор (ubntu 14.04). Хост - это машина CentOS 7 (4x LAN). В гость должен получить публичный ip адрес над этим eth0 (гость), который связан с enp0s20f0 (хозяин) над br0 (хозяин).

В Проблема это то, что гость не получает ip адрес.


Дополнительная информация:


Эскиз:

+---------------------------------------------------------------------------------------------------------+
|host: CentOS 7, KVM, qemu                                                                                |
|  +------------------------------------------------------------------------------------+  + - - - - - -+ |
|  |guest (VM): ubuntu 14.04 router, firewall                                           |  |other guests  |
|  |                                                                                    |       (VM)    | |
|  | +--------------------------------------------------------------------------------+ |  |              |
|  | |                                                                                | |               | |
|  | |                                     firewall                                   | |  |              |
|  | |                                                                                | |               | |
|  | ++------------+---------+-------------+-------+-------------+------+------------++ |  |              |
|  |  +------------+         +-------------+       +-------------+      +------------+  |               | |
|  |  |PROBLEM:    |         |             |       |             |      |            |  |  |              |
|  |  |eth0        |         |eth1         |       |eth2         |      |eth3        |  |  + - - - - - -+ |
|  |  |dhcp        |         |static       |       |static       |      |static      |  |      X          |
|  +------------------------------------------------------------------------------------+    X            |
|     |not working |         |lan zone     |       |dmz          |      |wlan zone   |     X              |
|     +----+-------+         +-----+-------+       +-------+-----+      +-----------++   X                |
|          |                       |                       |                        |  X                  |
|          |                       |                       |             X  X  X  X |X                    |
|   +------+---------+       +-----+------------+        +-+-------------X--+      ++-----------------+   |
|   |                |       |                  |        |                  |      |                  |   |
|   |                |       |                  |        |                  |      |                  |   |
|   |     br0        |       |      br1         |        |    br2           |      |      br3         |   |
|   |                |       |                  |        | BOOTPROTO=static |      |                  |   |
|   |  BOOTPROTO=none|       | BOOTPROTO=none   |        | IP: a local ip   |      |  BOOTPROTO=none  |   |
|   +-------+--------+       +---------+--------+        +----------+-------+      +---------+--------+   |
|           |                          |                            |                        |            |
|           |                          |                            |                        |            |
|           |                          |                            |                        |            |
|   +-------+--------+       +---------+--------+        +----------+-------+      +---------+--------+   |
|   |                |       |                  |        |                  |      |                  |   |
|   |enp0s20f0       |       |enp0s20f1         |        |enp0s20f2         |      |enp0s20f3         |   |
+---------------------------------------------------------------------------------------------------------+
    |                |       |                  |        |                  |      |                  |    
    |                |       |                  |        |                  |      |                  |    
    +--------X-------+       +---------X--------+        +---------XX-------+      +----------XX------+    
             XXXXX                     X                            XXXXXX                      XX         
                 XX  loc LAN  XXX      X           other server (dmz)    XXX     wlan zone       XX        
                  X             XXXXXXXX                      X       XXXXXX        XXX           X        
     internet XXXXX                                           XXXXXXXXX               XXXXXXXXX XXX        

Конфиги:

Гость:

cat /etc/network/interfaces
#[...] lo [...]
# The primary network interface
auto eth0
iface eth0 inet dhcp

# The lan
auto eth1
iface eth1 inet static
        address 192.168.x.y
        netmask 255.255.255.0
        broadcast 192.168.x.255

# the dmz
auto eth2
iface eth2 inet static
        address 10.0.p.q
        netmask 255.255.255.0
        broadcast 10.0.p.255

# The wirelles zone
auto eth3
iface eth3 inet static
        address 192.168.v.w
        netmask 255.255.255.0
        broadcast 192.168.v.255

Хост:

cat /etc/sysconfig/network-scripts/ifcfg-*

NAME=br0                    DEVICE=br0                  NAME=br2                   NAME=br3                
TYPE=Bridge                 NAME=br1                    TYPE=Bridge                TYPE=Bridge             
ONBOOT=yes                  TYPE=Bridge                 BOOTPROTO=static           ONBOOT=yes              
BOOTPROTO=none              ONBOOT=yes                  ONBOOT=yes                 BOOTPROTO=none          
NM_CONTROLLED=no            BOOTPROTO=none              IPADDR=10.0.0.10           NM_CONTROLLED=no        
DELAY=0                     NM_CONTROLLED=no            NETMASK=255.255.255.0      DELAY=0                 
DEFROUTE=no                 DELAY=0                     GATEWAY=10.0.p.q           DEFROUTE=no             
PEERDNS=no                  DEFROUTE=no                 DNS1=10.0.p.q              PEERDNS=no              
# PEERROUTES=yes            PEERDNS=no                  NM_CONTROLLED=no           # PEERROUTES=yes        
# IPV4_FAILURE_FATAL=no     # PEERROUTES=yes            DELAY=0                    # IPV4_FAILURE_FATAL=no 
# IPV6INIT=no               # IPV4_FAILURE_FATAL=no     DEFROUTE=yes               # IPV6INIT="no"         
# IPV6_AUTOCONF=no          # IPV6INIT=no               PEERDNS=yes                # IPV6_AUTOCONF=no      
# IPV6_DEFROUTE=no          # IPV6_AUTOCONF=no          # PEERROUTES=yes           # IPV6_DEFROUTE=no      
# IPV6_PEERDNS=no           # IPV6_DEFROUTE=no          # IPV4_FAILURE_FATAL=no    # IPV6_PEERDNS=no       
# IPV6_PEERROUTES=yes       # IPV6_PEERDNS=no           # IPV6INIT=no              # IPV6_PEERROUTES=yes   
# IPV6_FAILURE_FATAL=no     # IPV6_PEERROUTES=yes       # IPV6_AUTOCONF=no         # IPV6_FAILURE_FATAL=no 
DEVICE=br0                  # IPV6_FAILURE_FATAL=no     # IPV6_DEFROUTE=no         DEVICE=br3              
                            DEVICE=br1                  # IPV6_PEERDNS=no                                  
                                                        # IPV6_PEERROUTES=yes                              
                                                        #IPV6_FAILURE_FATAL=no                             
                                                        DEVICE=br2                                         

NAME=enp0s20f0              NAME=enp0s20f1              NAME=enp0s20f2             NAME=enp0s20f3          
HWADDR="ab:cd:ef:gh:ij:kl"  HWADDR=ab:cd:ef:gh:ij:mn    HWADDR=ab:cd:ef:gh:ij:op   HWADDR=ab:cd:ef:gh:ij:qr
UUID="[...]"                UUID=[...]                  UUID=[...]                 UUID=[...]              
TYPE=Ethernet               TYPE=Ethernet               TYPE=Ethernet              TYPE=Ethernet           
BOOTPROTO=none              BOOTPROTO=none              BOOTPROTO=none             BOOTPROTO=none          
ONBOOT=yes                  ONBOOT=yes                  ONBOOT=yes                 ONBOOT=yes              
BRIDGE=br0                  BRIDGE=br1                  BRIDGE=br2                 BRIDGE=br3              
NM_CONTROLLED=no            NM_CONTROLLED=no            NM_CONTROLLED=no           NM_CONTROLLED=no        
# PERSISTENT_DHCLIENT=1     # DEFROUTE=no               # DEFROUTE=no              # DEFROUTE=no           
# DEFROUTE=no               # PEERDNS=yes               # PEERDNS=yes              # PEERDNS=yes           
# PEERDNS=yes               # PEERROUTES=yes            # PEERROUTES=yes           # PEERROUTES=yes        
# PEERROUTES=yes            # IPV4_FAILURE_FATAL=no     # IPV4_FAILURE_FATAL=no    # IPV4_FAILURE_FATAL=no 
# IPV4_FAILURE_FATAL=yes    # IPV6INIT="no"             # IPV6INIT=no              # IPV6INIT=no           
# IPV6INIT=no               # IPV6_AUTOCONF=no          # IPV6_AUTOCONF=no         # IPV6_AUTOCONF=no      
# IPV6_AUTOCONF=no          # IPV6_DEFROUTE=yes         # IPV6_DEFROUTE=yes        # IPV6_DEFROUTE=yes     
# IPV6_DEFROUTE=no          # IPV6_PEERDNS=yes          # IPV6_PEERDNS=yes         # IPV6_PEERDNS=yes      
# IPV6_PEERDNS=yes          # IPV6_PEERROUTES=yes       # IPV6_PEERROUTES=yes      # IPV6_PEERROUTES=yes   
# IPV6_PEERROUTES=yes       # IPV6_FAILURE_FATAL=no     # IPV6_FAILURE_FATAL=no    # IPV6_FAILURE_FATAL=no 
# IPV6_FAILURE_FATAL=no     DEVICE=enp0s20f1            DEVICE=enp0s20f2           DEVICE=enp0s20f3        
DEVICE=enp0s20f0                                                                            



Я рад каждой идее ...

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

Если это так, вы можете использовать ebtables для подделки MAC-адреса виртуальной машины, например:

http://wiki.debian.org/BridgeNetworkConnections