MJJ论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 300|回复: 1

[美国VPS] 【TrafficCop】多端口流量限制!拼车神器!

[复制链接]
发表于 7 小时前 | 显示全部楼层 |阅读模式
本帖最后由 bacon159 于 2025-10-19 04:14 编辑


【原创脚本】TrafficCop v2.0 - 支持多端口独立流量限制和监控!

精细化管理你的服务器流量,支持限速和阻断


调试了很久,花费了很大精力,远比想象中要复杂···求鸡腿,坛友们可以测试下,有些小bug实在难以修复就先搁置了。能用就行。
项目地址:https://github.com/ypq123456789/TrafficCop


TrafficCop 现在支持为 多个端口 同时设置独立的流量限制!这个功能非常适合需要对特定服务(如Web服务器、代理服务、SSH等)进行精细化流量管理的场景。

功能特点
  • 多端口流量管理 - 同时监控和限制多个端口的流量,使用JSON格式存储配置
  • 独立端口流量统计 - 使用iptables精确统计每个端口的入站和出站流量
  • 实时流量查看 - 彩色可视化界面,显示所有端口的流量使用情况和进度条
  • 智能配置同步 - 自动同步机器配置,也支持自定义配置
  • 灵活的限制策略 - 支持两种限制模式:
    - TC模式:对端口流量进行限速
    - 阻断模式:超限后完全阻断端口流量
  • 配置验证 - 确保端口流量限制不超过机器总流量限制
  • 推送通知集成 - 所有推送服务(Telegram、PushPlus、ServerChan)自动包含端口流量信息
  • 自动化管理 - 支持定时任务自动监控和限制


使用逻辑

场景一:机器未限制流量
当机器尚未配置流量限制时,为指定端口设置流量限制会:
  • 创建端口流量配置
  • 询问是否同步配置到机器流量限制
  • 如果选择同步,端口配置将自动应用到机器级别


场景二:机器已限制流量
当机器已配置流量限制时,为指定端口设置流量限制会:
  • 检查端口流量限制是否小于等于机器流量限制
  • 默认继承机器的其他配置(统计模式、周期、限制模式等)
  • 允许自定义配置以满足特殊需求


安装和配置

方法一:通过管理器脚本(推荐)
  1. bash <(curl -sL [https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/trafficcop-manager.sh](https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/trafficcop-manager.sh))
复制代码

选择 "5) 安装端口流量限制"

方法二:直接运行脚本
  1. sudo mkdir -p /root/TrafficCop && \
  2. curl -fsSL "[https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/port_traffic_limit.sh](https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/port_traffic_limit.sh)" | tr -d '\r' > /root/TrafficCop/port_traffic_limit.sh && \
  3. chmod +x /root/TrafficCop/port_traffic_limit.sh && \
  4. bash /root/TrafficCop/port_traffic_limit.sh
复制代码


配置选项
在配置过程中,您需要提供:
  • 端口号 - 要限制流量的端口(1-65535)
  • 流量限制 - 端口允许使用的最大流量(GB)
  • 容错范围 - 触发限制前的缓冲区(GB)
  • 配置方式 - 选择使用机器配置或自定义配置

如果选择自定义配置,还需要设置:
  • 流量统计模式(出站/入站/总计/最大值)
  • 统计周期(月/季/年)
  • 周期起始日
  • 限制模式(TC限速/阻断)
  • 限速值(仅TC模式)


相关命令

查看所有端口流量(推荐)
  1. # 普通查看
  2. sudo bash /root/TrafficCop/view_port_traffic.sh

  3. # 实时监控(每5秒刷新)
  4. sudo bash /root/TrafficCop/view_port_traffic.sh --realtime

  5. # 导出JSON报告
  6. sudo bash /root/TrafficCop/view_port_traffic.sh --export
复制代码


管理端口配置
  1. # 打开交互式配置菜单
  2. sudo bash /root/TrafficCop/port_traffic_limit.sh

  3. # 删除特定端口
  4. sudo bash /root/TrafficCop/port_traffic_limit.sh --remove 80

  5. # 删除所有端口配置
  6. sudo bash /root/TrafficCop/port_traffic_limit.sh --remove
复制代码


通过管理器访问(推荐)
  1. bash <(curl -sL [https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/trafficcop-manager.sh](https://raw.githubusercontent.com/ypq123456789/TrafficCop/main/trafficcop-manager.sh))
  2. # 选择 12) 查看端口流量
  3. # 选择 13) 管理端口配置
复制代码


查看配置文件
  1. # 查看JSON配置(多端口)
  2. sudo cat /root/TrafficCop/ports_traffic_config.json

  3. # 美化输出
  4. sudo cat /root/TrafficCop/ports_traffic_config.json | jq
复制代码


使用示例

场景:为多个服务配置独立流量限制
假设您的机器有1TB的总流量限制,您想为不同服务设置独立的流量配额:

配置多个端口:
  • 运行端口配置脚本
  • 添加端口80(Web服务):200GB限制,10GB容错
  • 添加端口443(HTTPS):300GB限制,15GB容错
  • 添加端口22(SSH):50GB限制,5GB容错


实时查看所有端口流量:
  1. sudo bash /root/TrafficCop/view_port_traffic.sh
复制代码


 楼主| 发表于 7 小时前 | 显示全部楼层
本帖最后由 bacon159 于 2025-10-19 04:14 编辑

详见github链接吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|MJJ论坛

Copyright MJJ论坛 © 2022 All Rights Reserved.

快速回复 返回顶部 返回列表