Имея в наличии роутер D-Link DIR-825 под управление OpenWRT с usb-портом на борту и 3G-модем Huawei E1750, почему бы не попробовать их объединить? Тем более, Huawei E1750 прекрасно работает в Linux. Таким образом можно получить очень функциональный 3G-роутер или резервный канал доступа в интернет.
Итак, что нам для этого понадобится:
root@openwrt:~$ opkg update
root@openwrt:~$ opkg install kmod-usb-acm kmod-usb-core kmod-usb-ohci kmod-usb-serial \
kmod-usb-serial-option kmod-usb-storage kmod-usb-uhci kmod-usb2 usb-modeswitch comgt
После этого — подключаем модем, должны увидеть примерно следующее:
root@openwrt:~$ dmesg
...
sb 2-1: new full speed USB device using ar71xx-ohci and address 2
usb 2-1: configuration #1 chosen from 1 choice
scsi0 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi1 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi 0:0:0:0: CD-ROM HUAWEI Mass Storage 2.31 PQ: 0 ANSI: 2
usb-storage: device scan complete
scsi 1:0:0:0: Direct-Access HUAWEI SD Storage 2.31 PQ: 0 ANSI: 2
usb-storage: device scan complete
sd 1:0:0:0: [sda] Attached SCSI removable disk
Настроим usb-modeswitch, чтобы получить, собственно, модем. Для этого создаем файл /etc/usb-modeswitch.conf:
########################################################
# Мegafon 3G Modem E1750
# Use device /dev/ttyUSB0 for connecting
DefaultVendor=0x12d1
DefaultProduct=0x1446
MessageContent="55534243000000000000000000000011060000000000000000000000000000"
Инициализируем модем:
root@openwrt:~$ usb_modeswitch -c /etc/usb-modeswitch.conf
Warning: TargetProductList overrides TargetProduct!
Looking for target devices ...
No devices in target mode or class found
Looking for default devices ...
Found devices in default mode or class (1)
Accessing device 006 on bus 002 ...
Using endpoints 0x01 (out) and 0x81 (in)
Using endpoints 0x01 (out) and 0x81 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
OK, driver found ("usb-storage")
OK, driver "usb-storage" detached
SCSI inquiry data (for identification)
-------------------------
Vendor String: HUAWEI
Model String: Mass Storage
Revision String: 2.31
-------------------------
USB description data (for identification)
-------------------------
Manufacturer: HUAWEI Technology
Product: HUAWEI Mobile
Serial No.: not provided
-------------------------
Setting up communication with interface 0 ...
Using endpoint 0x01 for message sending ...
Trying to send message 1 to endpoint 0x01 ...
Device seems to have vanished right after sending. Good.
Device is gone, skipping any further commands
Checking for mode switch (max. 20 times, once per second) ...
Original device is gone already, not checking
Searching for target devices ...
Searching for target devices ...
Searching for target devices ...
Searching for target devices ...
Searching for target devices ...
Found correct target device
Mode switch succeeded. Bye.
После этого получаем заветные девайсы:
root@openwrt:~$ dmesg
...
usb 2-1: new full speed USB device using ar71xx-ohci and address 2
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usb 2-1: configuration #1 chosen from 1 choice
usbserial_generic 2-1:1.0: generic converter detected
usb 2-1: generic converter now attached to ttyUSB0
usbserial_generic 2-1:1.1: generic converter detected
usb 2-1: generic converter now attached to ttyUSB1
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
...
Выполнять такие манипуляции каждый раз при перезагрузке или подключении модема не очень то хочется, от этого нас избавит udev:
root@openwrt:~$ opkg update
root@openwrt:~$ opkg install udev
Создаем файл /etc/udev/rules.d/40-usb_modeswitch.rules:
ACTION!="add", GOTO="modeswitch_rules_end"
SUBSYSTEM!="usb", GOTO="modeswitch_rules_end"
# Most known install partitions are on interface 0, one on 5, one on 9
ATTRS{bInterfaceNumber}!="0[059]", GOTO="modeswitch_rules_end"
# only storage class devices are handled; negative
# filtering here would exclude some quirky devices
ATTRS{bDeviceClass}=="08", GOTO="modeswitch_rules_begin"
ATTRS{bInterfaceClass}=="08", GOTO="modeswitch_rules_begin"
GOTO="modeswitch_rules_end"
LABEL="modeswitch_rules_begin"
# Huawei, newer modems
ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1446", RUN+="usb_modeswitch '%b/%k'"
LABEL="modeswitch_rules_end"
Приступим к конфигурации интерфейса, добавим в /etc/config/network (APN указана для МегаФона, у других операторов может отличаться):
config 'interface' 'wan2'
option 'ifname' 'ppp0'
option 'peerdns' '1'
option 'defaultroute' '1'
option 'proto' '3g'
option 'device' '/dev/ttyUSB0'
option 'apn' 'internet'
option 'pincode' '1234'
И подключаемся:
root@openwrt:~$ ifup wan2
SIM ready
PIN set successfully
root@openwrt:~$ ifconfig 3g-wan2
3g-wan2 Link encap:Point-to-Point Protocol
inet addr:10.237.xxx.xxx P-t-P:10.64.xxx.xxx Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:56 (56.0 B) TX bytes:44 (44.0 B)
Переходим к настройкам межсетевого экрана. В /etc/config/firewall добавляем:
config 'zone'
option 'output' 'ACCEPT'
option 'name' 'wan2'
option 'network' 'wan2'
option 'input' 'REJECT'
option 'forward' 'REJECT'
option 'masq' '1'
option 'mtu_fix' '1'
config 'forwarding'
option 'dest' 'wan2'
option 'src' 'lan'
Перезачитываем конфиг:
root@openwrt:~$ /etc/init.d/firewall relad
Устройство полностью готово к работе!
2 комментария “Превращаем D-Link DIR-825 в 3G-роутер с помощью Huawei E1750 и OpenWRT”
шпаргалка ,хорошая,но нафига этому модему пакет kmod-usb-acm — он для cdma и для мобильников,да и зачем оба сразу kmod-usb-ohci и kmod-usb-uhci ? наверно всё-таки,что то одно ;) kmod-usb-storage-а этот для usb накопителей ,но что то я не вижу пакета под какую нибудь ф.с. ;) usb-modeswitch и без этого можно обойтись,если предварительно перевести устройство, в режим только модем (в терминалке послать устройству AT команду AT^U2DIAG=0 ) ну или просто переключить,через его оболочку в винде ;)
стоит попробавать!!!!!!!!!!!
не хочу слушать жужания компа ночьюпри скачивании