Настройка MTS connect/Интертелекома

Если вам попал в руки роутер с USB портом на который можно установить прошивку OpenWRT, то это можно сказать практически универсальный мобильный роутер для небольшого офиса.

В статье расскажу, как настроить раздачу интернета на примере модемов AnyData ADU500 от MTS и Novatel U720 от Интертелекома.

Тестовый стенд: роутер Linksys 160NL, Asus WL-500gP V2 (для этой модели прочтите Примечание для Asus) OpenWRT , с ядром 2.6.30.10-1

0) Введение.

Основное описание будет происходить для модема ADU500. Если настройки будут различаться — будет указана отдельно конфигурация для Novatel. Естественно, что при настройке модема Novatel в конфигурации используем не имя mts, а например, itc.

1) Подготовка.

Для того, что бы наш роутер увидел USB-устройство, нужно установить наборы драйверов и утилит для работы с USB-устройствами:

Примечание:

для роутера Asus WL-500gP вместо пакета kmod-usb-ohci нужно использовать пакет kmod-usb-uhci

#ipkg install kmod-usb-core kmod-usb-ohci kmod-usb-serial kmod-usb-storage kmod-usb2 libusb

После этого вставляем наш модем и смотрим:

# cat /proc/bus/usb/devices

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 2.06
S:  Manufacturer=Linux 2.6.32.10 ehci_hcd
S:  Product=Atheros AR91xx built-in EHCI controller
S:  SerialNumber=ar71xx-ehci
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=16d5 ProdID=6502 Rev= 0.00
S:  Manufacturer=AnyDATA Corporation
S:  Product=AnyDATA CDMA Products
C:* #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbserial_generic
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=128ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbserial_generic
E:  Ad=84(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbserial_generic
E:  Ad=85(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=05(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

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

2) Настройка.

Подключение будем осуществлять через ppp, поэтому, у вас должен быть установлен пакеты kmod-ppp, ppp, chat.

Что бы иметь возможность работать с нашим устройством, редактируем файл /etc/modules.d/60-usb-serial.  Приводим его к такому виду:

usbserial vendor=0x16d5 product=0x6502

где, параметры vendor и product берём из вывода выше (красная строка).

Конфигурируем ppp. Создаём файл /etc/ppp/peers/mts такого содержания:

hide-password
noauth
connect "/usr/sbin/chat -v -f /etc/ppp/chatscripts/mts"
debug
115200
defaultroute
noipdefault
user "mobile"
demand
usepeerdns
/dev/ttyUSB0
logfile /dev/nulls

Примечание:

При настройке Novatel скорость указывать не надо.

Если подключение не происходит то нужно убирать опцию demand.

и файл /etc/ppp/chatscripts/mts:

ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
'' ATZ
OK-AT-OK "ATDT#777"
CONNECT \d\c

Добавляем пару логиy/пароль в файл /etc/ppp/chap-secrets:

mobile  *       internet        *

Примечание:

Для модема используется тип шифрования только PAP, поэтому логин и пароль (у Интертелекома используется логи/пароль=IT/IT заглавными) нужно добавлять именно в файл /etc/ppp/pap-secrets:

IT    *     IT   *

В противном случае будет появляться сообщение:

rcvd [CHAP Failure id=0x1 "Account disabled"]

Стартовый скрипт /etc/init.d/pppd для запуска выглядит так:

#!/bin/sh /etc/rc.common
START=99
start() {
/usr/sbin/pppd call mts
}

Делаем его исполняемым и создаём симлинк в папке /etc/rc.d:

#chmod +x /etc/init.d/pppd
#ln -s /etc/init.d/pppd /etc/rc.d/S99pppd

Примечание для Asus

Для модели Asus WL-500gP V2 доступно только ядро 2.4, и с ним связана одна особенность: автоматически не создаётся файл /dev/ttyUSB0, но зато создаются файлы /dev/usb/tts/Х. Попытка прописать в конфиг ppp вместо /dev/ttyUSB0 правильный путь — приводит к ошибке. Поэтому я решил сделать так: немного изменить стартовый скрипт для запуска ppp, о чём свидетельствовали строки 

OpenWrt user.info kernel: usbserial.c: Generic converter now attached to ttyUSB0 (or usb/tts/0 for devfs)

В итоге наш скрипт /etc/init.d/pppd должен выглядеть так:

START=99
start() {
ln -s /dev/usb/tts/0 /dev/ttyUSB0
sleep 30
/usr/sbin/pppd call its
}

Такая задержка нужна потому, что usb драйвера подгружаются не сразу (пока не выяснил почему так).

3) Настройка интернета.

Для раздачи интернета нужен пакет kmod-ipt-nat-extra:

#ipkg install kmod-ipt-nat-extra

Теперь добавляем соответствующее правило трансляции NAT в файервол:

#iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *