Я также боролся с похожим сценарием, у меня есть сервер, и я должен указать, что настройка моста вырезала меня и должна была перезагрузиться, чтобы иметь возможность добраться до него, так или иначе мне удалось обработать его с помощью 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 в во-первых, это также дает им общедоступный IP-адрес внешнего мира. Вы также можете выполнять эти переадресации по-по-порту, настраивая правило iptables, чтобы установить адрес, например -d 111.222.333.2:80 -p tcp, а также добавить порт к локальному адресу ...
Возможно, вам также понадобится чтобы включить устройство IP переадресации, вы можете проверить, что, например
sysctl -a | grep forward
(где вы должны увидеть его для устройства eth0), при необходимости корректируя его с помощью правильной команды SYSCTL как
sysctl -w net.ipv4.ip_forward=1