Сетевое железо - статьи



         

Linux и интернет через GPRS: теория и практика - часть 3


/dev/ircomm0 # 38400 lock

noipdefault defaultroute usepeerdns

nocrtscts local novj novjccomp # nopcomp # noaccomp asyncmap 20a0000 escape ff

debug kdebug 255
    /etc/ppp/chat-beeline:
   
ABORT BUSY ABORT VOICE ABORT DELAYED ABORT 'NO ANSWER' ABORT 'NO CARRIER' ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE'

#SAY '\n+ resetting modem\n' '' ATZ OK-ATZ-OK 'ATF1'

#SAY '\n+ sending initials\n' OK 'AT+CGATT=0' #SAY '\n' OK 'ATV1E1&D2&C1&K3S0=0S7=255'

#SAY '\n+ configuring APN\n' OK 'AT+CGDCONT=1,"IP","internet.beeline.ru"' OK 'AT+CGQREQ=1,0,0,0,0,0' OK 'AT+CGQMIN=1,0,0,0,0,0'

#SAY '\n+ calling service\n' TIMEOUT 60 OK 'ATDT*99***1#'

#SAY '\n+ waiting connection\n' CONNECT ''

#SAY '\n+ starting connection\n\n'
    /etc/ppp/chat-disconnect-gprs:
   
ABORT BUSY ABORT ERROR ABORT 'NO DIALTONE' TIMEOUT 30

'' '+++\c' #SAY '\n+ sending break\n' '' 'ATH' #SAY '\n+ dropping data connection\n' OK-AT-OK ATZ #OK 'AT+CGATT=0' #SAY '\n+ disconnecting from GPRS\n' OK-AT-OK '\c' #SAY '\n+ disconnected\n'

Теоретически, этого достаточно, чтобы, при включенном пакете GPRS-услуг на BeeLine, пользоваться GPRS-интернетом.

    [root@host:~]$ pppd call beeline

Однако, практика оказалась несколько не столь радужной.

Так уж получилось, что сотовые телефоны Alcatel 535 и 735 рассчитаны на работу с ик-адаптерами версии 2.0 (USB Tekram IRmate IR-410 и аналогичными), а не 1.1 (который 210). И вот… Соединение установилось, и заткнулось.

Как бы сильно того мне не хотелось, «что и как» пришлось экспериментальным путем выяснять в Windows.

Там-то это оказалось просто: чтобы телефон заработал нормально, необходимо, дважды кликнув по иконке ик-адаптера в трее, на вкладке «Режимы» найти параметр «Ограничить скорость ИК-соединения» и выставить его в 38,4 кбит/сек.

Где это указать в Linux? Недельный поиск в Google, чтение документации по IrDA, просмотр исходников — ничего не дало. Пока, однажды, на одном из форумов, посвященом мобильникам, не был дан совет выполнить перед запуском irattach такую вот команду:

[root@host:~]# echo 38400 > /proc/sys/net/irda/max_baud_rate

Посмотрев, что же там записано по умолчанию, я немножко так удивился: стояло даже не 115,2 кбит/сек, а 16 Мбит/сек!!! Вот это я понимаю, вот это скорости!

Как бы то ни было, записав в эту переменную нужное мне ограничение в 38400, случилось чудо! Все прекрасно заработало!

Вот с тех самых пор, с холодного зимнего 10-го январьского вечера 2004 года и появился дома в Linux интернет.

А чтобы не набирать эту команду каждый раз при загрузке, добавил ее скрипт /etc/init.d/irda в секцию start перед вызовом irattach.

PS: Все вышеизложенное справедливо практически для всех сотовых телефонов, за исключением той самой неполной совместимости по версии протокола IrDA.




Содержание  Назад