Есть машина с depian 6, поднимает vpn-ку с другой находящейся в удалённом офисе. Возникла необходимость резервного подключения (другой провайдер, на всякий случай). Хочу сдеать 2 моста, включить им STP и расставить приоритеты, но: не могу понять как привязать tap устройство к конкретному подключению, вообщем, вот действующий конфиг, для одного подключения. Подскажите направление, в котором думать.# The loopback network interface
auto lo
iface lo inet loopback#Локальная сеть
allow-hotplug eth0
iface eth0 inet manualauto br0
iface br0 inet static
pre-up /usr/sbin/openvpn --mktun --dev tapG
pre-up /usr/sbin/brctl addbr br0
address 192.168.0.1
netmask 255.255.0.0
network 192.168.0.0
post-up /sbin/ifconfig eth0 0.0.0.0 promisc up
post-up /usr/sbin/brctl addif br0 eth0post-up /sbin/ifconfig tapGEBL 0.0.0.0 promisc up
post-up /usr/sbin/brctl addif br0 tapGpost-down /usr/sbin/brctl delbr br0
post-down /sbin/ip link set eth0 down#Катра смотрящая во внешний мир
auto eth1
iface eth1 inet static
address xxxxxxxx
netmask xxxxxxxx
gateway xxxxxxxx
dns-nameservers xxxxxxxx#Скрипт фаервола
post-up /sbin/fwall start
Может попробовать сделать не два моста, а агрегацию (объединение, bonding) OpenVPN в один?
> Может попробовать сделать не два моста, а агрегацию (объединение, bonding) OpenVPN в
> один?два(+) интерфейса можно объединить и агрегацией, и мостом, теоретически должно получиться.
> Может попробовать сделать не два моста, а агрегацию (объединение, bonding) OpenVPN в
> один?если сделать аггрегацию(bonding), то всёравно потребуется объединение в мост (bridging) чтобы bond соединить с eth. Правда, в этом случае STP не потребуется, приоритезация (использование каналов) будет регулироваться настройкой bonding.
> Есть машина с depian 6, поднимает vpn-ку с другой находящейся в удалённом
> офисе. Возникла необходимость резервного подключения (другой провайдер, на всякий случай).
> Хочу сдеать 2 моста, включить им STP и расставить приоритеты, но:
> не могу понять как привязать tap устройство к конкретному подключению, вообщем,
> вот действующий конфиг, для одного подключения. Подскажите направление, в котором думать.
> Может попробовать сделать не два моста, а агрегацию (объединение, bonding) OpenVPN в
> один?auto tap0
iface tap0 inet static
address 1.2.3.4
netmask 255.255.255.240
pre-up openvpn --mktun --dev tap0
post-down openvpn --rmtun --dev tap0Для второго tap видимо также =)
Дальше конфигурится на общих основаниях.
В конфиг опенвпн пишется "dev tap0", т.е. с номером устройства.
>[оверквотинг удален]
>> один?
> auto tap0
> iface tap0 inet static
> address 1.2.3.4
> netmask 255.255.255.240
> pre-up openvpn --mktun --dev tap0
> post-down openvpn --rmtun --dev tap0
> Для второго tap видимо также =)
> Дальше конфигурится на общих основаниях.
> В конфиг опенвпн пишется "dev tap0", т.е. с номером устройства.Т.е. ты предлагаешь реальные сетевые подключённые к интернету карты обозвать как tap*, сделать два моста?
>[оверквотинг удален]
>> iface tap0 inet static
>> address 1.2.3.4
>> netmask 255.255.255.240
>> pre-up openvpn --mktun --dev tap0
>> post-down openvpn --rmtun --dev tap0
>> Для второго tap видимо также =)
>> Дальше конфигурится на общих основаниях.
>> В конфиг опенвпн пишется "dev tap0", т.е. с номером устройства.
> Т.е. ты предлагаешь реальные сетевые подключённые к интернету карты обозвать как tap*,
> сделать два моста?Ни того ни другого из моего ответа совершенно не следует.
Я не понял, в чем проблема обсуждаемой темы?
> Хочу сделать 2 моста,
Зачем надо 2 моста если нужен один с тремя интерфейсами - физ интерфейс в локалку и два интерфейса tapX - впн-а через основного провайдера + впн-на через резервного провайдера?
> но: не могу понять как привязать tap устройство к конкретному подключению
Цитирую себя же из ответа выше: "В конфиг опенвпн пишется "dev tap0", т.е. с номером устройства."
PS: Да, в приведенном выше конфиге interfaces я маленько ошибся - tap-устройствам IP-адреса присваивать не надо.
Пардон, но как tap1 (к примеру), поймёт что он привязан к какой-то конкретной сетевой карте(провайдеру)?? А 2 моста нужно для реализации STP, т.к. получается петля (ну по крайней мере мне выход видится так). В нагрузку конфиг vpn-на можь там что-нибудь дописать надо?remote x.x.x.x
dev tapG
secret keys/key
ping 2
verb 3
mute 1
port x
status /var/log/openvpn/g_br.ststus 10
writepid /var/log/openvpn/g_br.pid
log-append /var/log/openvpn/g_bridge.log
> Пардон, но как tap1 (к примеру), поймёт что он привязан к какой-то
> конкретной сетевой карте(провайдеру)??Считаем, что tap-девайс это тот же самый eth, только проводок виртуальный, а не физический. Дальше всё делаем исходя из этого предположения.
TAP никогда не поймет, что он привязан к провайдеру. eth тоже этого никогда не поймет.
Вам всего-лишь надо обеспечить, чтобы каждый тап функционировал (передавал данные), используя каналы "своего" провайдера, независимо от состояния/работоспособности другого.
Если вы еще не сделали (не обеспечили) это, то вам надо читать http://opennet.ru/tips/2009_policy_route_linux.shtml
> А 2 моста нужно для реализации STP, т.к.
> получается петля (ну по крайней мере мне выход видится так).Я что, просто так ответы пишу? Может быть буквы маленькие, и надо писать БОЛЬШИМИ ?
Какая нафиг петля и в каком месте получается?
Чем вы собрались организовывать STP между двумя независимыми мостами, какими командами?>В нагрузку конфиг vpn-на можь там что-нибудь дописать надо?
ЗА-ЧЕМ ? Чего вам не хватает?
Любую задачу надо разложить на составляющие, и решать по частям.Знаете, как едят слона? По кусочкам.