Chciałem podzielić się usprawnieniami które poprawią satysfakcje z użytkowania routera z firmware padavan
na pierwszy ogień instalacja entware na pamieć wewnętrzną routera
ubiformat /dev/mtd11 -e 0
ubiattach -p /dev/mtd11
ubimkvol /dev/ubi0 -m -N rwfs
mount -t ubifs /dev/ubi0_0 /opt
pod /opt powinno pojawić się 94MB wolnego miejsca
teraz juz przez strone konfiguracyjną możemy aktywowac:
Aplikacje USB -> Allow Run Optware ? wybieramy entware i zapisujemy zmiany przyciskiem na dole:)
Administracja -> Odtworzenie/Zapis ustawien -> Filesystem Mounted to R/W Partition wybieramy UBIFS
...teraz tylko opkg update:
/mnt # opkg update
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Teraz mozemy dodac automatyczne montowanie ubifs przy starcie
Customization -> scripts -> Run After Router Started
RWFS=$(df| grep mtd_rwfs|cut -d' ' -f1)
mount -t ubifs $RWFS /opt
Instalacja skryptu walczącego z lagami przy zapchaniu łącza .
Będzie działać jeśli mamy zbudowany obraz z obsługą qos. Gotowy skrypt możemy wrzucić do scripts -> 'Run After WAN Up/Down Events ' jeśli używamy pppoe lub do 'Run After Firewall Rules Restarted '
Poniższy skrypt jest dla pppoe ale jeśli zamienić ppp0 na eth3 zadziała w konfiguracji jak przy sieciach kablowych itp.
#!/bin/sh
#hw-nat module disabled qos modules enabled
/sbin/rmmod hw_nat
/sbin/modprobe ifb numifbs=1
/sbin/modprobe sch_ingress
/sbin/modprobe sch_htb
/sbin/modprobe sch_fq_codel
/sbin/modprobe act_mirred
/sbin/modprobe cls_u32
/bin/ip link set ifb0 name ifb_ppp0
##ppp0 lub eth3
WAN_INTF=ppp0
#69/20Mbit pppoe przykład
WAN_UP_SPEED=20800000
WAN_DOWN_SPEED=78000000
# advanced settings
TQDISC=fq_codel
FQ_CODEL_QUANTUM_UP=300
FQ_CODEL_QUANTUM_DOWN=300
#15ms WAN <3Mbit
FQ_CODEL_TARGET_UP=5ms
FQ_CODEL_TARGET_DOWN=5ms
# WAN > 100Mbit
#UP=8000 or 1500 DOWN=8000
# WAM < 40Mbit
#UP=300 DOWN=1514
HTB_QUANTUM_UP=1500
HTB_QUANTUM_DOWN=1500
#TQDISC_OPTS_UP=
#TQDISC_OPTS_DOWN=
if [ "$TQDISC" == fq_codel ]; then
TQDISC_OPTS_UP="quantum $FQ_CODEL_QUANTUM_UP "
TQDISC_OPTS_UP="target $FQ_CODEL_TARGET_UP "
TQDISC_OPTS_DOWN="quantum $FQ_CODEL_QUANTUM_DOWN "
TQDISC_OPTS_DOWN="target $FQ_CODEL_TARGET_DOWN "
fi
WAN_IFB="ifb_${WAN_INTF}"
TC=/bin/tc
IP=/bin/ip
$TC qdisc del dev $WAN_INTF root >/dev/null 2>&1
$TC qdisc del dev $WAN_INTF ingress >/dev/null 2>&1
$TC qdisc del dev $WAN_IFB root >/dev/null 2>&1
[ "$1" == clear ] && exit 0
$TC qdisc add dev $WAN_INTF root handle 1: htb default 10
$TC class add dev $WAN_INTF parent 1: classid 1:1 htb quantum $HTB_QUANTUM_UP rate $WAN_UP_SPEED ceil $WAN_UP_SPEED
$TC class add dev $WAN_INTF parent 1:1 classid 1:10 htb quantum $HTB_QUANTUM_UP rate $WAN_UP_SPEED ceil $WAN_UP_SPEED
$TC qdisc add dev $WAN_INTF parent 1:10 handle 100: $TQDISC $TQDISC_OPTS_UP
$IP link add $WAN_IFB type ifb >/dev/null 2>&1
$TC qdisc add dev $WAN_IFB root handle 1: htb default 10
$TC class add dev $WAN_IFB parent 1: classid 1:1 htb quantum $HTB_QUANTUM_DOWN rate $WAN_DOWN_SPEED ceil $WAN_DOWN_SPEED
$TC class add dev $WAN_IFB parent 1:1 classid 1:10 htb quantum $HTB_QUANTUM_DOWN rate $WAN_DOWN_SPEED ceil $WAN_DOWN_SPEED
$TC qdisc add dev $WAN_IFB parent 1:10 handle 100: $TQDISC $TQDISC_OPTS_DOWN
$IP link set $WAN_IFB up
$TC qdisc add dev $WAN_INTF handle ffff: ingress
$TC filter add dev $WAN_INTF parent ffff: protocol all prio 10 u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev $WAN_IFB