Страницы

понедельник, 19 сентября 2016 г.

Asus RT-AC68U + Huawei E5372

Решил сделать такую связку: Asus RT-AC68U + Huawei E5372.
У меня давно валялся этот 4G модем. Девайс отличный, Android на борту, но батареи хватает очень на малое время и как оказалось надо на клиентском оборудовании менять TTL для обхода ограничений операторов на тех тарифах где тетеринг запрещён, а из коробки это работает через раз (на 4pda.ru есть ветка посвящённая этому девайсу, где всё расписано).
На Asus RT-AC68U надо накатить OpenWRT, с другими прошивками у меня не получилось подружить в режиме HiLink. Но в OpenWRT не работает Wi-Fi, пришлось делать на DD-WRT.

OpenWRT (не будет работать Wi-Fi)

Итак, как написано в инструкции на польском сайте, надо поставить пакет:
# opkg install kmod-usb-net-huawei-cdc-ncm
Возможно также нужны ещё пакеты: kmod-usb-net-cdc-ether, kmod-usb-net-cdc-ncm
Это добавит интерфейс wwan0, его и надо сделать WAN:
# uci del network.wan
# uci set network.wan=interface
# uci set network.wan.proto=dhcp
# uci set network.wan.ifname=wwan0
# uci commit network
# reboot
 Нужно ещё изменить TTL через iptables, ставим нужные пакеты:
# opkg install iptables-mod-ipopt kmod-ipt-ipopt
После этого в  /etc/firewall.user добавляем:
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 65
Готово, можно юзать мобильный интернет через Wi-Fi.

DD-WRT

Скачиваем последнюю прошивку для AC68U или своего роутера.

Подключаем модем E5372.
Создаём мост br1 с адресом 192.168.8.100/24, в настройках WAN указать статический IP 192.168.8.100, шлюзом 192.168.8.1 и таким же DNS. В мост br1 присоединить vlan2 (он создаётся для WAN, но не используется).
Дальше пару команд запуска, которые сделают все красиво:
# modprobe huawei_cdc_ncm
# ifconfig wwan0 up
# brctl addif br1 wwan0
Ещё надо для тетеринга добавить в команды файрвола:
# iptables -t mangle -A POSTROUTING -j TTL --ttl-set 65
Samba3 как бы работает из коробки, но из Windows 10 не подключается, а с Android вроде ОК. в генерируемом конфигурационном файле /tmp/smb.conf не хватает "max protocol = SMB2". Можно записать конфигурацию в NVRAM:

#!/bin/sh

nvram set samba3_conf="[global]
log level = 1
netbios name = RT-AC68U
server string = RT-AC68U
max protocol = SMB2
syslog = 10
encrypt passwords = true
preferred master = yes
security = user
mangled names = no
max stat cache size = 64
workgroup = NET
bind interfaces only = Yes
guest account = nobody
map to guest = Bad User
smb passwd file = /var/samba/smbpasswd
private dir = /var/samba
passdb backend = smbpasswd
log file = /var/smbd.log
max log size = 1000
socket options = TCP_NODELAY IPTOS_LOWDELAY
read raw = yes
write raw = yes
oplocks = yes
max xmit = 65536
dead time = 15
getwd cache = yes
lpq cache time = 30
printing = none
load printers = No
usershare allow guests = Yes

[USB-HDD]
comment = \"USB-HDD\"
path = \"/opt/\"
read only = No
guest ok = Yes
force user = root
"
Чтобы активировать этот конфиг надо:
# nvram set samba3_advanced=1
# nvram commit