PDA

Просмотр полной версии : Callback + FreeBSD


korvin
19.11.2007, 21:31
Кто нибудь когда нибудь настраивало calback во FreeBSD ? Желательно через kppp.
У меня он ругается на запрос +callback (illegal options) , или что-то похожее.
Help !!!! Please !!!!
Modem USRobotics 56K Message Modem, внешний.

Daniyar Atadjanov
20.11.2007, 12:01
В Linux + kppp делал так: в свойствах dial-up аккаунта во вкладке "Dial" поменял Callback type с "None" на "User defined" и вбил в активированном поле свой номер телефона.

korvin
20.11.2007, 16:17
У меня он дозванивается провайдеру но потом вылетает с непонятной ошибкой. Потом провайдер перезванивает, но модем не берет трубку.

Artyom Sokolov
20.11.2007, 17:38
Во-первых: лог ошибок в студию
Во-вторых: пробовали запускать kppp от имени root?

Aleksandr Kaplinskiy
13.10.2008, 22:26
++++ взято с opennet.ru

From: Juri Milodanovic <jm@evpatoria.net>
Newsgroups: http://jm.evpatoria.net/pppd-cbcp.html
Subject: Настройка callback в pppd



Настройка callback в pppd
__________________________________________________ _______________

Идея прозвонки к провайдеру, который поддерживает callback,
основывается на использовании chat-скриптов. При первоначальной
прозвонке pppd "просит" провайдера перезвонить, отключается, а затем
модем переходит в режим ожидания ответа. После поступления входящего
звонка устанавливается PPP-соединение. Более подробно о настройке pppd
можно прочитать в статье Игоря Сысоева (http://www.sysoev.ru/pppd/) (http://www.sysoev.ru/pppd/%29),
с которой настоятельно рекомендую ознакомиться.

Для такой прозвонки понадобятся два chat-скрипта. Первый - это скрипт,
который будет запрашивать у удаленной стороны callback. Запишем его в
файл /etc/ppp/chat-cbcp:

#!/bin/sh
#
# Request for callback
#
chat -V -s \
ABORT "ERROR" \
ABORT "NO DIALTONE" \
TIMEOUT 5 \
"" "AT" \
"OK" "ATZ" \
"OK" "ATS7=60\&C0\&D1" \
ABORT "BUSY" \
ABORT "NO ANSWER" \
ABORT "NO CARRIER" \
ABORT "Login incorrect" \
"OK" "ATDT1234567" \
TIMEOUT 30 \
"CONNECT" "\\c" \
TIMEOUT 10 \
"rname:" "\\c"

exit 0

Скрипт должен иметь права доступа 0500 (r-x --- ---). Само собой, что
вместо 1234567 вам необходимо указать телефон своего провайдера. После
того, как дозвонились, удаленная сторона спрашивает "Username:" и
происходит PAP-аутентификация. В этом случае нужно создать файл
/etc/ppp/pap-secrects с правами доступа 0600 (rw- --- ---) и записать
в него ваш логин, название удаленной системы и пароль:

jm my_isp pass627789

Название удаленной системы может быть любым. Что же касается пароля,
то в нем могут использоваться специальные символы, например '#',
который будет рассматриваться как начало комментария. Поэтому такой
пароль необходимо заключить в двойные кавычки:

jm my_isp "pass62#7789"

Если провайдер PAP-аутентификацию не поддерживает, потребуется
небольшая переделка скрипта:

#!/bin/sh
#
# Request for callback
#
chat -V -s \
ABORT "ERROR" \
ABORT "NO DIALTONE" \
TIMEOUT 5 \
"" "AT" \
"OK" "ATZ" \
"OK" "ATS7=60\&C0\&D1" \
ABORT "BUSY" \
ABORT "NO ANSWER" \
ABORT "NO CARRIER" \
ABORT "Login incorrect" \
"OK" "ATDT1234567" \
TIMEOUT 30 \
"CONNECT" "\\c" \
TIMEOUT 10 \
"rname:" "jm" \
"sword:" "pass627789" \
"}" "\\c"

exit 0

Проверьте наличие файла /etc/ppp/options:

modem
crtscts
asyncmap 0

Если pppd находится на этапе отладки, то в него можно еще добавить
строки с параметрами "kdebug 7" и "debug". Обратите внимание, что в
/etc/ppp/options не должно быть параметра "lock"!

Далее необходимо создать файл /etc/ppp/options.cbcp, который должен
содержать следующее:

nodefaultroute
noipdefault
nodetach
nopersist
connect '/etc/ppp/chat-cbcp'
user jm
remotename my_isp
callback 3222232

Единственная задача этого файла - сообщить удаленной системе, по
какому телефону она должна перезвонить. Для этого используется
параметр "callback" с нашим номером телефона.

Если все сделано правильно, то теперь можно позвонить провайдеру и
получить от него входящий звонок (cuaa1 - это, разумеется, имя
устройства, на котором висит наш модем):

/usr/sbin/pppd cuaa1 57600 file /etc/ppp/options.cbcp

Теперь подготовим второй chat-скрипт, который на эти звонки будет
отвечать:

#!/bin/sh
#
# dial for callback
/usr/sbin/pppd cuaa1 57600 file /etc/ppp/options.cbcp

# answering...
chat -V -s \
TIMEOUT 30 \
ABORT "ERROR" \
"RING" ATA \
"CONNECT" "\\c"

if [ "$?" = "0" ]; then
exit 0
fi

exit 1

Не забудьте установить на него права доступа 0500 (r-x --- ---).
Конечно, этот скрипт нуждается в небольшом изменении, если не
используется PAP:

#!/bin/sh
#
# dial for callback
/usr/sbin/pppd cuaa1 57600 file /etc/ppp/options.cbcp

# answering...
chat -V -s \
TIMEOUT 30 \
ABORT "ERROR" \
"RING" ATA \
"CONNECT" "\\c" \
TIMEOUT 10 \
"rname:" "jm" \
"sword:" "pass627789" \
"}" "\\c"

if [ "$?" = "0" ]; then
exit 0
fi

exit 1

В файл /etc/ppp/options.dial запишем параметры, которые нам
действительно нужны для работы:

defaultroute
noipdefault
connect '/etc/ppp/chat-dial'
user jm
remotename my_isp

Добавление в этот файл параметра "persist" позволит восстанавливать
связь в случае ее обрыва и т.п. В конечном итоге, запуск pppd будет
выглядеть так:

/usr/sbin/pppd cuaa1 57600 file /etc/ppp/options.dial

Таким образом получается, что стартовавший pppd запускает pppd еще
один раз, инициируя звонок от провайдера, после чего на него отвечает
и устанавливает PPP-линк.
__________________________________________________ _______________

Юрий Милоданович / Juri Milodanovic
jm@evpatoria.net

Dolphin
14.10.2008, 13:32
Я тоже не смог выстрадать callback под никсом. Модем такой же, хотя пробовал и курьер, и Cirrus и кучу других. pppd пересобирал, скрипты пробовал в трех вариантах, включая самописный, потом плюнул на это дело...

shumbola
14.10.2008, 18:27
Одно время мне приходилось сидет с диалапом, но диалап сервер был можно сказать свой. :-)
Так вот, я там сначала настраивал просто pppd как dialin server, а потом впоследствии перехода АТС на цифру и callback. Работало нормально, клиентами выступали windows 2000/2003, linux. Насколько помню на сервере я устанавливал slackware.

Aleksandr Kaplinskiy
15.10.2008, 20:29
Скрипт который я выложил работал на ТПС, модем COM портовый Tp-Link.

Алишер Рузметов
17.10.2008, 13:12
Странно никогда не было проблем с калбэком на 3-х системах (Убунту, Федя, Слаквара).