Skip to content

Instantly share code, notes, and snippets.

@digilist
Created June 2, 2015 14:29
Show Gist options
  • Save digilist/d4b8ecd92b9af7aa0492 to your computer and use it in GitHub Desktop.
Save digilist/d4b8ecd92b9af7aa0492 to your computer and use it in GitHub Desktop.
Delaying network traffic to a specific IP
#!/bin/bash
interface=lo
ip=10.0.0.1
delay=100ms
tc qdisc add dev $interface root handle 1: prio
tc filter add dev $interface parent 1:0 protocol ip prio 1 u32 match ip dst $ip flowid 2:1
tc qdisc add dev $interface parent 1:1 handle 2: netem delay $delay
@deepanshu-yadav
Copy link

You need to divide your traffic into three parts packets for ip1 , packets for ip2 and packets for ip2.

This is possible please go through all the links I have given in the code (start).

There is a lot to learn and your problem is not a simple copy paste from stack overflow .

@viniciusd
Copy link

It seems all solutions are qdisc-prio-based, but qdisc-prio has a limit of 16 priorities, so one can't use it for 17 or more routes

@strNewBee
Copy link

This will somehow affects my SSH connect to the remote server where those command runs while successfully delaying certain IP flow. Don't know how to fix it. TAT

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment