[Sysadmins] pppoe + OpenVPN

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Вт Янв 22 15:32:57 MSK 2008


On Tue, Jan 22, 2008 at 02:20:38PM +0500, Дмитрий wrote:
> Мне потребовалось сделать так, чтобы при подъему vpn-интерфейся
> дэфолтний роутинг шёл через vpn.

Вообще-то лучше в sysadmins на ... даю копию, цитирую полностью.

> Т.е. на OpenVPN сервере добавляю параметр push
> "redirect-gateway". Если OpenVPN ганяется по обычному ethernet,
> то всё отрабатывает нормально. Но когда используется pppoe, то
> VPN клиент не может найти дэфолтный роут, хотя он есть.
> 
> т.е.  у pppd есть параметр defaultroute, для того чтобы роутинг
> шёл через ppp соединение. и он прописывает его таким образом,
> что аналогично команде:
> route add -net default dev ppp0
> 
> при этом не указан шлюз. Если вручную прописать команду:
> route add -net default gw ISP_шлюз dev ppp0
> то VPN'ка благополучно его определяет и заменяет своим.
> 
> Я проблему решил, путём правки скриптов, где убрал параметр
> defaultroute у pppd и добавил команду
> route add -net default gw $5 dev $1 в скрипт /etc/ppp/ip-up.
> 
> Кто что скажет поэтому поводу.
> 
> Вообще я использую ADSL. Линк постоянно рвётся. pppoe
> благополучно само перестартует. А вот OpenVPN обычно не
> замечает, что ppp0 интерфейс пропадал и естественно маршрут для
> OpenVPN сервера пропадает. Как сделать так, чтобы при
> восстановлении ADSL линка всё снова восстанавливалось.

Можете задействовать /etc/ppp/ip-up.d/ и ip-down.d/ (положить
туда скриптики на подъём/опускание ppp0), ну или почитать
http://wiki.sisyphus.ru/admin/etcnet#postpre и сделать
/etc/net/ifaces/ppp0/{ifup-pre,ifdown-post}

> Поидее это скорее всего нужно будет для школ и хорошо бы это
> учесть в школьном дистрибутиве.

Для PPTP кое-что уже сделано:
https://bugzilla.altlinux.org/show_bug.cgi?id=13966
http://fly.osdn.org.ua/~mike/packages/alterator-net-pptp/

Можете сделать аналогичные правки для PPPoE или
продумать/проверить и в багзиллу, а я в пакет засуну.

-- 
 ---- WBR, Michael Shigorin <mike на altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/



Подробная информация о списке рассылки Sysadmins