VZ и ip-адреса с разных подсетей. [message #39189] |
Thu, 25 March 2010 13:50 |
|
Приветствую.
Уже кучу копий сломал, но проблему так и не решил. Есть сервер в Штатах, на сервере Debian Lenny 64bit. Провайдер выделил четыре адреса, но первый адрес (который висит на физическом iface) находится в одной подсети (с одним шлюзом и маской), а остальные три дополнительных в другой подсети (с другими масками и шлюзом), типа того:
IP: 173.224.112.x
Gateway: 173.224.112.65
Netmask: 255.255.255.192
Broadcast: 173.224.112.127
IP: 173.224.118.y1
Gateway: 173.224.118.129
Netmask: 255.255.255.128
Broadcast: 173.224.118.255
IP: 173.224.118.y2
Gateway: 173.224.118.129
Netmask: 255.255.255.128
Broadcast: 173.224.118.255
IP: 173.224.118.y3
Gateway: 173.224.118.129
Netmask: 255.255.255.128
Broadcast: 173.224.118.255
Нашел в вики решение с бриджами и veth, но в силу монструозности боюсь его использовать. Есть ли какая-либо возможность работать с этими адресами через venet? Может как-то хитро рутинг прописать?
|
|
|
Re: VZ и ip-адреса с разных подсетей. [message #39204 is a reply to message #39189] |
Sat, 27 March 2010 11:13 |
RXL_
Messages: 147 Registered: July 2009 Location: Moscow/Russia
|
Senior Member |
|
|
Попробуйте так:
ip ro a 173.224.118.0/24 dev eth0 src 173.224.112.65
Если не поможет, то можно и на бридже - это не сложно.
Основы можно почитать здесь:
http://wiki.openvz.org/Virtual_Ethernet_device#Virtual_Ether net_devices_can_be_joined_in_one_bridge
http://wiki.openvz.org/Virtual_Ethernet_device#Making_a_brid ged_veth-device_persistent
Для этого создается бридж:
http://wiki.openvz.org/Virtual_Ethernet_device#Adding_veth_t o_a_CT
В VE добавляем виртуальное eth-устройство:
vzctrl set ${VEID} --save --netif_add eth0
В VE интерфейс будет называться eth0, а на HN - veth${VEID}.0.
Добавляем это устройство в бридж:
brctl addif br0 veth${VEID}.0
Далее самая опасная в удаленном администрировании часть: нужно добавить eth0 в бридж, снять IP (v4 и v6 !!!) с eth0, назначить их на br0 и добавить необходимые маршруты. Выполнять это лучше одним скриптом без вывода в консоль.
Стоит потренироваться сперва на локальной машине (можно даже на виртуальной). Операция простая, но, если нет возможности подключить KVM на удаленном сервере, то она может привести к его недоступности. В случае трабл надо просить хостера ресетнуть сервер: настройки бриджа не сохранены в стартовых скриптах.
Если на сервере есть второй ethernet-порт и хостер может предоставить вторую соску, то задача упрощается: eth0 остается как есть - для обслуживания HN, а eth1 используется для бриджа.
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Re: VZ и ip-адреса с разных подсетей. [message #39621 is a reply to message #39204] |
Fri, 21 May 2010 10:38 |
msa17
Messages: 4 Registered: September 2006 Location: Moscow, Russia
|
Junior Member |
|
|
А почему не сделать через proxy arp? В моем случае:
HN eth0: inet addr:1xx.1yy.82.35, Mask:255.255.255.224
VE venet0:0 inet addr: 1xx.1yy.81.141
На HN сделал так:
/sbin/arp -i eth0 -s 1xx.1yy.81.141 00:aa:bb:cc:dd:ee pub
Ну и в цепочке FORWARD настроил разрешение для этого ip. Все работает
|
|
|