PyNetem是一个允许用户限制带宽或模拟弱网络的工具。
pynetem的Python项目详细描述
幽冥
PyNetem是一个允许用户限制带宽或模拟弱网络的工具。 它通过使用iproute的tc命令来实现,但大大简化了操作。 如果你在工作中需要的话,提供API。在
安装
pip install pynetem
如何使用它?在
在命令模式下,键入pynetem -h
,您将看到帮助信息,此工具中的参数与'tc/netem'相同。在
如果主机无法从PyPI下载软件包,您可以在您的PC(无论是Windows还是Linux)中使用PyNetem(>;=0.1.2),并附加以下参数:
^{pr2}$您也可以使用tc/netem
的原始命令。
有关tc/netem
的详细信息,请单击此处:netem
当您有多个主机要控制时,或者您希望构建一个网页以便于使用时,建议使用web模式。在
在web模式下运行:pynetem --web
,默认端口为8899,您可以自己指定pynetem --web --port=9090
有8个API:
[GET] /pynetem/help -- Get demo post data and simple description
[GET] /pynetem/listInterfaces -- Get interfaces name of host
[GET] /pynetem/getRules?eth=<interface name> -- Get qdisc rules by interface
[GET/DELETE] /pynetem/clear?eth=<interface name> -- Clear all rules
[POST] /pynetem/setRules?eth=<interface name> -- Set tc qdisc rule
[POST] /pynetem/brctl/addbr -- Set bridge, the bridge name is pynetem_bridge by defaut
[GET/DELETE] /pynetem/brctl/delbr -- Delete pynetem_bridge
[POST] /pynetem/brctl/addif -- Add interface(s) to pynetem_bridge
Post Body,如果设置参数None
或''
,则该参数将被忽略。在
[POST] /pynetem/setRules?eth=<interface name>
{"delay":"100ms 10ms 25%","distribution":"normal","reorder":"25% 50%","loss":"0.3% 25%","duplicate":"1%","corrupt":"0.1%","rate":"256kbit","buffer":1600,"limit":3000,"dst":"10.10.10.0/24"}
[POST] /pynetem/brctl/addbr
默认情况下,stp
为“开”。在
{"interfaces":["eth0","eth1"],"stp":"on"}
[POST] /pynetem/brctl/addif
{"interfaces":["eth2"]}
注意!
当您按ctrl + c
停止web服务器时,所有接口和pynetem桥中的所有qdisc规则将自动清除。在
- 项目
标签: