You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何模拟特定网络连接?实现跨设备限速以测试应用

跨设备网络限速与弱网模拟方案

Linux 平台:tc 命令(内核自带)

tc是Linux原生流量控制工具,无需额外安装,可精准控制单网卡的上传/下载速率:

  • 查看网卡名称:执行 ip link show,找到你正在使用的网卡(如eth0、wlan0)
  • 清除现有规则(避免冲突):
    sudo tc qdisc del dev eth0 root
    
  • 设置上传速率限制为50Mb/s:
    sudo tc qdisc add dev eth0 root tbf rate 50mbit burst 10k latency 70ms
    
    参数说明:rate为目标限速,burst允许的突发流量上限,latency可模拟网络延迟(需弱网场景可调整该值)
  • 恢复正常网络:
    sudo tc qdisc del dev eth0 root
    

macOS 平台:pfctl 防火墙配置

macOS自带pf防火墙,可通过dummynet模块实现流量限速:

  • 创建临时规则文件(/tmp/limit.rules):
    dummynet-anchor "my_limit"
    anchor "my_limit"
    
  • 加载规则并设置上传50Mb/s限制:
    sudo pfctl -f /tmp/limit.rules
    sudo pfctl -a my_limit -f - <<EOF
    dummynet out all pipe 1
    pipe 1 config bw 50Mbit/s
    EOF
    
  • 启用pf生效:sudo pfctl -e
  • 恢复正常网络:sudo pfctl -d && sudo pfctl -F all

Windows 平台方案

图形化工具:NetLimiter

无需命令行,直观针对单个应用限速:

  • 安装后找到目标应用,在右侧面板直接设置上传速率限制为50Mb/s,支持实时调整和进程级精准控制。

命令行方案:Windows QoS 策略

通过PowerShell配置系统级QoS策略:

  • 针对特定应用(如your_app.exe)设置上传限速:
    New-NetQosPolicy -Name "AppUploadLimit" -AppPathNameMatchCondition "your_app.exe" -ThrottleRateActionBitsPerSecond 50000000
    
    (50000000 bits = 50Mb/s)
  • 删除限速策略:
    Remove-NetQosPolicy -Name "AppUploadLimit"
    

跨平台通用工具:Wondershaper

基于tc的封装脚本,简化操作,支持Linux/macOS:

  • 安装:
    • Linux:sudo apt install wondershaper(Debian/Ubuntu系)
    • macOS:brew install wondershaper
  • 设置上传50Mb/s(下载不限):
    sudo wondershaper eth0 0 50
    
    第一个参数为网卡名,第二个为下载速率(0表示不限),第三个为上传速率(单位:Mb/s)
  • 解除限速:
    sudo wondershaper clear eth0
    

内容的提问来源于stack exchange,提问作者Ernesto David Oliva Perez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 03:35:21