LINUX.ORG.RU
решено ФорумAdmin

pptp-linux автопереподключение.


0

1

Всем привет.
Кто как решает проблему автоматического переподключения pptp?
У меня pptp подключен через pptp-linux.
Писал скрипт на перле, пихал его в крон, не пашет.
Сам скрипт пашет, а вот когда в кроне, не работает, ошибки сыпятся.

Ответ на: комментарий от uspen

Если вы имеете ввиду /etc/ppp/options.pptp, то туда я добавлял. Вот содержимое этого файла:

lock
noauth
refuse-pap
refuse-eap
refuse-chap
refuse-mschap
nobsdcomp
nodeflate
persist
maxfail 0
К великому сожалению - не переподключается.

Опишу подробнее, как создано подключение: в директории /etc/ppp/peers файл deslan следующего содержания:

name UserName
-pap
+chap
noauth
nobsdcomp
nodeflate
persist
debug
usepeerdns
Где UserName - имя пользователя.

Содержимое файла /etc/ppp/chap-secrets :

UserName * Password *
Где UserName - имя пользователя, Password - пароль.

файл скрипта /usr/local/bin/deslan_inet с нижеследующим содержанием:

#!/bin/bash

MY_GW="192.168.12.254"
VPN_SERVER="192.168.100.201"

start(){
echo "Starting VPN..."

/sbin/modprobe ipip
/sbin/modprobe ip_gre
echo "Modules were started"
/sbin/ip route add 192.168.0.0/16 via ${MY_GW}
echo "Route to local network was added"
/sbin/ip route add ${VPN_SERVER} via ${MY_GW}
echo "Route to VPN-server was added"
/usr/sbin/pptp ${VPN_SERVER} call deslan && \
echo "PPTP started"
sleep 10
/sbin/ip route delete default
echo "Old default route was deleted"
/sbin/ip route add default dev ppp0
echo "New default route was added"
echo "OK"
}

stop(){
/usr/bin/killall -9 /usr/sbin/pptp
/sbin/ip route delete ${VPN_SERVER} > /dev/null 2>&1
/sbin/ip route delete 192.168.0.0/16 via ${MY_GW}
/sbin/ip route delete default
/sbin/ip route add default via ${MY_GW}
echo "Old default route recovered"
}

case "$1" in
start)
        start
        ;;
stop)
        stop
        ;;
*)
        echo "usage: $0 start|stop "
        ;;
esac

Выдергиваю кабель, включаю обратно, и не переподключается, вот лог: http://pastebin.com/TXztgkBq

peektoseen
() автор топика

config_ppp0=«ppp»
username_ppp0='pinkbyte'
link_ppp0=«pty 'pptp vpn --nolaunchpppd --loglevel 0'»
pppd_ppp0=(
«lcp-echo-interval 15»
«lcp-echo-failure 3»
«lock»
«holdoff 10»
«defaultroute»
)

при разрыве(по истечении таймаута передачи 3 LCP-пакетов) переподключается через 10 секунд(параметр holdoff)

Дистр - гента

Pinkbyte ★★★★★
()
Ответ на: комментарий от Galant

Попробовал в peers добавить, тоже-самое, не переподключается. в логах подряд (с ужасной скоростью) идут сообщения : pppd[10692]: Failed to open /dev/pts/4: No such file or directory pppd[10692]: last message repeated 897144 times

peektoseen
() автор топика
Ответ на: комментарий от Galant

Отлично. Вроде как заработало. Но как в этом случае работать с маршрутами? Мне нужно изменить маршруты после подключения:

ip route delete default ip route add default dev ppp0

peektoseen
() автор топика
Ответ на: комментарий от peektoseen

это содержимое /etc/conf.d/net. Часть этого может быть перенесена в /etc/ppp/options.pptp или другой соответствующий конфигурационный файл

Pinkbyte ★★★★★
()
Ответ на: комментарий от Galant

replacedefaultroute есть только в патченном ppp, то есть не во всех дистрибутивах

Pinkbyte ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.