Ускорить WiFi на TP-Link WR841ND с прошивкой DD-WRT
Итак имеем WR841ND v8.1 с заводской прошивкой. Все ничего, но скорость по WiFi почему-то не ахти, разные тесты выдают 0,3-0,7 МБит/с на загрузку. А хотелось бы улучшить, так как тариф 10 МБит/сек.
Установка OpenWRT все только усугубила, если проводная скорость стала не хуже, а лучше, то по wifi все упало до каких-то смешных 10-50 КБит/сек,
Было решено попробовать ddwrt. Прошивка конечно не для слабонервных.
Была взята самая последняя доступная на данный момент factory-to-ddwrt.bin
Первая часть настройки стандартная:
- Статический адрес на WAN
- Включаем сервис клиента pptp
Но! На этом не все, почему-то прошивка после поднятия pptp не выставляет нужный нам шлюз по умолчанию, а именно что бы все ходило через ppp0 и соответственно ядро не знает куда там слать пакеты. Надо вручную ввести:
route del -net 0.0.0.0
route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.0.XX.XX
где 10.0.XX.XX — адрес вашего vpn шлюза.
Но, что бы каждый раз не вбивать, делаем так Administration -> Commands и вводим:
echo -e ‘#!/bin/sh
gw_str=$(route | grep default | grep ppp0 )
if [ -z «$gw_str» ] ;
then
route del -net 0.0.0.0
route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.0.XX.XX
fi
‘>/tmp/update_route.sh
chmod 755 /tmp/update_route.sh
killall cron
cron
нажимаем Save Startup.
Cron изначально работать не хочет, по этому приходится перезапускать принудительно последними двумя строками этого сценария:
killall cron
cron
Далее выбираем раздел Administration –> Management, включаем Cron. И вводим в поле Additional Cron Jobs:
0-59 * * * * root /tmp/update_route.sh
Все сохраняем и перегружаемся
После всего этого скорость на ddwrt поднялась по wifi до нескольких мегабит, а это намного лучше того, что было на заводской прошивке.
При выдергивании кабеля, когда пропадает интерфейс ppp0, но если кабель потом воткнуть, то соединение восстанавливается автоматически.