Перейти к содержанию

Мобильный интернет в Debian GNU/Linux.


cppmm

Рекомендуемые сообщения

Вот, возможно кому пригодится на будущее, потому как не особо много подобных описаний нашёл в гугле(особенно, по поводу второй части).

Итак, путь первый - выход через мобильный телефон.

У меня Sony Ericsson k320i. usb-шнурок шёл в комплекте. При подключении к компьютеру телефон спрашивает, в каком режиме ему работать: передача файлов или режим телефона. В данном случае выбираем второе. Перед подключением я запустил tail -f /var/log/messages и получил такие строки:

    Feb 10 10:06:51 damned kernel: usb 2-3: new full speed USB device using ohci_hcd and address 3
    Feb 10 10:06:51 damned kernel: usb 2-3: configuration #1 chosen from 1 choice
    Feb 10 10:06:52 damned kernel: cdc_acm 2-3:1.1: ttyACM0: USB ACM device
    Feb 10 10:06:52 damned kernel: cdc_acm 2-3:1.3: ttyACM1: USB ACM device
    Feb 10 10:06:52 damned kernel: usbcore: registered new driver cdc_acm
    Feb 10 10:06:52 damned kernel: drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters

Отсюда видно, что у меня появилось два новых устройства: /dev/ttyACM0 и /dev/ttyACM1. Дальше всё просто:

Создаём файлы настройки pppd(обязательно должен быть установлен пакет ppp).

# cat /etc/ppp/chap-secrets
    mts * mts
# cat /etc/ppp/pap-secrets
    mts * mts
# cat /etc/ppp/options | grep -v "#"
    asyncmap 0
    auth
    crtscts
    lock
    hide-password
    modem
    debug
    proxyarp
    lcp-echo-interval 30
    lcp-echo-failure 4
    noipx
# cat /etc/ppp/peers/mts | grep -v "#"
    user "mts"
    connect "/usr/sbin/chat -v -f /etc/chatscripts/mts"
    /dev/ttyACM0
    noipdefault
    usepeerdns
    defaultroute
    persist
    noauth
# cat /etc/ppp/chat/mts
    ABORT BUSY
    ABORT 'NO CARRIER'
    ""
    ATZ OK
    AT+CGDCONT=1,"IP","internet.mts.ru" OK
    ATDT*99***1#
    CONNECT ""

Как видно, я использую mts. Основные параметры, типа номера дозвона, точки доступа, логина, пароля и т.д., можно узнать у мобильного оператора, так что с этим проблем быть не должно. Что касается того, что у меня продублированы логин с паролем и в chap, и в pap - это потому, что я так и не узнал, какой именно тип авторизации надо использовать, и для верности прописал оба. Хуже не будет. Ну и самое главное - это устройство модема, которое я узнал из messages.

В принципе, всё.

Подключение идёт командой pppd call mts. Я для удобства сделал скриптик:

    #!/bin/bash
    sudo /usr/sbin/pppd call mts

и добавил пользователя в /etc/sudoers, чтобы не логиниться под рутом каждый раз для выхода в инет.

Скорость, конечно, оставляет желать лучшего, но жить можно.

Но постоянно включать/выключать телефон со временем надоедат. Да и ко всему прочему денег много уходит, если пользоваться таким интернетом постоянно, а подключенный мной тариф "Ночной безлимитный" неудобен тем, что работать приходится только ночью. Поэтому было решено купить GPRS-модем.

Путь второй. ZTE MF626 USB Modem.

Тут всё чуть сложнее. Дело в том, что эта замечательная железка, сразу не определилась. В голове промелькнули мысли о пересборке ядра, но как всегда, гугл спас. Довольно быстро нашлась ссылка: http://ru.gentoo-wiki.com/wiki/MF626.

Беглый просмотр не обрадовал. Однако, после прочтения треда, из которого появилась эта статья, стало немного проще.

Сперва, запускаю, как обычно tail -f /var/log/messages и подключаю модем. Как и предсказано в статье, он определяется, как ZeroCD:

    Feb 10 09:17:40 damned kernel: usb 1-1: new high speed USB device using ehci_hcd and address 5
    Feb 10 09:17:40 damned kernel: usb 1-1: configuration #1 chosen from 1 choice
    Feb 10 09:17:40 damned kernel: scsi6 : SCSI emulation for USB Mass Storage devices
    Feb 10 09:17:45 damned kernel: Vendor: ZTE Model: USB SCSI CD-ROM Rev: 2.31
    Feb 10 09:17:45 damned kernel: Type: CD-ROM ANSI SCSI revision: 00
    Feb 10 09:17:45 damned kernel: sr1: scsi3-mmc drive: 0x/52x cd/rw xa/form2 cdda tray
    Feb 10 09:17:45 damned kernel: sr 6:0:0:0: Attached scsi generic sg2 type 5

Если тут же заглянуть в dmesg, видно, что в устройствах он называется /dev/sr1 (на других машинах может быть иначе). Пробую eject /dev/sr1.

В messages вижу следующее:

    Feb 10 09:19:57 damned kernel: usb 1-1: USB disconnect, address 5
    Feb 10 09:20:02 damned kernel: usb 1-1: new high speed USB device using ehci_hcd and address 6
    Feb 10 09:20:02 damned kernel: usb 1-1: configuration #1 chosen from 1 choice
    Feb 10 09:20:02 damned kernel: scsi7 : SCSI emulation for USB Mass Storage devices
    Feb 10 09:20:07 damned kernel: Vendor: ZTE Model: MMC Storage Rev: 2.31
    Feb 10 09:20:07 damned kernel: Type: Direct-Access ANSI SCSI revision: 02
    Feb 10 09:20:07 damned kernel: sd 7:0:0:0: Attached scsi removable disk sdb
    Feb 10 09:20:07 damned kernel: sd 7:0:0:0: Attached scsi generic sg2 type 0

Т.е. выходит, что всё определилось без пересборки ядра или изменений внутренних настроек модема, предложенных в статье. В очередной раз говорю про себя "спасибо" разработчикам debian(а меня только недавно на gentoo сманивали).

Смотрим, как именно определилось с помощью cat /proc/bus/usb/devices

 T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 6 Spd=480 MxCh= 0
    D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
    P: Vendor=19d2 ProdID=0031 Rev= 0.00
    S: Manufacturer=ZTE, Incorporated
    S: Product=ZTE CDMA Technologies MSM
    S: SerialNumber=1234567890ABCDEF
    C:* #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=500mA
    I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=none
    E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
    I: If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=none
    E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
    I: If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
    E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    I: If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=none
    E: Ad=84(I) Atr=03(Int.) MxPS= 64 Ivl=2ms
    E: Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms

Устройство мы видим, но драйвер ещё не подгружен.

Подгружаю: modprobe usbserial vendor=0x19d2 product=0x031

Параметры vendor и product указаны в выводе предыдущей команды. В принципе, для данного модема они есть и в статье с гентушной вики.

В messages видно, что устройства создались:

Feb 10 09:43:00 damned kernel: usbcore: registered new driver usbserial
    Feb 10 09:43:00 damned kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
    Feb 10 09:43:00 damned kernel: usbserial_generic 1-1:1.0: generic converter detected
    Feb 10 09:43:00 damned kernel: usb 1-1: generic converter now attached to ttyUSB0
    Feb 10 09:43:00 damned kernel: usbserial_generic 1-1:1.1: generic converter detected
    Feb 10 09:43:00 damned kernel: usb 1-1: generic converter now attached to ttyUSB1
    Feb 10 09:43:00 damned kernel: usbserial_generic 1-1:1.3: generic converter detected
    Feb 10 09:43:00 damned kernel: usb 1-1: generic converter now attached to ttyUSB2
    Feb 10 09:43:00 damned kernel: usbcore: registered new driver usbserial_generic
    Feb 10 09:43:00 damned kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core

Отлично. В статье(и особенно в исходном треде) много говорилось про сложности работы с этими устройствами, однако для меня оказалось важным только одно: для основной работы используется именно третий интерйес, т.е. /dev/ttyUSB2.

Поэтому в настройках pppd создаю такой файл:

# cat /etc/ppp/peers/mts_modem | grep -v "#"
    user "mts"
    connect "/usr/sbin/chat -v -f /etc/chatscripts/mts"
    /dev/ttyUSB2
    noipdefault
    usepeerdns
    defaultroute
    persist
    noauth

Все остальные настройки совершенно такие же, как и при подключении через телефон.

Всё. Готово. Теперь, скомандовав pppd call mts_modem, я оказываюсь в интернете. Никаких проблем с разрывами соединения, описанных в статье, у меня не было. Поэтому и окончательное доведение до ума вышло проще. Достаточно ограничиться созданием правил в udev(обращаю внимание, что правила немного отличаются от приведённых в статье):

# cat /etc/udev/rules.d/z80_usb_modem.rules

    SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2000", RUN+="/usr/bin/eject /dev/sr1"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", RUN+="/sbin/modprobe usbserial vendor=0x19d2 product=0x031"

И изменении в скрипте для запуска инета mts на mts_modem.

Система: Debian GNU/Linux Etch 4.0r6

# uname -a
Linux damned 2.6.18-6-k7 #1 SMP Fri Dec 12 17:19:09 UTC 2008 i686 GNU/Linux
Ссылка на комментарий
Поделиться на другие сайты

  • 5 месяцев спустя...

Благодарю за руководство.

Только у меня проблема, выполняю все по порядку,

только я удалил из прошивки CD_STARTUP_FLAG, и необходимость в eject /dev/sr1 отпала.

выполняю команду pppd call mts_modem, никаких ошибок не выдает, а интернета все равно нет.

uname -aLinux Debian 2.6.26-2-686 #1 SMP Thu Mar 26 01:08:11 UTC 2009 i686 GNU/Linux
Ссылка на комментарий
Поделиться на другие сайты

Что пишет в логах pppd(скорее всего они складываются в /var/log/messages)? Весь лог выкладывать не надо, нужны только сообщения pppd.

Ссылка на комментарий
Поделиться на другие сайты

cppmm

У меня такой же телефон SE K320i. Хотел уточнить, изменилось ли качество связи в лучшую сторону после перехода на модем.

С удобством вроде проблем не возникает. Телефон всегда под рукой, во всяком случае в зоне действия bluetooth.

knight

Если pppd не пишет в логах никаких ошибок, то соединение, скорее всего, установилось. Посмотрите сообщение команды pppstats, и если ppp соединение действительно установлено, то смотрите маршрутизацию.

Ссылка на комментарий
Поделиться на другие сайты

gogi писал(а) Wed, 22 July 2009 18:15

cppmm

У меня такой же телефон SE K320i. Хотел уточнить, изменилось ли качество связи в лучшую сторону после перехода на модем.

С удобством вроде проблем не возникает. Телефон всегда под рукой, во всяком случае в зоне действия bluetooth.

Нет, качество связи не изменилось.

Просто я, когда это всё настраивал, пользовался интернетом не один, а при использовании телефона, если меня с телефоном нет дома, то нет там и интернета. Smile

Ссылка на комментарий
Поделиться на другие сайты

cppmm писал(а) Wed, 22 July 2009 19:42

Нет, качество связи не изменилось.

Просто я, когда это всё настраивал, пользовался интернетом не один, а при использовании телефона, если меня с телефоном нет дома, то нет там и интернета. Smile

Спасибо за информацию.

Я мобильным инетом на даче и в поездках пользуюсь. Скорость более менее утраивает, а вот время отклика утомляет, особенно в ssh. Smile

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

gogi писал(а) Wed, 22 July 2009 19:15

cppmm

У меня такой же телефон SE K320i. Хотел уточнить, изменилось ли качество связи в лучшую сторону после перехода на модем.

С удобством вроде проблем не возникает. Телефон всегда под рукой, во всяком случае в зоне действия bluetooth.

knight

Если pppd не пишет в логах никаких ошибок, то соединение, скорее всего, установилось. Посмотрите сообщение команды pppstats, и если ppp соединение действительно установлено, то смотрите маршрутизацию.

pppstats

pppstats: nonexistent interface 'ppp0' specified

kppp не видит модем

при выводе команда ifconfig устройства ppp0 нет

Ссылка на комментарий
Поделиться на другие сайты

Цитата:

при выводе команда ifconfig устройства ppp0 нет

pppd должен был создать интерфейс

0) посмотрите внимательно,не скопировали ли вы бездумно опечатку в названиях файлов

Цитата:

# cat /etc/ppp/peers/mts | grep -v "#"

...

connect "/usr/sbin/chat -v -f /etc/chatscripts/mts" - одно имя

...

# cat /etc/ppp/chat/mts - указано другое имя

...

1) посмотрите ifconfig -a

2) попробуйте поднять интерфейс pon mts

3) если надоест смотреть логи, настройте wvdial.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...