Установка и настройка модемов 3G USB

Материал из ALT Linux Wiki

Установка и настройка 3G USB модемов Huawei

Есть несколько путей:

  1. использовать штатные средства NetworkManager
  2. настраивать дозвон через wvdial, kppp или что вам нравится самостоятельно
  3. использовать программу, поставляемую Мегафоном со своими модемами. Использование этого пути позволяет избежать ненужных телодвижений для проверки баланса счета. Решение тестировалось на SimplyLinux
  4. использовать etcnet

В большинстве случаев ничего настраивать не надо - достаточно установить пакеты usb_modeswitch (вариант usb-modeswitch) и зависимые от него, в некоторых дистрибутивах udev-extras.

Чаще всего и их устанавливать не надо, 
 т.к. всё необходимое уже установлено и работтает из коробки.
Достаточно настроить работу модема через NetworkManager. 

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

Установка и настройка 3G USB модемов Huawei 1550

Нам потребуется установить 2 пакета

udev-extras usb_modeswitch-0.9.5-2.6 (или usb-modeswitch) или выше

Оба они присутствуют в репозитариях Пятой платформы.

После установки пакетов правим файл /etc/usb_modeswitch.conf

Добавляем:

######################################################## 
# Huawei E1550
# 
# Contributor: Bogomips

DefaultVendor= 0x12d1
DefaultProduct= 0x1446

MessageContent="55534243000000000000000000000011060000000000000000000000000000"
MessageEndpoint=0x01
CheckSuccess=5

Все другие подобные строки необходимо закомментировать, используя символ «;»

Добавляем правило udev, создавая файл /etc/udev/rules.d/45-huawei-e1550.rules

Содержимое файла:

ACTION=="add" SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/usr/sbin/usb_modeswitch"

Теперь модем определяется lsusb:

Bus 005 Device 002: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem

Важно! В строке определения должно быть именно 1001 — это код собственно модема, а не виртуального CD с софтом под Win&Mac OS

Готовые настройки MegaFon USB-модем Huawei E1750.

1. Создаем файл 45-huawei-e1750.rules

# touch /etc/udev/rules.d/45-huawei-e1750.rules

2. Правим его и добавляем в него данные

# leafpad /etc/udev/rules.d/45-huawei-e1750.rules

ACTION=="add" SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/usr/sbin/usb_modeswitch"


3. Добавляем данные в файл usb_modeswitch.conf

 # leafpad /etc/usb_modeswitch.conf
########################################################
DefaultVendor=0x12d1
DefaultProduct=0x1446
TargetVendor=0x12d1
TargetProduct=0x1001
DetachStorageOnly=30
HuaweiMode=3
MessageContent="55534243000000000000000000000011060000000000000000000000000000"

Настройка ZTE MF-180

Применительно к модему ZTE mf-180 от МТС: прежде всего надо отучить устройство называть себя CD-ROM’ом — например, с помощью minicom (от имени root):

  • minicom -s
  • выбираем из списка: Настройка последовательного порта, далее жмём A и прописываем /dev/ttyUSB0 (может быть на USB1, USB2)
  • модем должен инициализироваться, затем командой at+zcdrun=8 выключаем сидиром
  • если нужно вернуть всё как было, то at+zcdrun=9 включает сидиром

Ну а после можно воспользоваться kppp для подключения собственно модема.

Настройки соединения:

  • имя: beeline
  • номер: _*99#_
  • ip: динамический
  • шлюз: по умолчанию
  • DNS-серверы: автоматически

Настройки модема:

  • имя модема: motorola
  • устройство модема: скорее всего будет /dev/ttyUSB2
  • управление потоком: аппаратное
  • окончание строки: CR/LF
  • команды модема: в строке инициализации 1 пишем AT+CGDCONT=1,"ip","internet.beeline.ru"

Настройки для etcnet

в каталоге /etc/net/ifaces/ppp1: (последняя цифра может меняться, в зависимостри от номера интерфейса)

options

TYPE=ppp
ONBOOT=yes
PPPTYPE=dialup
RESTORE_DEFAULTROUTE=yes

pppconnect

TIMEOUT         5
#ECHO            ON
ABORT           '\nBUSY\r'
ABORT           '\nERROR\r'
ABORT           '\nNO ANSWER\r'
ABORT           '\nNO CARRIER\r'
ABORT           '\nNO DIALTONE\r'
ABORT           '\nRINGING\r\n\r\nRINGING\r'
''              \rAT
TIMEOUT         12
SAY             "Press CTRL-C to close the connection at any stage!"
SAY             "\nSetting up...\n"
OK              ATE1
SAY             "\ndefining PDP context...\n"
OK              'AT+CGDCONT=1,"IP","internet.mts.ru"'
OK              ATD*99#
TIMEOUT         22
SAY             "\nwaiting for connect...\n"
CONNECT         ""
SAY             "\nConnected."
SAY             "\nIf the following ppp negotiations fail,\n"
SAY             "try restarting the phone.\n"

pppoptions

lcp-echo-failure 0
lcp-echo-interval 0
/dev/ttyUSB0
debug
noipdefault
ipcp-accept-local
defaultroute
usepeerdns
novj
nobsdcomp
novjccomp
nopcomp
noaccomp
nodeflate
noauth
user "mts"
password "mts"
receive-all
nolog

Примечание

1. Рецепт годен и для Huawei E150. Эти модели различаются только тем, что у модели E150 нет слота для Micro SD, а у E1550 есть. В остальном модемы аналогичны.

2. Рецепт годен и для аналогичных модемов от MTC и Билайна.

3. С большой вероятностью, этот-же рецепт годен и для модемов других операторов этих-же моделей, а так-же близким к ним моделей, например Huawei E1750 и т. п.

4. Решение тестировалось на модеме Huawei E150 от МТС, и E1550 от Мегафон в дистрибутивах Пятой платформы.


См. также

http://ru.gentoo-wiki.com/wiki/Модем_Flyer_U12

http://www.draisberghof.de/usb_modeswitch/

Ссылки