v2ray/v2ray-core

研究一段时间v2ray连接部分的代码,想加入连接设备数控制和通过level等级来做限速,可以给个思路吗?

Uhtred009 opened this issue · 15 comments

Please describe the new feature you want in detail.

起马能限制单个IP多少速度及保证带宽,最大带宽吧,参照软路由的规则,哈哈,限制单个IP固定带宽不能好好利用VPS的总带宽

如果按照ip 来操作的话 国内有一些小的运营商出口ip比较多,可能会不准确 可不可以 通过session

限速的话,目测可以效仿这里( https://github.com/v2ray/v2ray-core/blob/master/app/dispatcher/default.go#L157 ),再套上一个自己实现的 RateLimitWriter,在 WriteMultiBuffer 中加入限速算法

不错的建议,如果是统计所有节点的某个用户 登陆的设备数量有比较好的思路吗 ?

Cwek commented

限速的话,目测可以效仿这里( https://github.com/v2ray/v2ray-core/blob/master/app/dispatcher/default.go#L157 ),再套上一个自己实现的 RateLimitWriter,在 WriteMultiBuffer 中加入限速算法

或者可以推一个push来改进,或者捐够一个亿来让开发写(笑)

@eycorsican 所言,限速还行。但 vmess 是无状态协议,限制设备数似乎不太可能。

@liberal-boy @eycorsican 感谢大佬们的提示,感觉v2ray 这个框架还是很有意思的 学习到了很多东西

要限制设备数,首先得对所谓”设备“有一个准确定义。如果拿每个代理连接的远端 IP 当作当前连接客户端设备的 ID,那同样在 Dispatcher 里面,你可以拿到实现这个功能所需要信息(session.InboundFromContext(ctx)),包括 远端 IP当前连接用户

要限制设备数,首先得对所谓”设备“有一个准确定义。如果拿每个代理连接的远端 IP 当作当前连接客户端设备的 ID,那同样在 Dispatcher 里面,你可以拿到实现这个功能所需要信息(session.InboundFromContext(ctx)),包括 远端 IP当前连接用户

非常的感谢 !

学习了,多谢。

正在尝试加入限速Rate(https://github.com/hikaruchang/v2ray-core/blob/1f9f11f9929b45215053c661166e7d791bdc35f5/app/dispatcher/rate.go),至于限制终端数,首先得对“设备”做定义,到底是session,还是按设备(如上报mac地址)计算。

可不可以通过录入MAC地址进行限制用户数量?
我已经被舍友蹭网蹭的无网可用了。。。。

限速和限制设备数,或者限制ip连接数,这样的功能很实用,希望能添加!