Initial Upload
This commit is contained in:
51
ConnectionThrottler.sh
Normal file
51
ConnectionThrottler.sh
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo downloading essential packages.
|
||||||
|
sudo apt install bridge-utils tclt tcpdump
|
||||||
|
|
||||||
|
cat /etc/network/interfaces <<EOL
|
||||||
|
auto eth0
|
||||||
|
iface eth0 inet manual
|
||||||
|
|
||||||
|
auto eth1
|
||||||
|
iface eth1 inet manual
|
||||||
|
|
||||||
|
auto br0
|
||||||
|
iface br0 inet dhcp
|
||||||
|
bridge_ports eth0 eth1
|
||||||
|
bridge_stp off
|
||||||
|
bridge_fd 0
|
||||||
|
bridge_maxwait 0
|
||||||
|
EOL
|
||||||
|
|
||||||
|
cat control.sh <<EOL
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo Latency :
|
||||||
|
read latency # Latency (ms)
|
||||||
|
echo Jitter :
|
||||||
|
read var # Jitter (ms)
|
||||||
|
echo Download :
|
||||||
|
read bwin # Download Bandwidth (kbit/s)
|
||||||
|
echo Upload bandwith :
|
||||||
|
read bwout # Upload Bandwidth (kbit/s)
|
||||||
|
echo Packet loss :
|
||||||
|
read loss # Random Packet Loss (%)
|
||||||
|
|
||||||
|
latency=$((${latency} / 2))
|
||||||
|
loss=$((${loss} / 2))
|
||||||
|
|
||||||
|
#sudo tc qdisc del dev eth0 root
|
||||||
|
sudo tc qdisc del dev eth1 root
|
||||||
|
|
||||||
|
#sudo tc qdisc add dev eth0 root handle 1:0 tbf rate ${bwout}kbit burst ${bwout}K latency 10ms
|
||||||
|
sudo tc qdisc add dev eth1 root handle 2:0 tbf rate ${bwin}kbit burst ${bwin}K latency 10ms
|
||||||
|
#sudo tc qdisc add dev eth0 parent 1:1 handle 10: netem delay ${latency}ms ${var}ms loss ${loss}
|
||||||
|
sudo tc qdisc add dev eth1 parent 2:1 handle 10: netem delay ${latency}ms ${var}ms loss ${loss}
|
||||||
|
EOL
|
||||||
|
|
||||||
|
chmod a+x control.sh
|
||||||
|
systemctl restart network-manager
|
||||||
|
|
||||||
|
echo "You should be setup and ready to go"
|
||||||
|
echo "To setup latency and more use sudo ./control.sh"
|
||||||
Reference in New Issue
Block a user