KVM - nat ou ponte. Como eu faço isso

2

Eu tenho o servidor Debian Jessie e tenho o servidor apache instalado. De apache hospedado vários sites de endereços IP diferentes. Meu servidor tem recursos para o KVM. A minha pergunta é - Como posso definir o meu IP gratuito para o computador convidado KVM. . Meu IP gratuito é eth0: 3 - > 80.80.130.135 Meu arquivo de configuração / etc / network / interfaces é:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface

auto eth0
auto eth0:0
auto eth0:1
auto eth0:2
auto eth0:3

allow-hotplug eth0
iface eth0 inet static
    address 80.80.130.131
    netmask 255.255.255.192
    network 80.80.130.128
    broadcast 80.80.130.191
    gateway 80.80.130.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    dns-search localdomain

iface eth0:0 inet static
    address 80.80.130.132
    netmask 255.255.255.192
    network 80.80.130.128
    gateway 80.80.130.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    dns-search localdomain


iface eth0:1 inet static
    address 80.80.130.133
    netmask 255.255.255.192
    network 80.80.130.128
    broadcast 80.80.130.191
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    dns-search localdomain


iface eth0:2 inet static
    address 80.80.130.134
    netmask 255.255.255.192
    network 80.80.130.128
    broadcast 80.80.130.191
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    dns-search localdomain


iface eth0:3 inet static
    address 80.80.130.135
    netmask 255.255.255.192
    network 80.80.130.128
    broadcast 80.80.130.191
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    dns-search localdomain
    
por Йосиф Пеев 24.11.2015 / 07:23

1 resposta

2

  1. Modifique /etc/network/interfaces no seu host jessie para que ele use uma interface em ponte para eth0 .

por exemplo. exclua suas definições eth0 e eth0:* aliases e adicione o seguinte:

auto br0
iface br0 inet static
    address 80.80.130.131
    netmask 255.255.255.192
    network 80.80.130.128
    broadcast 80.80.130.191
    gateway 80.80.130.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 85.17.151.123 62.211.64.122
    post-up ip addr add 80.80.130.132 dev br0
    post-up ip addr add 80.80.130.133 dev br0
    post-up ip addr add 80.80.130.134 dev br0
    bridge_ports eth0
    bridge_stp off
    bridge_maxwait 1
    bridge_fd 1
    bridge_hello 2
    bridge_maxage 12

Após a reinicialização ou ifdown -a ; ifup -a , você pode configurar seu convidado:

  1. Configure o convidado para usar br0 . Você pode fazer isso com uma GUI usando o virt-manager, ou pode editar o arquivo XML diretamente com virsh edit domainname e alterar a definição da interface para algo como isto:
<interface type='bridge'>
  <mac address='xx:xx:xx:xx:xx:xx'/>
  <source bridge='br0'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
  1. Agora você pode configurar o convidado para usar o IP estático 80.80.130.135 em /etc/network/interfaces (ou o que for apropriado para sua VM, se não for outro sistema Debian), ou você pode configurar dnsmasq para alocar esse IP para o endereço MAC da VM.
por 24.11.2015 / 10:55