Установка и настройка модемов 3G USB
В большинстве случаев ничего настраивать не надо — достаточно установить пакет usb-modeswitch и зависимые от него (например, usb-modeswitch-data ), в некоторых дистрибутивах также udev-extras .
Чаще всего и их устанавливать не надо, т.к. всё необходимое уже установлено и работает из коробки. Достаточно настроить работу модема через NetworkManager.
В данной статье описаны примеры настройки на случай, если что-то не работает — или если требуется более тонкая настройка/автоматизация при помощи etcnet .
Megafon M150-1 (он же Huawei E3276)
Данный модем является 4g модемом со встроенной сетевой картой. Но данная сетевая карта хоть и видится в системе, но не живёт. После подключения модема в системе определяется как Bus 002 Device 006: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
При этом появляется интерфейс wwp0s29u1u2i1
Но попытка сделать его up ни к чему не приводит — после ip link set up dev wwp0s29u1u2i1 он всё равно остаётся wwp0s29u1u2i1: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
Помогает в режиме сетевой карты внести
echo -en 'AT^NDISDUP=1,1,"internet"\r\n' > /dev/ttyUSB0 dhcpcd -i wwp0s29u1u2i1
При необходимости можно от отключить в нём сетевую карту и включить режим обычного модема:
Huawei E1550
Для Пятой платформы нам потребуется установить два пакета (оба присутствуют в репозитариях Пятой платформы):
Для Восьмой и выше дальнейшие действия не требуются.
После установки пакетов в Пятой платформе смотрим файл /etc/usb_modeswitch.conf . Добавляем, если ещё нет:
######################################################## # Huawei E1550 # # Contributor: Bogomips DefaultVendor= 0x12d1 DefaultProduct= 0x1446 MessageContent="55534243000000000000000000000011060000000000000000000000000000" MessageEndpoint=0x01 CheckSuccess=5
Здесь DefaultVendor= 0x12d1 и DefaultProduct= 0x1446 должны соответствовать выдаваемым командой lsusb
Все другие подобные строки необходимо закомментировать, используя символ «;»
Добавляем правило udev, создавая файл /etc/udev/rules.d/45-huawei-e1550.rules с таким содержимым:
ACTION=="add" SUBSYSTEM=="usb", SYSFS=="1446", SYSFS=="12d1", RUN+="/usr/sbin/usb_modeswitch"
После этого модем определяется lsusb как:
Bus 005 Device 002: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem
Для Шестой и выше платформы, ваш модем должен присутствовать в файле /lib/udev/rules.d/40-modeswitch.rules
Важно! В строке определения должно быть именно 1001 — это код собственно модема, а не виртуального CD с софтом под Win&Mac OS
Huawei E1750
(В выводе lsusb может быть виден, например, как 12d1:1446 Huawei Technologies Co., Ltd. HSPA modem .)
- создаем файл 45-huawei-e1750.rules
touch /etc/udev/rules.d/45-huawei-e1750.rules
ACTION=="add" SUBSYSTEM=="usb", SYSFS=="1446", SYSFS=="12d1", RUN+="/usr/sbin/usb_modeswitch"
######################################################## 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-серверы: автоматически
- имя модема: zte
- устройство модема: скорее всего будет /dev/ttyUSB2
- управление потоком: аппаратное
- окончание строки: CR/LF
- команды модема: в строке инициализации 1 пишем AT+CGDCONT=1,"ip","internet.beeline.ru"
Примечание: возможно, так же будет работать ZTE mf-170.
Также для разных модемов от ZTE могут использоваться AT-команды (не проверено):
- AT^U2DIAG=0 (девайс в режиме только модем)
- AT^U2DIAG=1 (девайс в режиме модем + CD-ROM)
- AT^U2DIAG=255 (девайс в режиме модем + CD-ROM + Card Reader)
- AT^U2DIAG=256 (девайс в режиме модем + Card Reader, можно использывать как обычную флешку, отказавшись от установки драйверов модема)
ZTE MF-112
Это модем от МТС, возможно у других компаний тоже есть эта модель Особенности — бывают двух видов: определяющиеся как
Первый — спокойно обрабатывается modeswitch и спокойно работает Второй — приходится отключать CD и картридер После отключения CD и кард-ридера определяется как 19d2:0016
Вот некоторые команды, первые 4 проверены на 19d2:2000. Первые 4 и 10-я команда также работают на 19d2:0016
- ATE1 # просмотр статуса выполненных команд
- AT+ZCDRUN=8 # отключаем автозагрузку USB CD-ROM
- AT+ZCDRUN=9 # включит автозагрузку USB CD-ROM
- AT+ZCDRUN=E # только модем, отключить картридер и автозагрузку USB CD-ROM
- AT+ZCDRUN=F # модем + кардридер + USB CD-ROM
- AT+cfun=0 # выключить модем
- AT+cfun=1 # включить
- AT+CSQ # уровень сигнала сети
- AT+CGMR # версия ПО
- AT+CGSN # IMEI
- AT+CNUM # ваш номер сим
- AT+zsnt? # текущий режим поиска сети
- AT+zsnt=0,0,0 # установить режим поиска сети «автоматически, GSM+WCDMA»
- AT+zsnt=0,0,1 # установить «автоматически, GSM+WCDMA, предпочтительно GSM»
- AT+zsnt=0,0,2 # установить «автоматически, GSM+WCDMA, предпочтительно WCDMA»
- AT+zsnt=1,0,0 # установить «автоматически, только GSM»
- AT+zsnt=2,0,0 # установить «автоматически, только WCDMA»
- AT+zsnt=0,1,0 # установить «вручную, GSM+WCDMA»
- AT+zsnt=1,1,0 # установить «вручную. только GSM»
- AT+zsnt=2,1,0 # установить «вручную, только WCDMA»
- AT+COPS=? # сканируется сеть и выводит список операторов связи
- AT+CPIN? # узнаём, требуется ли вводить пин-код для разблокировки доступа к мобильной сети.
- AT+CPIN=0000 # пример, ввод PIN кода
Настройки для etcnet
в каталоге /etc/net/ifaces/ppp1/ : (цифра может меняться в зависимостри от номера интерфейса):
TYPE=ppp ONBOOT=yes PPPTYPE=dialup RESTORE_DEFAULTROUTE=yes
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"
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
Известные баги
Их всегда можно посмотреть на packages.altlinux.org
Наиболее неприятная на сегодня :
Примечания
- Рецепт годен и для Huawei E150. Эти модели различаются только тем, что у модели E150 нет слота для Micro SD, а у E1550 есть. В остальном модемы аналогичны.
- Так же работает модем huawei e173 (ID 12d1:1436 Huawei Technologies Co., Ltd.). В network manager заработал из коробки сразу после втыкания модема без шаманств (usb_modeswitch установлен)
- Рецепт годен и для аналогичных модемов от MTC и Билайна.
- С большой вероятностью этот же рецепт годен и для модемов других операторов этих же и близких к ним моделей — например, Huawei E1552, E1750 и т.п.
- Решение тестировалось на модеме Huawei E150 от МТС и E1550 от Мегафон на дистрибутивах Пятой платформы.
- Решение тестировалось на модеме ZTE MF112 от МТС на дистрибутивах Пятой и Шестой платформы. Особенности на Centaurus и Школьном сервере — не срабатывает usb-modeswitch для модели, которая определяется как 19d2:2000. приходится отключать CD и CardReader. Причем на Slinux 6.0 и KDesktop 6.0 все заработало «из коробки».
Ссылки
Как заставить работать модем хуавей на линукс минт?
Втыкаем модем в usb и вводим в терминале:
lsusb
Внимательно смотрим на вывод. Если видим там строчку типа
ZTE Communications Inc.
то выдергиваем модем, аккуратно упаковываем его в фирменную коробочку и относим своему любимому ОпСоСу для замены на Huawei. Получаем после долгих препирательств модем Хуёвай и переходим к Шагу 2 (можно сразу к Варианту 2). Если вас послали в даль, то переходим к Шагу 2 Вариант 1 и надеемся на лучшее.
Дело в том, что модемы ZTE не очень хорошо себя показали как в Linux, так и в Windows.
Шаг 2
Вариант 1 — простое подключение любых usb-модемов в Ubuntu
Этот вариант подойдет почти для всех известных модемов, т. к. Ubuntu Linux прекрасно знает их все в лицо.
Запускаем Synaptic (Система — Администрирование) , набираем в поиске:
usb-modeswitch
и устанавливаем вместе с зависимостями, потом перегружаемся (вроде надо, но не уверен) . Расскажу, что произойдет:
Все эти модемы используют технологию ZeroCD, т. е. модем определяется как CD-ROM, запускает автозапуск, который проверяет наличие драйверов в системе и либо запускает специальную программу связи, либо ставит ее вместе с дровами. Само собой эта радость нифига не работает в Linux. Поэтому при определении такого стремного устройства, usb-modeswitch автоматически переводит его в нормальный режим работы. А поддержка таких модемов уже есть в ядре Ubuntu.
Теперь открывает NetworkManager (иконку сети на верхней панели) и создаем новое мобильное широкополосное соединение.
Недостатком этого метода является то, что возможны вылеты модема. Это может происходить как из-за модема, так и из-за конфигурации вашего компьютера. Поэтому рекомендую попробовать этот метод, и, если все работает правильно и стабильно, на нем остановться и не мучать больше комп.
Если же наблюдаются сбои или вы таки добыли Хуёвай модем, то переходим к Варианту 2.
Вариант 2 — эффективнно подключение usb-модемов Huawei Mobile Partner
Описанное ниже применимо к следующим модемам Huawei:
Huawei E156G,
Huawei E160G,
Huawei E169,
Huawei E172G,
Huawei E220,
Huawei E270,
Huawei K3520,
Huawei E1550
т. е. к большей части модемов, выпускаемых под марками Билайн, МТС и Мегафон. Возможно подойдет и для других Хуёвых модемов.
Для модемов марки Хуёвай сотрудниками одноеменной компании была разработана программа Mobile Partner, которую со своими логотипами поставляют некоторые компании (Мегафон, Афон и некоторые другие) , понтуясь, мол мы ее сами написали для наших клиентов (ВРУТ. ) . Если у вас ее нет, или вам не нравится версия, то скачать можно по ссылке Mobile Partner. Это версия от компании Мегафон, а тут версия от Афон, но мегафоновская свежее. Можете пошукать на сайте Huawei версию конкретно для вашего модема, но там черт ногу сломит. Ниже я расскажу, как создать свой скин для нее, а пока установим.
Распаковываем архив в удобную папку. Заходим в эту папку. В ней дожны появиться файлы:
DataCard_Verify
install
jre-1_5_0_15-linux-i586.bin
MobilePartner.tar.gz
readme.txt
SysConfig.dat
Запускаем в терминале установочный скрипт:
sudo bash install
Установщик спросит, куда установить программу. По умолчанию — это /usr/local/MegaFon_Internet, но можно задать и самому.
Теперь запускаем ее из «Приложения — Интернет»: