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