- Luck Dragon: Asszociációs játék. :)
- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja az aktuális trendeket...
- sh4d0w: Netflix? Ugyan, VW előfizetés!
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Szólánc.
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Geri Bátyó: Megint tahó voltam – SZEMÉLYISÉGFEJLŐDÉS
-
LOGOUT
Új hozzászólás Aktív témák
-
Tamy
őstag
Sziasztok!
Még mindig keresem a megoldást erre:
TP-Link TL-WR1043ND routeremre felraktam az OpenWrt Backfire 10.03.1-RC6 fw.-t, ehhez keresek olyan alkalmazást amivel egyedi sebességlimitet tudnék beállítani az egyes gépekre. Ahogy olvasgattam a témában sokan keresik, de megoldást nem nagyon tud rá senki OpenWRT alatt. A [url=https://forum.openwrt.org/viewtopic.php?id=23285]hivatalos fórumán[/url] találtam rá egy scriptet, de nálam kilövi magát amint elindítom. Gondoltam bemásolom, hátha valaki rájön hol a hiba benne:
#!/bin/sh
insmod cls_fw >/dev/null 2>&1
insmod cls_u32 >/dev/null 2>&1
insmod sch_htb >/dev/null 2>&1
insmod sch_sfq >/dev/null 2>&1
insmod sch_ingress >/dev/null 2>&1
DEV="br-lan"
LIMIT_IPS="192.168.1.10 192.168.1.11 192.168.1.12"
LIMIT_DOWN=200
LIMIT_DOWN_BURST=400
LIMIT_UP=400
start() {
tc qdisc del dev "$DEV" root handle 77:
tc qdisc add dev "$DEV" root handle 77: htb
tc class add dev "$DEV" parent 77: classid 77:1 htb rate 20000kbit
tc class add dev "$DEV" parent 77:1 classid 77:10 htb rate ${LIMIT_DOWN}kbit ceil ${LIMIT_DOWN_BURST}kbit prio 2
tc qdisc add dev "$DEV" parent 77:10 handle 78: sfq perturb 10
tc qdisc add dev "$DEV" ingress
tc filter add dev "$DEV" parent 77: protocol ip prio 2 handle 80 fw flowid 77:10
tc filter add dev "$DEV" parent ffff: protocol ip prio 1 handle 79 fw police rate ${LIMIT_UP}kbit mtu 6k burst 6k drop
for ip in $LIMIT_IPS; do
iptables -t mangle -I PREROUTING -s $ip -j MARK --set-mark 79
iptables -t mangle -I POSTROUTING -d $ip -j MARK --set-mark 80
done
}
stop() {
tc qdisc del dev $DEV root
iptables -F -t mangle
}
restart() {
stop
sleep 1
start
}
show() {
tc -s qdisc ls dev $DEV
}
case "$1" in
start)
echo -n "Starting bandwidth shaping: "
start
echo "done"
;;
stop)
echo -n "Stopping bandwidth shaping: "
stop
echo "done"
;;
restart)
echo -n "Restarting bandwidth shaping: "
restart
echo "done"
;;
show)
echo "Bandwidth shaping status for $DEV:"
show
echo ""
;;
*)
echo "Usage: $0 {start|stop|restart|show}"
;;
esac
exit 0Természetesen a példában szereplő IP címeket lecseréltem a sajátomra, mivel nem működött, javasolták, hogy próbáljam meg a br-lan helyére beírni az eth0.1-t, mondván hátha a bridge interfész miatt nem megy. Ezeken kívül mást nem módosítottam rajta. Ezzel kapcsolatban az sem teljesen világos, hogy a LAN vagy a WAN portot kéne ide beírnom, a példa alapján a LAN-t, ami logikus, hisz a belső ip-m azon található, de így viszont én úgy gondolom, hogy a helyi hálón is korlátozna, amit nem szeretnék. Persze lehet, hogy tévedek, de egyenlőre még amúgy sem ez a fő gondom. A hivatalos fórumon is jelezték, hogy nem megy, megoldásnak azt írták, hogy ki kell egészíteni az "insmod act_police" sorral, viszont nálam így sem megy. Ha elindítom ezt dobja válaszul:
root@OpenWrt:~# /etc/init.d/limit restart
insmod: can't insert 'act_police': File exists
Restarting bandwidth shaping: RTNETLINK answers: Invalid argument
RTNETLINK answers: File exists
RTNETLINK answers: File exists
We have an error talking to the kernel
doneAnnyi segítséget kaptam eddig, hogy hibakereséshez az első sorban a #! /bin/sh sort ki kell cserélni #! /bin/bash-ra, majd következő sorba beírni: set -x. Ezután ezt kaptam eredményül:
root@OpenWrt:~# /etc/init.d/limit restart
+ insmod cls_fw
+ insmod cls_u32
+ insmod sch_htb
+ insmod sch_sfq
+ insmod sch_ingress
+ insmod act_police
insmod: can't insert 'act_police': File exists
+ DEV=eth0.1
+ LIMIT_IPS=192.168.2.100
+ LIMIT_DOWN=200
+ LIMIT_DOWN_BURST=400
+ LIMIT_UP=400
+ case "$1" in
+ echo -n 'Restarting bandwidth shaping: '
Restarting bandwidth shaping: + restart
+ stop
+ tc qdisc del dev eth1 root
+ iptables -F -t mangle
+ sleep 1
+ start
+ tc qdisc del dev eth1 root handle 77:
RTNETLINK answers: Invalid argument
+ tc qdisc add dev eth1 root handle 77: htb
+ tc class add dev eth1 parent 77: classid 77:1 htb rate 20000kbit
+ tc class add dev eth1 parent 77:1 classid 77:10 htb rate 200kbit ceil 400kbit prio 2
+ tc qdisc add dev eth1 parent 77:10 handle 78: sfq perturb 10
+ tc qdisc add dev eth1 ingress
RTNETLINK answers: File exists
+ tc filter add dev eth1 parent 77: protocol ip prio 2 handle 80 fw flowid 77:10
+ tc filter add dev eth1 parent ffff: protocol ip prio 1 handle 79 fw police rate 400kbit mtu 6k burst 6k drop
RTNETLINK answers: File exists
We have an error talking to the kernel
+ for ip in '$LIMIT_IPS'
+ iptables -t mangle -I PREROUTING -s 192.168.2.100 -j MARK --set-mark 79
+ iptables -t mangle -I POSTROUTING -d 192.168.2.100 -j MARK --set-mark 80
+ echo done
done
+ exit 0Volt olyan javaslat is, hogy vegyem ki az init.d-ből és kézzel indítsam el, mondván automatikusan indul, és annak a kimenetét nem látom. Utána viszont maga a restart (azon belül is a stop) esetleg nem takarít rendesen azért vannak azok a hibák (mivel arra panaszkodik, hogy bizonyos dolgok már léteznek). Így futtatva továbbra sem megy, ugyan más hibákra panaszkodik:
root@OpenWrt:~# /etc/config/limit start
+ insmod cls_fw
+ insmod cls_u32
+ insmod sch_htb
+ insmod sch_sfq
+ insmod sch_ingress
+ insmod act_police
+ DEV=eth0.1
+ LIMIT_IPS=192.168.2.100
+ LIMIT_DOWN=200
+ LIMIT_DOWN_BURST=400
+ LIMIT_UP=400
+ case "$1" in
+ echo -n 'Starting bandwidth shaping: '
Starting bandwidth shaping: + start
+ tc qdisc del dev eth0.2 root handle 77:
RTNETLINK answers: Invalid argument
+ tc qdisc add dev eth0.2 root handle 77: htb
RTNETLINK answers: File exists
+ tc class add dev eth0.2 parent 77: classid 77:1 htb rate 20000kbit
RTNETLINK answers: No such file or directory
+ tc class add dev eth0.2 parent 77:1 classid 77:10 htb rate 200kbit ceil 400kbit prio 2
RTNETLINK answers: No such file or directory
+ tc qdisc add dev eth0.2 parent 77:10 handle 78: sfq perturb 10
RTNETLINK answers: No such file or directory
+ tc qdisc add dev eth0.2 ingress
+ tc filter add dev eth0.2 parent 77: protocol ip prio 2 handle 80 fw flowid 77:10
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
+ tc filter add dev eth0.2 parent ffff: protocol ip prio 1 handle 79 fw police rate 400kbit mtu 6k burst 6k drop
+ for ip in '$LIMIT_IPS'
+ iptables -t mangle -I PREROUTING -s 192.168.2.100 -j MARK --set-mark 79
+ iptables -t mangle -I POSTROUTING -d 192.168.2.100 -j MARK --set-mark 80
+ echo done
done
+ exit 0Ha valakinek van még ötlete, vagy esetleg egy teljesen más megoldást tud a problémámra, azt szívesen veszem, de lehetőleg ne kétszavas válaszokkal segítsetek, mivel nem tudok programozni, és a Linuxban is kezdő vagyok.
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
- Lenovo Ideapad 5 14" FHD IPS Ryzen 5 5500U 8GB RAM 256GB NVME SSD Magyar Vil. Bill. Garancia
- LG UltraGear 27GR93U-B 27 4K UHD Gaming Monitor garanciával
- Kingston Fury Beast 32GB 6000MHz DDR5 CL30 RAM (KF560C30BBE-32)
- Eladó iPhone 13 Blue 128Gb független Akku 100%
- Új Dell 13 Inspiron 5310 FHD+ IPS i5-11300H 4.4Ghz 8GB 256GB Intel Iris XE Graphics Win11 Garancia
- Samsung Galaxy S21 Ultra / 12GB RAM 256GB / Gyárifüggetlen / 12Hó Garancia
- Xiaomi Redmi Note 11 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Lenovo ThinkPad dokkolók: USB-C 40A9/ 40AY/ 40AS/ Thunderbolt 3 40AC/ Hybrid USB-C DisplayLink 40AF
- Akció! Paidashu 10600MAH / 20700MAH Powerbank olcsón!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: FOTC
Város: Budapest