LINUX.ORG.RU
ФорумAdmin

Руководство по запуску 4G (RNDIS) модема на DIR-320 (D1) или аналогичных


0

1

Изначальной поддержки этого модема у DIR320 как бы нет поэтому настроить подключение через веб-интерфейс не представляется возможным, поскольку нет и альтернативных прошивок для этой модели (D1), хотя исходники общедоступны на сайте D-LINK.

Итак, чтобы на DIR320D1 запустить 4G RNDIS модем (например как мой MF823) нужно подключив его к компьютеру в настройках модема (по умолчанию 192.168.0.1), включить авто-подключение к интернету, установить адрес шлюза не такой как у роутера (192.168.0.3 например) и через режим сервиса (гуглим) указать модему выставлять наружу RNDIS сразу после подачи питания. Также нужно в настройках роутера указать назначать адреса начиная с 192.168.0.4 до 192.168.0.84 и режим подключения установить на «динамический IP» подключаем модем к роутеру, включаем питание, входим через telnet на роутер и даём команды:

insmod /lib/modules/usbnet.ko

insmod /lib/modules/cdc_ether.ko

insmod /lib/modules/rndis_host.ko

ip link set unet0 up

udhcpc -i unet0

iptables -t nat -A POSTROUTING -o unet0 -j MASQUERADE

ip ro ad 192.168.0.3 dev unet0

если всё прошло гладко, то ваш роутер уже начал раздавать интернет по портам свича и WIFI.

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

ЗЫ ЗЫ. кто подскажет, почему извне (с компа по LAN или Wifi) нет доступа к 192.168.0.3? пробовал даже давать такие команды:

iptables -F

iptables -X

iptables -t nat -F

iptables -t nat -X

iptables -t mangle -F

iptables -t mangle -X

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

всё одно, даже не пингуется. (повторюсь я не админ и не сетевик, уверен что это решается элементарно, я просто не знаю пока как) думал может выделить модем с его шлюзом в отдельный сегмент или как там это называется. не уверен что это поможет да и надо в конфигах DHCP модема поковыряться чтоб раздавал из 192.168.1.* и маршрут другой прописать например так «ip ro ad 192.168.1.0/24 dev unet0» хотя вроде это сделает udhcpc наверно, надо будет попробовать )))

--------------- UPD ---------------

Чуть не забыл! эти команды нужно вводить каждый раз после перезагрузки роутера. для облегчения ввода команд (если планируются частые перезагрузки) можно использовать такой класс написанный на C#

http://pastebin.ru/5ZX7uAP8

--------------- UPD ---------------

Всё, понял свою ошибку! чтоб иметь доступ к шлюзу роутера (4g модему) надо задать до него маршрут (он же доступен только через шлюз роутера)

для Windows: route add 192.168.0.3 192.168.0.1

можно добавить параметр -p для сохранения маршрута в реестре

Ответ на: комментарий от Eugenij

Пишу с Linux, оказывается такая команда не работает, пишет «SIOCADDRT: Операция не позволена» думаю это из за того что пакеты для 192.168.0/24 должны уходить в eth0 или что то в этом роде, т.е. Linux не может конкретизировать маршрут для отдельного IP? вообще логически это правильно, но неужели нет обходных путей кроме как назначать модему другую подсеть?

Eugenij ()
Ответ на: комментарий от Eugenij

оказывается всё оказалось очень просто, достаточно было почитать «man route» вот команда которая работает:

sudo route add -host 192.168.0.3 gw 192.168.0.1

Eugenij ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.