Salut a tous
Je voulais savoir si il y a certains d'entre vous qui on déjà mi en place de la qos avec les commendes tc, j'ai fait un petit script perso et ça marche vraiment bien( jeu, ping, ssh etc...), et je marque donc les paquets avec iptables, mais mon problème c'est que quand j'appelle avec la Voip et que je met un fichier sur un serveur ftp j'ai des micro coupure toutes les 2 s, donc l'appelle est haché.
Pour tant j'ai mi les connexion ftp en dernier prio ( gâce a : iptables -t mangle -A PREROUTING -j MARK --set-mark 0x6) avec un débits max de 100kbits sur les 220Kbits que j'ai et la voip est premier prio avec un débits max de 220Kbits.
et pourtant avec ça j'ai des problème de micro coupure, quand j'ai que la voip qui émet j'ai pas de problème. Voilà la config :
qos.sh
Code :
- tc qdisc add dev $DEV root handle 1: htb default 15
- tc class add dev $DEV parent 1: classid 1:1 htb rate ${UPLINK}kbit ceil ${UPLINK}kbit
- tc class add dev $DEV parent 1:1 classid 1:10 htb rate 120kbit ceil 220kbit prio 0
- tc class add dev $DEV parent 1:1 classid 1:11 htb rate 80kbit ceil 150kbit prio 1
- tc class add dev $DEV parent 1:1 classid 1:12 htb rate 30kbit ceil 180kbit prio 2
- tc class add dev $DEV parent 1:1 classid 1:13 htb rate 30kbit ceil 100kbit prio 3
- tc class add dev $DEV parent 1:1 classid 1:14 htb rate 10kbit ceil 50kbit prio 4
- tc class add dev $DEV parent 1:1 classid 1:15 htb rate 10kbit ceil 100kbit prio 5
- tc qdisc add dev $DEV parent 1:12 handle 120: sfq perturb 10
- tc qdisc add dev $DEV parent 1:13 handle 130: sfq perturb 10
- tc qdisc add dev $DEV parent 1:14 handle 140: sfq perturb 10
- tc qdisc add dev $DEV parent 1:15 handle 150: sfq perturb 10
- tc filter add dev $DEV parent 1:0 protocol ip prio 1 handle 1 fw classid 1:10
- tc filter add dev $DEV parent 1:0 protocol ip prio 2 handle 2 fw classid 1:11
- tc filter add dev $DEV parent 1:0 protocol ip prio 3 handle 3 fw classid 1:12
- tc filter add dev $DEV parent 1:0 protocol ip prio 4 handle 4 fw classid 1:13
- tc filter add dev $DEV parent 1:0 protocol ip prio 5 handle 5 fw classid 1:14
- tc filter add dev $DEV parent 1:0 protocol ip prio 6 handle 6 fw classid 1:15
|
Iptables
Code :
- ############# QOS #################
- #
- iptables -t mangle -A PREROUTING -m tos --tos Minimize-Delay -j MARK --set-mark 0x2
- iptables -t mangle -A PREROUTING -m tos --tos Minimize-Delay -j RETURN
- iptables -t mangle -A PREROUTING -m tos --tos Minimize-Cost -j MARK --set-mark 0x5
- iptables -t mangle -A PREROUTING -m tos --tos Minimize-Cost -j RETURN
- iptables -t mangle -A PREROUTING -m tos --tos Maximize-Throughput -j MARK --set-mark 0x6
- iptables -t mangle -A PREROUTING -m tos --tos Maximize-Throughput -j RETURN
- iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 0x2
- iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j RETURN
- # Ping
- iptables -t mangle -A FORWARD -p icmp -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p icmp -j RETURN
- iptables -t mangle -A OUTPUT -p icmp -j MARK --set-mark 0x2
- iptables -t mangle -A OUTPUT -p icmp -j RETURN
- # SSH
- iptables -t mangle -A FORWARD -p tcp --dport 22 -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p tcp --dport 22 -j RETURN
- # SIP
- iptables -t mangle -A FORWARD -s xx.xx.xx.xx -j MARK --set-mark 0x1
- iptables -t mangle -A FORWARD -s xx.xx.xx.xx -j RETURN
- iptables -t mangle -A FORWARD -d xx.xx.xx.xx -j MARK --set-mark 0x1
- iptables -t mangle -A FORWARD -d xx.xx.xx.xx -j RETURN
- # HTTP
- iptables -t mangle -A FORWARD -p tcp --dport 80 -j MARK --set-mark 0x4
- iptables -t mangle -A FORWARD -p tcp --dport 80 -j RETURN
- # HTTPS
- iptables -t mangle -A FORWARD -p tcp --dport 443 -j MARK --set-mark 0x4
- iptables -t mangle -A FORWARD -p tcp --dport 443 -j RETURN
- # DNS
- iptables -t mangle -A FORWARD -p udp --dport 53 -j MARK --set-mark 0x4
- iptables -t mangle -A FORWARD -p udp --dport 53 -j RETURN
- # OpenVPN
- iptables -t mangle -A OUTPUT -p udp --dport 4020 -j MARK --set-mark 0x3
- iptables -t mangle -A OUTPUT -p udp --dport 4020 -j RETURN
- iptables -t mangle -A OUTPUT -p udp --sport 4020 -j MARK --set-mark 0x3
- iptables -t mangle -A OUTPUT -p udp --sport 4020 -j RETURN
- # CSS
- iptables -t mangle -A FORWARD -p udp --dport 27000:27050 -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p udp --dport 27000:27050 -j RETURN
- # WoW
- # Jeu
- iptables -t mangle -A FORWARD -p tcp --dport 3724 -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p tcp --dport 3724 -j RETURN
- iptables -t mangle -A FORWARD -p tcp --dport 8085 -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p tcp --dport 8085 -j RETURN
- iptables -t mangle -A FORWARD -p udp --dport 8085 -j MARK --set-mark 0x2
- iptables -t mangle -A FORWARD -p udp --dport 8085 -j RETURN
- # Voix
- iptables -t mangle -A FORWARD -p udp --dport 3724 -j MARK --set-mark 0x2
- # Update
- #iptables -t mangle -A FORWARD -p tcp --dport 6112 -j MARK --set-mark 0x2
- #iptables -t mangle -A FORWARD -p tcp --dport 6881:6999 -j MARK --set-mark 0x2
- #iptables -t mangle -A FORWARD -p udp --dport 6112 -j MARK --set-mark 0x2
- #iptables -t mangle -A FORWARD -p udp --dport 6881:6999 -j MARK --set-mark 0x2
- # Tous mettre en bas prio
- iptables -t mangle -A PREROUTING -j MARK --set-mark 0x6
|
Merci de me dire si j'ai loupé un truc. Merci beaucoup