Как сделать GRE + Bonding + Bridge в Ubutnu?

Доброго дня. Коллеги, подскажите, я явно что-то упускаю :)
Имеется:
Все ОС - Ubutnu 14.04
SRV - сервер дома (опустим почему и зачем. Пусть будет академический интерес)
GW - домашний роутер (на базе ПК)
VPS - KVM-виртуалка за пределами дома
ETH и PPPoE - 2 ISP с соответствующими типами подключения

Задача:
Организовать надежный канал в одном сетевом пространстве между VPS и SRV. Пока для себя я накидал вот такую схему:
501c20b7750c40ddbc6832ca1a755f6d.pngПроблема:
GRE (tun20 и 21) поднялся и работает без проблем. Bond удалось запустить только в режиме Broadcast, в остальных если и начинал работать, то только на одном GRE, при его отключении второй не "подхватывался". Попытку сделать Bridge система пресекла с формулировкой
can't add bond0 to bridge br0: Invalid argument
Интереса ради пробовал поднять vlan поверх bond, на GW применилось без проблем, на VPS - RTNETLINK answers: Cannot assign requested address

Конфиги:
GW:
auto tun20
iface tun20 inet manual
    pre-up iptunnel add tun20 mode gre remote IP.FROM.THE.VPS local IP.FROM.THE.ISP_PPPOE ttl 64
    up ifconfig tun20 multicast
    post-down ip tunnel del tun20
    up ifconfig tun20 mtu 1468
    bond-master bond0

auto tun21
iface tun21 inet manual
     pre-up iptunnel add tun21 mode gre remote IP.FROM.THE.VPS local IP.FROM.THE.ISP_ETH ttl 64
     up ifconfig tun21 multicast
     up ifconfig tun21 mtu 1468
     post-down ip tunnel del tun21
     bond-master bond0

auto bond0
iface bond0 inet static
    address 172.31.200.1
    netmask 255.255.255.0
    up ifconfig bond0 mtu 1468
    bond-slaves none
    bond_mode broadcast
    bond-miimon 100
    bond-downdelay 200
    bond-updelay 200

iface bond0.4000 inet static
    address 172.31.220.1
    netmask 255.255.255.0
    vlan_raw_device bond0

# auto mcbr0
iface br0 inet static
    bridge_ports bond0
    address 172.18.3.10
    netmask 255.255.255.0
    bridge_fd 9
    bridge_hello 2
    bridge_maxage 12
    bridge_maxwait 0
    bridge_stp off

VPS:
auto bond0
iface bond0 inet static
    address 172.31.200.2
    netmask 255.255.255.0
    up ifconfig bond0 mtu 1468
    bond-slaves none
    bond_mode broadcast
    bond-miimon 100
    bond-downdelay 200
    bond-updelay 200

auto tun20
iface tun20 inet manual
     pre-up iptunnel add tun20 mode gre local IP.FROM.THE.VPS remote IP.FROM.THE.ISP_PPPOE ttl 64
     up ifconfig tun20 multicast
     post-down ip tunnel del tun20
     up ifconfig tun20 mtu 1468
     bond-master bond0
     bond-mode broadcast

auto tun21
iface tun21 inet manual
     pre-up iptunnel add tun21 mode gre local IP.FROM.THE.VPS remote IP.FROM.THE.ISP_ETH ttl 64
     up ifconfig tun21 multicast
     up ifconfig tun21 mtu 1468
     post-down ip tunnel del tun21
     bond-master bond0
     bond-mode broadcast

iface bond0.4000 inet static
    address 172.31.220.1
    netmask 255.255.255.0
    vlan_raw_device bond0
  • Вопрос задан
  • 695 просмотров
Пригласить эксперта
Ответы на вопрос 1
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Нельзя делать bond из разных L3-устройств.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы