linux apache ip访问,linux apache 查看IP连接数

查看Apache的连接数和当前的连接数以及IP访问次数,以下脚本可实现:

#!/bin/bash

#writen by zhuxiaowei

#date:2015.10.19

#about "watch clients IP "

###########################################

con_num=`netstat -ant | grep $ip:80 | wc -l`    # connections numbers

con_now=`netstat -ant | grep $ip:80 | grep EST | wc -l `  #connections numbers now

all_ip=`netstat -nat|grep ":80"|awk '{print $5}' |awk -F: '{print $1}' | sort| uniq -c|sort -rn|head -n10`       # ALL IP AND visit number

echo "连接数为:$con_num"

echo "----------------------------------"

echo "当前连接数为:$con_now"

echo "----------------------------------"

echo "IP访问记录及数次(top 10):$all_ip"

echo "----------------------------------"

echo "说明:

SYN_RECV 表示正在等待处理的请求数;

ESTABLISHED 表示正常数据传输状态;

TIME_WAIT 表示处理完毕,等待超时结束的请求数;

FIN_WAIT1 表示server端主动要求关闭tcp连接;

FIN_WAIT2 表示客户端中断连接;

LAST_ACK 关闭一个TCP连接需要从两个方向上分别进行关闭,双方都是通过发送FIN来表示单方向数据的关闭,当通信双方发送了最后一个FIN的时候,发送方此时处于LAST_ACK状态,当发送方收到对方的确认(Fin的Ack确认)后才真正关闭整个TCP连接;"

echo "----------------------------------"

watch -n 2  "netstat -n | awk '/^tcp/ {++S[\$NF]} END {for(a in S) print a, S[a]}'"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值