У меня есть выделенный сервер с 5 IP-адресами. Первый назначен на eth0. Я создал мост vmbr0 с тем же IP, что и у eth0. Потом одному из моих контейнеров OpenVZ дал один из доступных статических IP, но пинга нет. Есть ли какое-нибудь руководство, по которому можно назначать статические IP контейнерам? Может, я что-то не вписываю в поле BRIDGED PORTS, а надо бы? В VirtualBox я просто бриджил интерфейс и напрямую назначал IP виртуалке. Сейчас использую Proxmox 4.1.
Код:
auto lo
iface lo inet loopback
allow-hotplug eth0
auto eth0
iface eth0 inet static
address x.x.x.138
netmask 255.255.255.248
gateway x.x.x.137
broadcast x.x.x.143
network x.x.x.136
dns-nameservers 127.0.0.1
dns-search hospemex.com
# dns-* опции реализованы через пакет resolvconf, если он установлен
auto vmbr0
iface vmbr0 inet static
address 192.168.0.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '192.168.0.1/24' -o eth0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.0.1/24' -o eth0 -j MASQUERADE
auto vmbr1
iface vmbr1 inet static
address x.x.x.138
netmask 255.255.255.248
bridge_ports none
bridge_stp off
bridge_fd 0
up ip route add x.x.x.139/29 dev vmbr1
up ip route add x.x.x.140/29 dev vmbr1
up ip route add x.x.x.141/29 dev vmbr1
up ip route add x.x.x.142/29 dev vmbr1
На сетевом интерфейсе VM я ставлю публичный IP и использую x.x.x.138 в качестве шлюза.
Код:
auto lo
iface lo inet loopback
allow-hotplug eth0
auto eth0
iface eth0 inet static
address x.x.x.138
netmask 255.255.255.248
gateway x.x.x.137
broadcast x.x.x.143
network x.x.x.136
dns-nameservers 127.0.0.1
dns-search hospemex.com
# dns-* опции реализованы через пакет resolvconf, если он установлен
auto vmbr0
iface vmbr0 inet static
address 192.168.0.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '192.168.0.1/24' -o eth0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.0.1/24' -o eth0 -j MASQUERADE
auto vmbr1
iface vmbr1 inet static
address x.x.x.138
netmask 255.255.255.248
bridge_ports none
bridge_stp off
bridge_fd 0
up ip route add x.x.x.139/29 dev vmbr1
up ip route add x.x.x.140/29 dev vmbr1
up ip route add x.x.x.141/29 dev vmbr1
up ip route add x.x.x.142/29 dev vmbr1
На сетевом интерфейсе VM я ставлю публичный IP и использую x.x.x.138 в качестве шлюза.
