вторник, 27 июля 2010 г.

Настройка PPPoE в Debian

Настройка проводилась на примере провайдера ЮТК в г. Аксай.
Конфигурация не обязана полностью соответствовать для других провайдеров.

Прописываем новое соединения в /etc/network/interfaces:
auto donpac
iface donpac inet ppp
        provider donpac
        preup /sbin/ifup eth1
Здесь обратить внимание:
eth1 - интерфейс, через который производится дозвон;
donpac - имя провайдера, которое используется вдругих конфигурационных файлах
Прописываем авторизационные данные в файле /etc/ppp/pap-secrets:
mylogin   *       mypassword
Далее создаем файл /etc/ppp/peers/donpac следующего содержания:
user ao250_5052490
pty "/usr/sbin/pppoe -I eth1 -T 80 -m 1452"
noipdefault
usepeerdns
defaultroute
hide-password
lcp-echo-interval 20
lcp-echo-failure 3
connect /bin/true
noauth
persist
mtu 1492
noaccomp
default-asyncmap
Есть вариант установки соединения также на уровне ядра. Для этого необходимое добавить модуль pppoe в файл /etc/modules и отредактировать файл конфигурации:
user mylogin
#pty "/usr/sbin/pppoe -I eth1 -T 80 -m 1452"
plugin rp-pppoe.so eth1
noipdefault
usepeerdns
defaultroute
hide-password
lcp-echo-interval 20
lcp-echo-failure 3
#connect /bin/true
noauth
persist
mtu 1492
noaccomp
default-asyncmap
Запускается соединение командой ifup donpac.
Замечено, что когда теряется соедидение при ядерной конфигурации, то процесс pppd просто выходит достигнув определенного числа реконнектов.
Jul 27 17:03:44 gwhome pppd[1916]: No response to 3 echo-requests
Jul 27 17:03:44 gwhome pppd[1916]: Serial link appears to be disconnected.
Jul 27 17:03:44 gwhome pppd[1916]: Connect time 65.4 minutes.
Jul 27 17:03:44 gwhome pppd[1916]: Sent 222523906 bytes, received 436843921 bytes.
Jul 27 17:03:50 gwhome pppd[1916]: Connection terminated.
Jul 27 17:03:50 gwhome pppd[1916]: Modem hangup
Jul 27 17:04:55 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:06:00 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:07:05 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:08:10 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:09:15 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:10:20 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:11:25 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:12:30 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:13:35 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:14:40 gwhome pppd[1916]: Timeout waiting for PADO packets
Jul 27 17:14:40 gwhome pppd[1916]: Exit.
Как костыль написал скрипт и поставил в крон:
#!/bin/bash

myprovider=donpac

if [[ -z "$(pidof pppd)" ]] ; then
        /sbin/ifdown $myprovider
        /sbin/ifup $myprovider
fi
По идее это решается параметром maxfail 0, но я встречал упоминания, что это не рекомендуется делать.

Комментариев нет:

Отправить комментарий