Hozzászólások
Az alapokkal tiszában vagyok, a kérdésem az lenne, hogyan lehet ip címtől függetlenül olyan szabályt kreálni ami pl egy webszerver forgalmát úgy korlátozná, hogy minden kliens max 1Mbit-tel tudjon letölteni? Tehát nem összesen ennyivel mindenki, hanem ha beesik egy kérés akkor az autómatikusan csak 1Mbit-et kapjon és az összes többi is. Tehát 1Mbit/IP ahol az IP ismeretlen, vagyis csak akkor válik ismertté, amikor jön tőle kérés és ez az IP bármi lehet.
- A hozzászóláshoz be kell jelentkezni
squid a webszerver elle es delay_pools?
- A hozzászóláshoz be kell jelentkezni
[quote:46141cc267="polya"]squid a webszerver elle es delay_pools?
köszi maradnék a HTB nél, ugyanis később másra is kellhet
- A hozzászóláshoz be kell jelentkezni
Keress ra a googlen a monowall-a.
Erdekes egy cucc ;)
- A hozzászóláshoz be kell jelentkezni
[quote:d40ed9bfe0="radulovity"]Keress ra a googlen a monowall-a.
Erdekes egy cucc ;)
ismerem a monowallt. szóval nekem konkrétabb dolog kéne, linux 2.6.x packet scheduleres megoldás, tc alkalmazásával.
örülök természetesen a segítségnek, de inkább konkrét htb megoldás érdekelne tc-vel, mint valami olyasmi, hogy próbáld proxyval hátha megy, esetleg monowall, vagy ipcop hátha tud ilyet. köszi
- A hozzászóláshoz be kell jelentkezni
Ez egy regi RH-s szkriptem egy hasonloan spec esetre. A lenyege az, hogy a tc-t csak meghatarozott csomagokra alkalmazza, amit elozoleg a packet markerrel megjeloltel. Nem biztos, hogy ebbe az allapotaba pikkpakkra menni fog, de a modszert ki tudod lesni belole. En arra hasznaltam, hogy a belso netmegosztasnal lekorlatoztam 20 Kb/s-re minden kliens _atmeno_ forgalmat, amelyek az eth1-re iranyultak, de ha a csomagok nem kifele mentek, hanem csak a samban akartak tallozni akkor pedig maradt nekik a korlatozas nelkuli 100Mb/s. Ezt a megoldast mas esetekre tudod igy hasznalni.
[code:1:4512f2bc26]# cat /home/tony/projects/scripts/trctl/trctld
#!/bin/bash
TC=/sbin/tc
DNLD=20Kbit # DOWNLOAD Limit
DWEIGHT=20Kbit # DOWNLOAD Weight Factor ~ 1/10 of DOWNLOAD Limit
UPLD=25KBit # UPLOAD Limit
UWEIGHT=2Kbit # UPLOAD Weight Factor
tc_start() {
$TC qdisc add dev eth0 root handle 11: cbq bandwidth 100Mbit avpkt 1000 mpu 64
$TC class add dev eth0 parent 11:0 classid 11:1 cbq rate $DNLD weight $DWEIGHT allot 1514 prio 1 avpkt 1000 bounded
$TC filter add dev eth0 parent 11:0 protocol ip handle 3 fw flowid 11:1
$TC qdisc add dev eth1 root handle 11: cbq bandwidth 100Mbit avpkt 1000 mpu 64
$TC class add dev eth1 parent 11:0 classid 11:1 cbq rate $DNLD weight $DWEIGHT allot 1514 prio 1 avpkt 1000 bounded
$TC filter add dev eth1 parent 11:0 protocol ip handle 4 fw flowid 11:1
}
tc_stop() {
$TC qdisc del dev eth0 root
$TC qdisc del dev eth1 root
}
tc_restart() {
tc_stop
sleep 1
tc_start
}
tc_show() {
echo "eth0:"
$TC qdisc show dev eth0
$TC class show dev eth0
$TC filter show dev eth0
echo ""
echo ""
echo "eth1:"
$TC qdisc show dev eth1
$TC class show dev eth1
$TC filter show dev eth1
echo ""
}
case "$1" in
start)
echo -n "Starting traffic limitation: "
tc_start
echo "done"
;;
stop)
echo -n "Stopping traffic limitation: "
tc_stop
echo "done"
;;
restart)
echo -n "Restarting bandwidth limitation: "
tc_restart
echo "done"
;;
show)
tc_show
;;
*)
echo "Usage: /etc/init.d/tc.sh {start|stop|restart|show}"
;;
esac
exit 0
[/code:1:4512f2bc26]
- A hozzászóláshoz be kell jelentkezni