L2TP+ipsec сервер с помощью скрипта hwdsl2 (https://github.com/hwdsl2/setup-ipsec-vpn) , к нему подключается около сотни микротиков с разными внутренними подсетями (не повторяющимися - 192.168.*.0/24), задача указать дебиану маршурт к каждому из микротиков, я на быструю руку наваял скрипт который: добавляет маршрут - пингует - есть пинг хорошо - нет пинга удаляет маршрут и добавляет следующий, вот как это выглядит например для подсети 192.16812.1 :
#!/bin/sh
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «ping good»
exit 0
else
ip route del 192.168.12.0/24 via 192.168.42.1 dev ppp0
echo «del route old ppp0»
fi
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «ping add route»
exit 0
else
ip route add 192.168.12.0/24 via 192.168.42.1 dev ppp0
echo «route addet»
fi
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «ping good add ppp0»
exit 0
else
ip route del 192.168.12.0/24 via 192.168.42.1 dev ppp0
echo «del route ppp0»
fi
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «start ppp1»
exit 0
else
ip route del 192.168.12.0/24 via 192.168.42.1 dev ppp1
echo «del route old ppp1»
fi
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «ping add route»
exit 0
else
ip route add 192.168.12.0/24 via 192.168.42.1 dev ppp1
echo «add route»
fi
if ping -c 4 192.168.12.1 >> /dev/null
then
echo «ping good ppp1»
exit 0
else
ip route del 192.168.12.0/24 via 192.168.42.1 dev ppp1
echo «del route ppp1»
fi
и т.д.,
Но все это громоздко и долго, так как время от времени тунели отваливаются, и даже если скрипты (для каждого микротика свой такой скрипт) исполняются по крону каждых 5 мин все равно это костыли, я читал про /etc/ppp/ip-up , но мне кажется что с его помощью я не закрою этот вопрос, мне бы понять как прикрутить имя vpn пользователя к определенному интерфейсу, почему имя ? а что если не имя ? IP адреса у большой части микротов динамические, и тогда можно будет прописать маршруты раз и навсегда.
Спасибо что прочитали
Ну добавь description к интерфейсу. Они у тебя конфиг файлы имеют или как создаются?
Обсуждают сегодня