научитесь спрашивать гуугл.
тема очень широко рассматривалась не раз и не два.
01.10.2008 в 14:24 — Marej
2 Алексей #NiX Горячев очень просто (рассказываю на примере корбины):
1) #aptitude install ppp pptp mc
2) mcedit /etc/ppp/
Lock
noauth
#шифрование использовать по необходимости
#refuse-eap
#refuse-chap
#refuse-mscha
nobsdcomp
nodeflate
persist - восстановление соединения после обрыва
3) mcedit /etc/ppp/chap-secrets
имя_пользователя имя_подключения пароль *
если используешь домен, то пишем так
ДОМЕН\\имя_пользователя имя_подключения пароль *
имя подключения может быть произвольным. Пароль пользователя хранится не в зашифрованном виде, поэтому что бы себя хоть как-то обезопасить, нужно выполнить следующее:
#chmod 600 /etc/ppp/chap-secrets
4) cd /etc/ppp/
#mkdir peers
#cd peers
*если таковой нет.
5) Создай в этой папке файл с названием "corbina" и заполни его:
и не забудь добавить в файл /etc/ dns имена прова:
nameserver 195.14.50.1
nameserver 195.14.5021
01.10.2008 в 15:11 — Алексей
Спасиб.
Такой еще вопрос: необходимо организовать шлюз. Т.е. при падении соединения подключатца вновь. Как организовать?
01.10.2008 в 19:54 — Marej
или прокси ставь (сквид к примеру) или iptables расшаривай соединение.
01.10.2008 в 22:41 — Сергей
> Такой еще вопрос: необходимо организовать шлюз. Т.е. при падении соединения подключатца вновь. Как организовать?
Необходимо писать мегаскрипт на мегаязыке Баш (ну или Ш :) ). Смысл скрипта, например, чёта пингать и если не пингаеца переподключаца ))
01.10.2008 в 23:12 — Marej
на хуя? написал же: persist - восстановление соединения после обрыва
02.10.2008 в 12:01 — Алексей
Marej M03r Gordeev, запросто возможен такой момент: соединение не порвалось, а пинги не ходят. Необходимо рвать\подключать соединение скриптом или руками. Вот собственно в этом и проблема.
02.10.2008 в 13:34 — Marej
ну тогда по крону выстави скрипт на разрыв-соединение.
02.10.2008 в 13:35 — Marej
там даже не скрипт, а 2 команды получится)
02.10.2008 в 15:13 — Алексей
А спешл фор бегинерс можна скрипт?
02.10.2008 в 15:58 — Marej
что?
02.10.2008 в 16:07 — Алексей
Можно поподробнее?)
02.10.2008 в 19:27 — Marej
что именно? как в крон прописывать команды? о_О
03.10.2008 в 15:10 — Алексей
Как определить скриптом что пинг не идет и исходя из этого poff privider?
03.10.2008 в 19:58 — Marej
а зачем определять? делай poff каждый н-часов, и pon. - это гораздо проще.
03.10.2008 в 20:01 — Marej
#!/usr/local/bin/bash
testip="Какой-нибудь DNS"
kol=$(/sbin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
echo "Нет пинга, Ждём 1 минуту" | logger -t NOPING
sleep 60
kol=$(/sbin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
echo "Выполнение своего скрипта. Убиваем все PPPoE соединения, прибиваем default'овый маршрут и запускаем скрипт соединения с провом заново." | logger -t NOPING
exit 0
fi
fi
Комментарии
научитесь спрашивать гуугл.
тема очень широко рассматривалась не раз и не два.
2 Алексей #NiX Горячев очень просто (рассказываю на примере корбины):
1) #aptitude install ppp pptp mc
2) mcedit /etc/ppp/
Lock
noauth
#шифрование использовать по необходимости
#refuse-eap
#refuse-chap
#refuse-mscha
nobsdcomp
nodeflate
persist - восстановление соединения после обрыва
3) mcedit /etc/ppp/chap-secrets
имя_пользователя имя_подключения пароль *
если используешь домен, то пишем так
ДОМЕН\\имя_пользователя имя_подключения пароль *
имя подключения может быть произвольным. Пароль пользователя хранится не в зашифрованном виде, поэтому что бы себя хоть как-то обезопасить, нужно выполнить следующее:
#chmod 600 /etc/ppp/chap-secrets
4) cd /etc/ppp/
#mkdir peers
#cd peers
*если таковой нет.
5) Создай в этой папке файл с названием "corbina" и заполни его:
pty "pptp --nolaunchpppd"
сonnect /bin/true
name имя_пользователя
remotename имя_подключения
file /etc/ppp/
ipparam corbina
имя_пользователя такое же как и в chap-secrets
имя_подключения такое же как и в chap-secrets
#pon corbina - start сonnect
#poff corbina - stop сonnect
если соединение будет падать, то добавь файл с маршрутами в /etc/ppp/ip-up.d, например "corbina"
#Роутинг до VPN
route add -host 195.14.40.6 gw шлюз
route add -host 195.14.40.7 gw шлюз
route add -host 195.14.40.8 gw шлюз
route add -host 195.14.40.9 gw шлюз
route add -host 195.14.40.13 gw шлюз
route add -host 195.14.40.14 gw шлюз
route add -host 195.14.40.15 gw шлюз
#Роутинг до DNS
route add -host 195.14.50.1 gw шлюз
route add -host 195.14.50.3 gw шлюз
route add -host 195.14.50.21 gw шлюз
#Роутинг до локальных ресурсов
route add -net 10.0.0.0 netmask 255.0.0.0 gw шлюз
route add -net 85.21.79.0 netmask 255.255.255.0 gw шлюз
route add -net 85.21.90.0 netmask 255.255.255.0 gw шлюз
route add -host 85.21.52.254 gw шлюз
route add -host 195.14.50.26 gw шлюз
route del default
route add default dev ppp0
и не забудь добавить в файл /etc/ dns имена прова:
nameserver 195.14.50.1
nameserver 195.14.5021
Спасиб.
Такой еще вопрос: необходимо организовать шлюз. Т.е. при падении соединения подключатца вновь. Как организовать?
или прокси ставь (сквид к примеру) или iptables расшаривай соединение.
> Такой еще вопрос: необходимо организовать шлюз. Т.е. при падении соединения подключатца вновь. Как организовать?
Необходимо писать мегаскрипт на мегаязыке Баш (ну или Ш :) ). Смысл скрипта, например, чёта пингать и если не пингаеца переподключаца ))
на хуя? написал же: persist - восстановление соединения после обрыва
Marej M03r Gordeev, запросто возможен такой момент: соединение не порвалось, а пинги не ходят. Необходимо рвать\подключать соединение скриптом или руками. Вот собственно в этом и проблема.
ну тогда по крону выстави скрипт на разрыв-соединение.
там даже не скрипт, а 2 команды получится)
А спешл фор бегинерс можна скрипт?
что?
Можно поподробнее?)
что именно? как в крон прописывать команды? о_О
Как определить скриптом что пинг не идет и исходя из этого poff privider?
а зачем определять? делай poff каждый н-часов, и pon. - это гораздо проще.
#!/usr/local/bin/bash
testip="Какой-нибудь DNS"
kol=$(/sbin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
echo "Нет пинга, Ждём 1 минуту" | logger -t NOPING
sleep 60
kol=$(/sbin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
echo "Выполнение своего скрипта. Убиваем все PPPoE соединения, прибиваем default'овый маршрут и запускаем скрипт соединения с провом заново." | logger -t NOPING
exit 0
fi
fi
Вот как-то так, к примеру :)