Настройка 3G-модемов компании «Мегафон»

Для Debian 6 (Squeeze) не актуально, работает из "коробки": переключение в режим «Модем» происходит как при вставке модема в порт USB, так и при включении питания компьютера с вставленным модемом. В Debian 7 (Wheezy) нужно вставлять модем при работающей системе, неважно консоль это или X.

С помощью ПО от производителя

Для активации модемной части, поддержки USSD-запросов, статистики и самого сетевого подключения можно использовать собственную программу Mobile Partner, которая находится в самом устройстве, определяемый как «CD-ROM»:

$ dmesg
...
[  125.879972] scsi 13:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31 PQ: 0 ANSI: 2
[  125.880844] scsi 14:0:0:0: Direct-Access     HUAWEI   SD Storage       2.31 PQ: 0 ANSI: 2
...

Устанавливаем программу. Точка монтирования по метке устройства «CD-ROM»:

/media/MegaFon Internet$ ./install_linux

Ждём - 10-30 секунд. Далее всплывает терминальное окно установщика программы и вводим:

/usr/local

Далее вытащите модем из порта и снова вставьте его. Запуститься программа "Megafon Internet", теперь модем работает. Осталось только позвонить.

Особенности работы

На это ПО часто жалуются что оно не всегда срабатывает и может рвать соединение, поэтому лучше пользоваться вариантом с usb_modeswitch.

При помощи usb_modeswitch

Этот способ дан для ознакомления с принципами настройки утилиты usb_modeswitch.
Установить пакеты usb-modeswitch, usb-modeswitch-data. Добавить следующие строки в /etc/usb_modeswitch.conf:

Мegafon 3G Modem E1750

########################################################
# Мegafon 3G Modem E1750
# Use device /dev/ttyUSB0 for connecting 
DefaultVendor= 0x12d1
DefaultProduct= 0x1446
MessageContent="55534243000000000000000000000011060000000000000000000000000000"
MessageEndpoint=0x01
CheckSuccess=5

Мegafon 3G Modem E1550

########################################################
# Мegafon 3G Modem E1550
# Use device /dev/ttyUSB0 for connecting 
DefaultVendor=0x12d1
DefaultProduct=0x1446
MessageContent="55534243123456780000000000000011060000000000000000000000000000"
MessageEndpoint=0x01
CheckSuccess=5

Выполнить:

# usb_modeswitch -c /etc/usb_modeswitch.conf

Через пару секунд usb_modeswitch сообщит об успешной отправке сообщения (та самая «?MessageContent»). Проверяем активацию модемной части устройства:

$ lsusb
...
Bus 003 Device 006: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem
...

и создание последовательных портов ttyUSB0-2:

$ dmesg
...
[  354.709219] USB Serial support registered for GSM modem (1-port)
[  354.709317] option 3-1:1.0: GSM modem (1-port) converter detected
[  354.709442] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB0
[  354.709461] option 3-1:1.1: GSM modem (1-port) converter detected
[  354.709537] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB1
[  354.709553] option 3-1:1.2: GSM modem (1-port) converter detected
[  354.709643] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB2
[  354.709677] usbcore: registered new interface driver option
[  354.709681] option: v0.7.2:USB Driver for GSM modems
...

Далее набрать в KPPP имя порта модема (ttyUSB0), скорость порта (выбрать максимальную), строку инициализации (AT+CGDCONT=1,"IP","internet"),номер телефона (*99#), логин (gdata), пароль (gdata). Вместо KPPP или GNOME-PPP, можно использовать network-manager 0.8 или консольный wvdial.

Содержимое /etc/wvdial.conf для модема

[Dialer Defaults]
Init= AT+CGDCONT=1,"IP","internet"
Modem = /dev/ttyUSB0
Phone = *99#
Password = gdata
Username = gdata

Автоматизировать процесс переключения данных устройств в режим модема можно прописав запуск usb_modeswitch в /etc/rc.local. Его содержимое должно быть таким:

usb_modeswitch -c /etc/usb_modeswitch.conf

Дополнение

Данное решение можно перенести на любой другой модем от этой компании, вопрос стоит лишь в правильной строке инициализации «?MessageCоntent», коде разработчика «?DefaultVendor» и «?DefaultProduct» - устройстве, которое опознаётся по умолчанию при вставке модема в USB-порт, два последних можно найти в выводе «lsusb»:

...
Bus 003 Device 019: ID 12d1:1446 Huawei Tech.
...

0x12d1 и 0x1446 - это «?DefaultVendor» и «?DefaultProduct».

«?MessageCоntent» можно поискать в англоязычной части Интернет.