Set up your openvz containers to use bridged networking (using veth interfaces).
Create a bridge for each of the internal networks you want to connect your containers to (in your case 2 bridges, one for 192.168.2.0/24 and one for 192.168.3.0/24. Let's call them br2 and br3).
Give to each bridge an ip address on the correct network (for example br2 could be 192.168.2.1 and br3 192.168.3.1)
Configure the containers connecting them to their respective bridges.
For example connect to br2 the containers that should reside on network 192.168.2.0/24 (let's say they are CT1 and CT2) and to br3 the ones that you want on 192.168.3.0/24 (let's say they are CT3 and CT4).
Give to each container an IP address on the same network of the bridge they are connected to. Set the ip address of the bridge ad the default gateway.
For example: CT1 and CT2 with IP 192.168.2.101 and 192.168.2.102. Their gateway will be 192.168.2.1 (IP address of br2)
Enable ip forwarding on the physical host
Configure all the public IPs on the physical host's interface connected to the Internet (let's say it's eth0), with the correct subnet mask.
Configure NAT for your CTs as follows:
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j SNAT --to first.pulic.ip.address iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth0 -j SNAT --to second.pulic.ip.address
Маршрутизация нескольких публичных IP-адресов во внутренние подсети
Мне был назначен блок / 29 ips для выделенного сервера, который я арендую. Я хочу иметь возможность сохранить один из этих IP-адресов для управления самим сервером и перенаправить каждый из остальных в свою внутреннюю подсеть, чтобы несколько контейнеров OpenVZ могли совместно использовать публичные IP-адреса.
Например, у меня может быть два веб-сервера и два файловых сервера в 4 контейнерах. Это не те службы, которые будут запущены, но для удобства я буду их использовать. Я хочу, чтобы один из моих общедоступных IP-адресов (XX.XX.XX.2) указывал на два контейнера в подсети 192.168.2.0/24, а другой общедоступный IP-адрес (XX.XX.XX.3) указывал на контейнеры. в подсети 192.158.3.0/24. Связь между подсетями не требуется, но каждый контейнер должен иметь доступ к сети.
Я попытался использовать маршрутизацию на основе источника, как описано здесь, и NAT, как описано в вики OpenVZ, здесь безуспешно. Хост работает под управлением Centos 6, а каждая виртуальная машина работает под управлением Debian 7, если это имеет значение.
1 ответ на вопрос
Похожие вопросы
-
2
Windows 7 Home Premium запоминает пароли общего доступа к сети?
-
5
Поделитесь XP сетевым подключением без перезагрузки?
-
5
Как мне сказать Windows использовать 802.11 вместо 3G?
-
-
4
Есть ли способ поделиться сканером многофункционального принтера?
-
3
Есть ли способ соединить два компьютера через USB?
-
3
Как сохранить несколько подключений к интернету?
-
4
iPod-Touch для воспроизведения фильмов с ПК на PS3?
-
2
Mac не присоединится к рабочей группе Windows
-
1
Как я могу повысить безопасность своего портала?
-
1
Как подключить к сети Windows XP и Ubuntu Linux?