From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-POP-User: dkozachenko.hostopia.com From: "Alexandr R. Ogurtzoff" Organization: Hostopia To: community@altlinux.ru Subject: Re: [Comm] callback =?windows-1251?b?6uDq?= =?windows-1251?b?IO/u5Orr/vfo8vzx/w==?= Date: Thu, 13 Jan 2005 07:15:50 +0200 User-Agent: KMail/1.7.1 References: <1786999578.20050112153226@localhost.localdomain> In-Reply-To: <1786999578.20050112153226@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="windows-1251" Content-Transfer-Encoding: 8bit Content-Disposition: inline Message-Id: <200501130715.50907.aogurtsov@hostopia.com> X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: community@altlinux.ru List-Id: Mailing list for ALT Linux users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jan 2005 05:16:05 -0000 Archived-At: List-Archive: List-Post: On Wednesday 12 January 2005 15:32, max wrote: > Здравствуйте, community. > Подскажите пожалуйста как настроить и запустить callback для > Dial-up. Прочитал howto но толком не понял. > ifup ppp0 работает замечательно, хотелось бы аналогичного с > callback. По идее callback "живёт" нынче уже в настройках kppp 1,5 года назад этого не было. Меня спасла настройка консольного дозвонщика. Инструкцию прилагаю, пробуйте,ногрантировать результат не могу очень уж многое в этом вопросе зависит от сервисов провайдера. Подключение к Интернет у провайдера с PAP авторизацией и поддержкой обратного дозвона CallBack по протоколу CBCP Описаный ниже способ не претендует на оптимальность. Но обеспечивает соединение и работает. Система Мастер 2.2 без обновлений. При первоначальной прозвонке к провайдеру pppd осуществляет соединение, производит PAP авторизацию и согласно протоколу CBCP передает телефонный номер по которому должна перезвонить удаленная система. После этого соединение разрывается. Наша система начиная с этого момента ждёт дозвона от узла провайдера, после осущесвления которого и осуществляется собственно соединение, поднятие IP адресов etc. Таким образом должны существовать два сценария поведения демона pppd (chat скрипта) при соединения в таких условиях. Один для исходящего, второй для входящего соединения. А вот тут и начинается самое интересное в дистрибутиве Альт демон pppd собран с поддержкой протокола обратного дозвона в том числе и CBCP, в более ранних версиях дистрибутива пакет похоже назывался pppd-callback. Так вот второй скрипт - ответа на звонок создается автоматически(!) и находится в файле /etc/ppp/callback-client. Протокол обработки обратного звонка регистрируется в событиях netevent и дозвон от провайдера обрабатывается именно этим скриптом. ls -l /etc/ppp/callback-client -rwxr-xr-x 1 root root 211 Apr 19 19:40 /etc/ppp/callback-client cat /etc/ppp/callback-client #!/bin/sh # Script callback-client # Script parameters: delay time in seconds DELAY="$1" /usr/sbin/chat -v -t 2 "" \d+++\d\c OK ATH0 OK sleep $DELAY /usr/sbin/chat -v "" ATZ OK "" RING ATA SAY "RING" CONNECT Мной добавлено только RING ATA SAY "RING" , хотелось видеть что прошел дозвон Дальше создаём файл дозвона к провайдеру /etc/ppp/chat-cbcp ls -l /etc/ppp/chat-cbcp -rwxr-x--- 1 root uucp 586 May 6 14:50 /etc/ppp/chat-cbcp С содержимым типа такого (!)не забудьте в строке ATDT указать номер своего провайдера cat /etc/ppp/chat-cbcp #!/bin/sh #Request for CallbacK # /usr/sbin/chat -v \ TIMEOUT 7 \ ABORT "\nERROR\r" \ ABORT "\nNO DIALTONE\r" \ ABORT "\nBUSY\r" \ ABORT "\nNO ANSWER\r" \ ABORT "\nNO CARRIER\r" \ ABORT "\nLogin incorect\r" \ '' AT \ SAY "Modem Initialization\n" \ 'OK-+++\c-OK' 'ATH0L2M2V1W2X4&c1E1q0' \ SAY "Dialing to ISP\n" \ TIMEOUT 60 \ OK ATDT479700 \ CONNECT '' \ SAY "Connected...\n" \ TIMEOUT 30 \ ogin: \c exit 0 Пишем файл /etc/ppp/options.cbcp ls -l /etc/ppp/options.cbcp -rw-r--r-- 1 root root 103 Apr 12 18:10 /etc/ppp/options.cbcp cat /etc/ppp/options.cbcp noipdefault persist nodetach connect '/etc/ppp/chat-cbcp' user Ваш логин remotename Имя провайдера callback Номер дозвона к вам И наконец создаём скрипт который будет дозваниваться, он очень простой ls -l /etc/ppp/ppp-on-dialer -rwxr-x--- 1 root uucp 116 Apr 12 18:11 /etc/ppp/ppp-on-dialer У меня модем на 33600 поэтому скорость порта я задирать не стал, если у вас модем на 56К, то можете вписать скорость порта 115200 cat /etc/ppp/ppp-on-dialer #!/bin/sh # #Trying connect to ISP for CallBack /usr/sbin/pppd /dev/modem 57600 defaultroute file /etc/ppp/options.cbcp Убедитесь что в файле /etc/ppp/pap-secrets прописана строка вида Ваш логин Имя_провайдера Пароль_у_провайдера права на файл ls -l /etc/ppp/pap-secrets -rw------- 1 root root 26 Apr 11 17:42 /etc/ppp/pap-secrets При коректно настроеной сети всё готово для соединения с провайдером. Да кстати не забудьте. что обратный дозвон у провайдера является отдельной услугой, проконсультируйтесь в службе тех.поддержки провайдера о предоставлении вам таковой. Второй вопрос о том как сделать этот дозвон доступным под пользовательским аккаунтом? Дозваниваться могут пользователи из группы UUCP grep uucp /etc/group uucp:x:14:uucp,iscander,ну и остальные через запятую Права доступа к файлам следующие ls -l /usr/sbin/pppd /dev/modem /dev/ttyS1 lrwxrwxrwx 1 root root 10 Mar 22 11:40 /dev/modem -> /dev/ttyS1 crw-rw---- 1 root uucp 4, 65 May 7 12:14 /dev/ttyS1 -rws--x--- 1 root uucp 218904 Oct 24 2002 /usr/sbin/pppd После этого на рабочем столе пользователя можно создать ссылку на файл /etc/ppp/ppp-on-dialer и запускать соединение одним щелчком. Для индикации работы ppp меня вполне устраивал апплет в gkrelm Эх, были времена :-) Сейчас живу на DSL - много приятнее. Удачи. -- Best regards Alexandr R. Ogurtzoff { UNIX is user friendly, it's just picky about who its friends are }