Несколько IP + мост для KVM

У меня сейчас проблема, и я действительно не знаю, где ошибка. Я получил корневой сервер от своего интернет-провайдера. Этот корневой сервер уже имеет один включенный IP-адрес, и сегодня я забронировал еще два IP-адреса. Итак, что я хочу сделать сейчас, это сопоставить эти два новых IP-адреса с двумя виртуальными машинами, а также сохранить включенный IP-адрес для корневого сервера. Итак, как я это понимаю?

Я подумал что-то вроде:

br0 - содержит исходный IP-адрес корневого сервера.

br0:0 - содержит первый IP-адрес первой виртуальной машины

br0:1 - содержит второй IP-адрес второй виртуальной машины

Но это не работает. Любые идеи. Я очень расстроен. Работал над этим целый день, а решения нет.


person user3319874    schedule 17.02.2014    source источник


Ответы (2)


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

#create alias for your second ip address (lets say its 111.222.333.2 , local address 192.168.1.2)
ifconfig eth0:1 111.222.333.2 
#you should add netmask to be proper if you've got subnet 

#now you should be able to ping this second address from outside world - try it,
#that is if you have not set up firewall to block pings ... flush iptables rules if you are not sure...

#set up NAT rule (network-address-translate : outside ip-> local ip and back local ip->outside ip)
#assumes your virtual machines lives as 192.168.1.2
iptables -t nat -A PREROUTING -d 111.222.333.2 -j DNAT --to-destination 192.168.1.2
iptables -t nat -A POSTROUTING -s 192.168.1.2 -j SNAT --to-source 111.222.333.2

Это помогло мне с сервером с несколькими IP-адресами и виртуальными машинами KVM, которые изначально работали в сети по умолчанию (режим пересылки = nat), поэтому сначала у них был доступ в Интернет через NAT и внутренний IP-адрес, это также дает им доступ к внешнему миру. Айпи адрес. Вы также можете выполнять эти перенаправления для каждого порта, настроив правило iptables, чтобы установить адрес, например -d 111.222.333.2:80 -p tcp, а также добавив порт к локальному адресу...

You may also need to turn on device IP forwarding, you can check that by for example

sysctl -a | grep forward
(where you should see it on for your eth0 device) , optionally adjusting it by proper sysctl command like

sysctl -w net.ipv4.ip_forward=1
person PetrV    schedule 15.04.2014

Сопоставьте br0 с VM1 и VM2 как TAP DEVICE, а в VM1 и VM2 вы можете увидеть это как устройство eth; Назначьте IP1 и IP2 для VM1 и VM2 соответственно; С этой конфигурацией вы можете отправлять эхо-запросы с ВМ1 на ВМ2 и с главной машины на любую гостевую машину (ВМ1 или ВМ2);

Следующая ссылка поможет вам настроить TAP-устройство для ВМ через мост; Посмотрите указанный там скрипт qemu-ifup и хорошо его поймите.

person Viswesn    schedule 19.02.2014