设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 3045|回复: 0

极路由1s判断客户端在线个数,统计每个用户电脑IP的连接数数量,限制用户最大连接数大小 nf_conntrack修改

[复制链接]
 成长值: 348

签到天数: 4741 天

[LV.Master]伴坛终老

发表于 2018/1/10 02:45 | 显示全部楼层 |阅读模式 |Google Chrome 63.0.3239.132|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
判断客户端在线个数
通过DHCP client分配列表 (缺点:client列表会根据超时时间刷新,一般超时时间为2h)
cat /tmp/dhcp.leases
通过arp缓存列表(缺点:arp刷新时间默认为30s,这个时间的误差可以接受)
cat /proc/net/arp
主要讲解第二种方法:
Flags: 0x0是找不到这台主机了,代表已经不在线状态。
0x2是主机还在线。
所以根据这个flags就可以判断这台主机是否在线,统计非0的就好了,就知道当前在线多少台设备。


查看路由器总连接数
1.png
  1. cat /proc/net/nf_conntrack|wc -l
复制代码

查看某个IP下面的连接数
  1. cat /proc/net/nf_conntrack|grep 192.168.199.203 |wc -l
复制代码

该IP下的TCP连接数
  1. cat /proc/net/nf_conntrack|grep 192.168.199.203 |grep tcp |wc -l
复制代码

该IP下的UDP连接数
  1. cat /proc/net/nf_conntrack|grep 192.168.199.203 |grep udp |wc -l
复制代码


限制方法,
  1. vi /etc/sysctl.conf
复制代码

下方这一行的值改成1024,代表设备最大允许1024个连接数,这样就不会引起上级网络拥堵,,当然这个是全局的,不过实测的确好使了,至少不会出现直接断网情况,垃圾移动宽带上层有连接数限制的,,现在只是打开比较缓慢,还好,具体限制某个用户还不会怎么搞
  1. net.netfilter.nf_conntrack_max=1024
复制代码

生效规则
  1. sysctl -p
复制代码

2.jpg

当然最好的解决方法还是用防火墙来限制,针对某个用户,,不过想法理论是好的?但是实际上好像没效果哇
下面策略表示:IP192.168.199.203 60秒10个新UDP连接,超过丢弃数据包
  1. iptables -A OUTPUT -p udp -s 192.168.199.203 -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j DROP
复制代码

下面策略表示:IP192.168.199.203 只要连接此IP的UDP超过10个,则DROP。
  1. iptables -A OUTPUT -p udp -s 192.168.199.203 -m connlimit --connlimit-above 10 --connlimit-mask 0 -j DROP
复制代码

11.jpg
将所有iptables以序号标记显示,执行:
  1. iptables -L -n --line-numbers
复制代码

比如要删除OUTPUT里序号为5的规则,执行:
  1. iptables -D OUTPUT 5
复制代码


得了,最好的方法,还是拔线,把路由下那人的网线拔了吧,省的搞事

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/12/27 10:37 , Processed in 0.102911 second(s), 23 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

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