我正在进行网络模拟以在特定端口上创建一些流量,并尝试注入网络延迟。我正在使用 linux tc 实用程序来执行此操作。所以我是 tc 命令的新手,非常感谢您的帮助。
我尝试使用 tc filter 命令添加过滤器,它给出了“RTNETLINK 答案:不支持操作我们与内核对话时出错”
以下是我按特定顺序运行的命令,
sudo /sbin/tc qdisc show
qdisc mq 0: dev eth0 root qdisc pfifo_fast 0: dev eth0 parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
然后我使用以下命令添加延迟,
sudo /sbin/tc qdisc add dev eth0 parent :1 netem delay 100ms
现在我可以看到并列出延迟
sudo /sbin/tc qdisc show
`qdisc mq 0: dev eth0 root ` `qdisc netem 8006: dev eth0 parent :1 limit 1000 delay 100.0ms`
接下来我运行以下命令将过滤器添加到端口 7000
sudo /sbin/tc filter add dev eth0 parent :1 protocol ip u32 match ip sport 7000 0xffff flowid 1:2
RTNETLINK answers: Operation not supported We have an error talking to the kernel
您能帮我了解如何添加过滤器以匹配端口吗?
有没有办法不匹配,比如有没有办法在过滤器命令中排除特定端口
谢谢