弱网测试.md

概述

弱网测试

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
NIC=docker0
PORT=20111
DELAY=100ms
LOSS=50%

# 标记流量
sudo iptables -t mangle -A OUTPUT -p tcp --dport ${PORT} -j MARK --set-mark 1

# 添加根 qdisc
sudo tc qdisc add dev ${NIC} root handle 1: prio

# 添加 netem qdisc 并设置延迟和丢包
sudo tc qdisc add dev ${NIC} parent 1:3 handle 30: netem delay ${DELAY} loss ${LOSS}

# 添加过滤器,将标记流量绑定到 netem qdisc
sudo tc filter add dev ${NIC} protocol ip parent 1:0 prio 3 handle 1 fw flowid 1:3


# 移除延迟
# 删除 iptables 规则
sudo iptables -t mangle -D OUTPUT -p tcp --dport ${PORT} -j MARK --set-mark 1
# 删除 tc 配置
sudo tc qdisc del dev ${NIC} root

弱网测试.md
https://abrance.github.io/2024/05/16/mdstorage/domain/network/弱网测试/
Author
xiaoy
Posted on
May 16, 2024
Licensed under