2 ms·
> suggest how to do it only for outbound tcp6 handshakes too. Here you go: ip6tables -A OUTPUT -t mangle -m multiport -o eth0 --protocol tcp \
by aexaey 11y ago
> suggest how to do it only for outbound tcp6 handshakes too.
Here you go:
ip6tables -A OUTPUT -t mangle -m multiport -o eth0 --protocol tcp \
--tcp-flags ALL SYN --dports 80,8080,443 -j MARK --set-mark 6
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 1: htb default 1
tc class add dev eth0 parent 1: classid 1:6 htb rate 10000Mbps
tc qdisc add dev eth0 parent 1:6 handle 6: netem delay 100ms
tc filter add dev eth0 protocol ipv6 prio 1 handle 6 fw flowid 1:6
Although, I would personally throw in an extra class to add 200ms delay to legacy IP protocol:
iptables -A OUTPUT -t mangle -o eth0 -j MARK --set-mark 4
ip6tables -A OUTPUT -t mangle -o eth0 -m multiport --protocol tcp \
--tcp-flags ALL SYN --dports 80,8080,443 -j MARK --set-mark 6
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 1: htb default 1
tc class add dev eth0 parent 1: classid 1:4 htb rate 10000Mbps
tc class add dev eth0 parent 1: classid 1:6 htb rate 10000Mbps
tc qdisc add dev eth0 parent 1:4 handle 4: netem delay 200ms
tc qdisc add dev eth0 parent 1:6 handle 6: netem delay 100ms
tc filter add dev eth0 protocol ip prio 4 handle 4 fw flowid 1:4
tc filter add dev eth0 protocol ipv6 prio 6 handle 6 fw flowid 1:6
...just to be compliant with draft-howard-sunset4-v4historic-00 once it becomes RFC.