Hi All,имеем: две точки, каждая имеет по два независимых подключения к инету через разных провайдеров. На каждой точке один из провайдеров - основной, другой - резервный. Никаких АS/BGP нет, это обычные адсл
Задача: обеспечить бесперебойную и секьюрную связь между точками, используя основных провайдеров если они работают, и резервных - если основной лежит (в идеале, так что бы даже tcp-сеансы между обоими локалками не рвались).
пока пытаюсь заживить такое решение:
два openvpn тунеля (TAP) между точками, один основной, второй резервный (вопросы с адресацией здесь опускаем).
попровал два варианта - объеденить их в bonding и в бридж(со включенным stp!), по схеме основной/резервный
проблема в том, что и то и другое расчитано для нативный эзернет, а на TAP работает плохо, бонд например, не понимает когда у него выпадает слот (tap-device) а потом возвращается.
пока что удалось заживать оба этих варианта, но с костылем - отдельный процесс раз в секунду вслепую делает up для _всех_ девайсов. Без этого упавший и затем поднявшийся тунель не вернется в бонд или бридж. пока что задержка 30-40 секунд, после подкручивания всех возможных таймаутов.
Если кто делал похожее, поделитесь опытом плиз.
>[оверквотинг удален]
> попровал два варианта - объеденить их в bonding и в бридж(со включенным
> stp!), по схеме основной/резервный
> проблема в том, что и то и другое расчитано для нативный эзернет,
> а на TAP работает плохо, бонд например, не понимает когда у
> него выпадает слот (tap-device) а потом возвращается.
> пока что удалось заживать оба этих варианта, но с костылем - отдельный
> процесс раз в секунду вслепую делает up для _всех_ девайсов. Без
> этого упавший и затем поднявшийся тунель не вернется в бонд или
> бридж. пока что задержка 30-40 секунд, после подкручивания всех возможных таймаутов.
> Если кто делал похожее, поделитесь опытом плиз.Не пробовал но как вариант можно попробовать Ethernet Over IP - скорость упадет точно - но может проканать с агрегацией каналов. с секурностью посложнее - придеться тунель в тунеле.
>бонд например, не понимает когда у него выпадает слот (tap-device) а потом возвращается.Лажа.
debian:~# cat /etc/network/interfaces |grep tap
auto tap0
iface tap0 inet manual
pre-up openvpn --mktun --dev tap0
post-down openvpn --rmtun --dev tap0
bridge_ports tap0
фсё, tap0 будет всегда.debian:~# cat /etc/openvpn/server.conf |grep tap0
# Use "dev tap0" if you are ethernet bridging
# and have precreated a tap0 virtual interface
dev tap0переводить, думаю, не надо.
>[оверквотинг удален]
> iface tap0 inet manual
> pre-up openvpn --mktun --dev tap0
> post-down openvpn --rmtun --dev tap0
> bridge_ports tap0
> фсё, tap0 будет всегда.
> debian:~# cat /etc/openvpn/server.conf |grep tap0
> # Use "dev tap0" if you are ethernet bridging
> # and have precreated a tap0 virtual interface
> dev tap0
> переводить, думаю, не надо.это вообще к чему.....? тема не про то как поднимать tap/openvpn средствами того или иного дистрибутива, а про то как агрегировать два tap'a, да и не имеет значения под какой дистрибутив.
> это вообще к чему.....? тема не про то как поднимать tap/openvpn средствами
> того или иного дистрибутива, а про то как агрегировать два tap'a,
> да и не имеет значения под какой дистрибутив.
>пока что удалось заживать оба этих варианта, но с костылем - отдельный процесс раз в >секунду вслепую делает up для _всех_ девайсовя про то, что если использовать mktap то tapX будет всегда UP, не ?
--------
ну или наоборот, подымать тап средствами опенвпн, и в нем использовать вызов скриптов при поднятии/опускании канала ?
>> это вообще к чему.....? тема не про то как поднимать tap/openvpn средствами
>> того или иного дистрибутива, а про то как агрегировать два tap'a,
>> да и не имеет значения под какой дистрибутив.
>>пока что удалось заживать оба этих варианта, но с костылем - отдельный процесс раз в >секунду вслепую делает up для _всех_ девайсов
> я про то, что если использовать mktap то tapX будет всегда UP,
> не ?
> --------
> ну или наоборот, подымать тап средствами опенвпн, и в нем использовать вызов
> скриптов при поднятии/опускании канала ?Позволю себе вмешаться, так как тема самому интересна.
тогоже можно добиться используя параметр persist-tun, но что это даст?
> имеем: две точки, каждая имеет по два независимых подключения к инету
> через разных провайдеров. На каждой точке один из провайдеров - основной,
> другой - резервный. Никаких АS/BGP нет, это обычные адсл
> Задача: обеспечить бесперебойную и секьюрную связь между точками, используя основных провайдеров
> если они работают, и резервных - если основной лежит (в идеале,
> так что бы даже tcp-сеансы между обоими локалками не рвались).я делал при помощи OSPF (quagga), линки с разными весами. Работало замечательно