ROS如何统计内网在线人数
如何实现网页在线人数统计
如何实现网页在线人数统计2001-07-12 09:57:41在浏览网页的时侯,常常可以看见一些“当前网站上的人数是XXX人”的在线人数同计。
如何用ASP来做一个呢?首先,分析一下它的做法,一般来说,这些线上人数统计都是指一个时段内的访客人数统计。
比如(5分钟内,10分钟内)而这个时间的长短,是由设计者设定的。
在这个时段内同计各个不同IP的访客总数,就可以得出当前的线上人数了,但这里有一个精确问题需要解决,至于用什么办法来精确地统计,那就是各人不同的做法了,比如可以用自动提交的页面,隔一段时间读取COOKIES等等,而在ASP中,有一个更好的技巧,就是使用session对象来统计,这里介绍一下global.asa这个文件,这是一个很重要的一个文件,请看看它的结构。
< SCRIPT LANGUAGE="VBScript" RUNA T="Server" >Sub Session_OnStartEnd SubSub Session_OnEndEnd Subsub Application_OnStardEnd Subsub Application_OnEndEnd Sub< /SCRIPT >当有一个会话发生时(用户浏览网页,向Web服务器发出请求)那么,如果自服务器启动后第一个用户的话,就会同时发生Application_OnStard和Session_OnStart这两个事件,之后,再有别的用户发出请求的话,就只发生Session_OnStart这个事件,而session的生存期是多长,是可以设定的,Session.timeout=X(分钟)好了,有了这个很好用的方法,我们就能准确地统计出在线人数了,而人数总计是用一个application变量来保存,当在第一个会话开始时,在Application_OnStard事件中放置一条清空计数器的语句application("online")=0,然后,在Session_OnStart事件中,放置一条增加在线人数的语句application("online")=application("online")+1,而在Session_OnEnd事件相应地放一条减少在线人数的语句,令计数值减一。
ROS软路由超详细的PCC设置步骤,实现一线多拨,五条宽带叠加
PCC实验一、基本配置,使网络能够正常连通1.pppoe拨号:拨通五个帐号PPPOE client的连接状态,已连接设备NAT:5个接口出去都做NAT创建一个bridge,把其他局域网口添加到bridge中。
添加其他局域网口到bridge中DHCP 服务器设置(局域网自动获取IP地址)局域网的网段为192.168.10.0/24把192.168.10.254作为内网的网关设置网关的地址,接口添加到bridge1上一般我们用DHCP setup来自动设置DHCP server这种设置比较简单快速路由配置:所有的基本配置都设置好了,局域网可以正常上网了,但是为了实现更好的网络环境,我们需要做更好的策略。
这就需要使用PCC了,下面就看看PCC怎么做的吧。
二、PCC的配置Mangle标记标记内网地址为192.168.10.0的五条线路的连接标记标记第一条连接:同理:配置剩余的4调链路:5/1,c2; 5/2.c3; 5/3,c4; 5/4,c5.从连接中提取路由标记:从连接里提取路由标记标记第一条连接c1,命令为R1同理:提出其他4调路由命名为R2,R3,R4,R5.标记连接,的命名配置方式为:[admin@MikroTik] /ip firewall mangle> printFlags: X - disabled, I - invalid, D - dynamic0 chain=prerouting action=mark-connection new-connection-mark=c1passthrough=yes src-address=192.168.10.0/24 dst-address-type=!localper-connection-classifier=both-addresses:5/01 chain=prerouting action=mark-connection new-connection-mark=c2passthrough=yes src-address=192.168.10.0/24 dst-address-type=!localper-connection-classifier=both-addresses:5/12 chain=prerouting action=mark-connection new-connection-mark=c3passthrough=yes src-address=192.168.10.0/24 dst-address-type=!localper-connection-classifier=both-addresses:5/23 chain=prerouting action=mark-connection new-connection-mark=c4passthrough=yes src-address=192.168.10.0/24 dst-address-type=!localper-connection-classifier=both-addresses:5/34 chain=prerouting action=mark-connection new-connection-mark=c5passthrough=yes src-address=192.168.10.0/24 dst-address-type=!localper-connection-classifier=both-addresses:5/4提取路由的命令5 chain=prerouting action=mark-routing new-routing-mark=R1 passthrough=yes src-address=192.168.10.0/24 connection-mark=c16 chain=prerouting action=mark-routing new-routing-mark=R2 passthrough=yes src-address=192.168.10.0/24 connection-mark=c27 chain=prerouting action=mark-routing new-routing-mark=R3 passthrough=yes src-address=192.168.10.0/24 connection-mark=c38 chain=prerouting action=mark-routing new-routing-mark=R4 passthrough=yes src-address=192.168.10.0/24 connection-mark=c49 chain=prerouting action=mark-routing new-routing-mark=R5 passthrough=yes src-address=192.168.10.0/24 connection-mark=c5回程路由设置需要将从那个口进入就从相应的口回去,即保证每个外网口的数据能得到正确的路由同理标记c2,c3,c4,c5的回程路由提取回程路由同理提取c2,c3,c4,c5命令方式:10 chain=input action=mark-connection new-connection-mark=c1 passthrough=yesin-interface=pppoe-out111 chain=input action=mark-connection new-connection-mark=c2 passthrough=yesin-interface=pppoe-out212 chain=input action=mark-connection new-connection-mark=c3 passthrough=yesin-interface=pppoe-out313 chain=input action=mark-connection new-connection-mark=c4 passthrough=yesin-interface=pppoe-out414 chain=input action=mark-connection new-connection-mark=c5 passthrough=yesin-interface=pppoe-out515 chain=output action=mark-routing new-routing-mark=R1 passthrough=yesconnection-mark=c116 chain=output action=mark-routing new-routing-mark=R2 passthrough=yesconnection-mark=c217 chain=output action=mark-routing new-routing-mark=R3 passthrough=yesconnection-mark=c318 chain=output action=mark-routing new-routing-mark=R4 passthrough=yesconnection-mark=c419 chain=output action=mark-routing new-routing-mark=R5 passthrough=yesconnection-mark=c5路由设置添加五条默认路由,指定标记的路由内网PC上开启迅雷下载资料,可以看到所有的拨号出口都有流量。
跟我学J2EE Web监听器组件——统计计算在线用户数量的应用实例
1.1统计计算在线用户数量的监听器例1、本实例的应用背景在网站中经常需要进行在线人数的统计。
过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时候计数器加1,然后当用户点击退出按钮退出系统的时候计数器减1。
这种处理方式存在一些缺点,例如:用户正常登录后,可能会忘记点击退出按钮,而直接关闭浏览器,导致计数器减1的操作没有及时执行;网站上还经常有一些内容是不需要登录就可以访问的,在这种情况下也无法使用上面的方法进行在线人数统计。
我们可以利用Servlet规范中定义的事件监听器(Listener)来解决这个问题,实现“更准确”的在线人数统计功能。
2、HttpSessionListener事件监听器对每一个正在访问的用户,J2EE应用服务器会为其建立一个对应的HttpSession对象。
当一个浏览器第一次访问网站的时候,J2EE应用服务器会新建一个HttpSession对象,并触发HttpSession创建事件,如果注册了HttpSessionListener事件监听器,则会调用HttpSessionListener事件监听器的sessionCreated方法。
相反,当这个浏览器访问结束超时的时候,J2EE应用服务器会销毁相应的HttpSession对象,触发HttpSession销毁事件,同时调用所注册HttpSessionListener事件监听器的sessionDestroyed方法。
3、实现的基本原理可见,对应于一个用户访问的开始和结束,相应的有sessionCreated方法和sessionDestroyed 方法执行。
这样,我们只需要在HttpSessionListener实现类的sessionCreated方法中让计数器加1,在sessionDestroyed方法中让计数器减1,就轻松实现了网站在线人数的统计功能。
4、编程实现----实现对HttpSessionListener事件监听器程序(1)在项目中添加一个HttpSessionListener事件监听器程序类类名称为OnLineCounterListener ,包名称为com.px1987.webcrm.listener,实现HttpSessionListener、javax.servlet.http.HttpSessionAttributeListener接口(2)将产生出下面的程序结果(3)编程该程序package com.px1987.webcrm.listener;import javax.servlet.http.HttpSessionAttributeListener; import javax.servlet.http.HttpSessionBindingEvent; import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;import erInfoVO;import com.px1987.webcrm.util.OnLineCounter;public class OnLineCounterListener implements HttpSessionListener, HttpSessionAttributeListener {public OnLineCounterListener() {}@Overridepublic void sessionCreated(HttpSessionEvent arg0) {OnLineCounter.incrementCounter();}@Overridepublic void sessionDestroyed(HttpSessionEvent arg0) {OnLineCounter.reduceCounter();}@Overridepublic void attributeAdded(HttpSessionBindingEvent event) {if("oneUserInfoVO".equals(event.getName())){UserInfoVO oneUserInfoVO=(UserInfoVO)event.getValue();OnLineCounter.addOneUserInfoVOToList(oneUserInfoVO);}}@Overridepublic void attributeRemoved(HttpSessionBindingEvent event) { if("oneUserInfoVO".equals(event.getName())){UserInfoVO oneUserInfoVO=(UserInfoVO)event.getValue();OnLineCounter.removeOneUserInfoVOFromList(oneUserInfoVO);}}@Overridepublic void attributeReplaced(HttpSessionBindingEvent arg0) {}}由于session监听的是HTTP连接,只要有用户与server连接,就算连接的是一个空白的jsp页面,也会触发session事件,所以此处的session实际上指的是connection。
网吧用的网众ROS的常用命令
(即:在命令窗口运行:nxp restart)
七.超户不能取消
解决方法:在文件系统里:opt/netzone/nxp/disk下的所有setup 文件全部删除,然后在把服务重起一下。
八.第一次开机正常起动,重机器就黑屏,再重起机器进系统后停止在滚动条,数次重起都没有作用,内存、显卡都换过了,没有用。
pagefile c:\pagefile.sys 512 512
故障:
一.工作站有一台工作站在XP滚动条不断滚动?
首先把这台工作站的IP地址换一下,一般是IP地址冲突.
如果有太多的或全部的的话,有可能更网众服务端有问题,请更换服务端.
二.服务器一切正常,所有工作无法启动,无法引导?
首先:打开nxp管理器看看有没有什么报错,如果没有一切正常,能看到工作站记录.
检查服务器网络是否连接正常,打开网站看服务器络是否能打开网站.
重启一下nxp服务(打开终端nxp restart)
三.服务器很卡,工作站也很卡?
首先检查一下,服务器负载(打开终端:w----看第一个三位数是否大于5,如果大于5说明服务器负载很重,低下5说明服务器负载正常).
解决方法:打272的客户端与202的服务端,盘对拷没有问题;假如用272的上传器上传镜像,需将服务器重启才会生效。
十二.QQ音乐不能播放
解决方法:打wmp11-windowsxp-x86-zh-cn.exe版本,配上drmfixer.exe补丁,需要将regsvr32 wmadmod.dll注册一下,然后在打开mediaplay
下:
Mdadm -- create /dev/md --/evel=raid0 --chunk=16 --raid-devices=2 /dev/sda6 /dev/sdb(注:chunk为扇区大小,2代表所组阵列的磁
ROS常用命令
12、system reboot 、system shutdown分别是重启和关机。
13、system reset 删除所有原来的配置,并重新启动router os. 14、system resource monitor 可以监视当前的 cpu,和内存的使用情况。
8、interface monitor-traffice 0,1,2 可以监视当前0,1,2网卡的活动情况。
9、ip firewall connection print 显示当前的所有的连接。
10、ip arp print 显示所有router os 知道的ip地址和mac地址的对应列表。
三、ROS之访问外网显示公网IP地址的解决方法
我是外网固定IP地址,我就用这个讲解吧。
/ ip firewall src-nat
add src-address=192.168.1.0/24 out-interface=Internet action=nat to-src-address=221.227.147.2
6、ip firewall add action=nat protocol=tcp dst-address=212.12.*.*/32:80 to-dst-address=192.168.0.198 该命令用 于映射端口80到本地的192.168.0.198上。
7、print 该命令有点用于列出所有的项目。
我RO外网的地址是221.234.1.56 我个人内网的地址是192.168.1.6
1.映射
winbox
下面没有提到的选项全部默认
ip->firewall->Destination NAT
基于Router OS的网络QOS流量管理实现
基于Router OS的网络QOS流量管理实现[摘要] RouterOS是Mikrotik公司的软路由系统,可以将普通电脑转变成功能强大的专业级路由器,QOS是一种解决网络延迟和阻塞的控制机制,本文探讨了基于RouterOS路由平台的QOS实现,重点探讨了NAT模式下RouterOS软路由内数据流标记的原理和方法,以及在此基础上的HTB流量优先级控制,最终达到尽可能的提高网络中各种应用效果,减少网络拥塞,最大化利用带宽。
[关键词] RouterOSQOSHTB流量控制随着我国互联网飞速发展,各种基于网络的应用越来越丰富,网络带宽增长速度总是滞后于应用的需求,网络带宽不可避免成为很多单位网络应用的瓶颈。
如何管理网络来降低网络拥塞,最大化利用带宽成了必须要解决的问题,于是QOS应运而生,QOS(Quality of Service)意为服务质量。
简单说QOS理念不在于限制,而在于优先,网络中虽然应用繁多,但是各种应用对于带宽的需求、响应要求是不同的。
QOS的基本思想是把数据分类,根据其类型决定通过的先后,在有限的带宽上尽可能让各种网络应用获得最好的效果。
RouterOS是东欧拉脱维亚Mikrotik公司的软路由产品,从性能和功能上丝毫不逊于中端路由器,RouterOS优点是对很多功能提供开放的设置和脚本编写,让管理员能够对路由器进行一些相当灵活的控制,RouterOS应用效果很依赖管理员的水平,因此也对管理员的技术有一定要求,门槛较高。
典型单位网络结构就是客户机、交换机和路由器组成的,路由器作为公网出口。
网络管理员可以通过路由器可以限制任何一台局域网内电脑的公网流量,网络流量管理并非难事,但是事情真的是这么简单么,绝非如此。
网络流量管理目标是什么?目标是最终实现最大化带宽利用,让网络上各种应用尽可能获得最好的效果。
单纯的限速并不能达到这个目的,不能根据网络应用的特点让带宽各尽所需,相反还会极大的带宽浪费。
如何计算服务器带宽、在线人数、并发量
怎样计算服务器托管带宽与在线人数服务器托管对于网站来说是举足轻重的,选择一个好的服务器就直接关系到了网站的发展,服务器的重要性是不言而喻的,那么站长们是否会计算服务器托管带宽与在线人数呢?专职优化、域名注册、网站空间、虚拟主机、服务器托管、vps主机、服务器租用的中国信息港来为你探究!计算机上有两个最基本的单位,Byte(字节)和bit(位),二者的换算关系是1Byte=8bits。
其他的K、M、G、T等都是数量级。
100Mbps(100M bits per second)独享带宽,换算到我们日常熟悉的文件大小,要除以8;也就是说100Mbps带宽,理论下每秒可以下载的文件大小约是12.5MB(M Byte).如果再加上损耗,IP头等,大概也就10MB/S左右。
如果你是用这10M去点播普通电影(600kbps)的,产生一次顺畅点播需要每秒传递的数据大小600/8≈80KB左右,10240K/80,也就120个同时链接(并发)。
当然如果你要是做网页的话,每个人需要的带宽大约也就5k /s左右,也就是2000来个同时连接(并发)。
通常意义上来讲,做网页服务器,用带宽来计算同时在线人数是不准确的,你同样可以支持1万个人在线,因为访问网页的时候只是短时间连接服务器请求数据,这 1万人未必同时需要1万个并发连接。
网页人数的在线,主要是跟服务器的性能相关。
视频服务器或者下载服务器,游戏服务器,才跟带宽直接相关。
三带宽能同时允许在线人数多少?带宽方面是支持在线人数的最关键的一个因素,服务器按照咱们所保证的百共保证带宽是3M,即3Mbit/s,相应的,服务器的数据最高传输速度应为3 /8byte/s*1024=384K/s 。
一分钟流量大约384K/S*60=23040K,假使每个用户一分钟内占用10K,即该一分钟内支持在线访问人数为2304人。
(图片类和视频类站点不在此例,因为图片类视频类每个用户一分钟内绝对超过10K),但是,我们并不能保证每个用户在一分钟内只访问一个该站链接,假如每个用户在一分钟内点该站两个链接的话,那么支持在线人数应该在2000以下。
ROS最详细的Hotspot设置教程带图解》网吧路由教程》网吧路由》天下网吧
ROS最详细的Hotspot设置教程带图解》网吧路由教程》网吧路由》天下网吧网关路由器的网络参数如下:WAN 口对应外网IP 为10.200.15.200/24,网关为10.200.15.1 LAN 口对应内网IP 为192.168.1.1/24DNS:61.139.2.69根据这些参数我们需要先配置好IP 地址、网关和DNS,并打开DNS 缓存等。
进入 ip address 配置IP 地址:进入 ip route 配置网关:进入 ip firewall nat 设置好NAT 伪装:进入 ip dns 配置DNS 缓存:现在我们的基本参数已经配置完成,现在我们需要配置的Hotspot 参数,配置Hotspot 参数的基本流程是:1、先进入ip hotspot user profile 设置用户分组规则2、然后在ip hotspot user 添加用户的帐号3、进入ip hotspot server profile 配置服务器规则4、在ip pool 中分配IP 地址段,根据需要启用DHCP 服务5、在ip hotspot server 添加并启用hotspot 服务现在我们进入 ip hotspot,并配置ip hotspot use profile在 user profile 里面一般配置如下几个参数:Idle-Timeout:用户在一定时间内没有任何流量发出后自动注销连接Keepalive-Timeout:路由器主动通过ICMP 探测主机是否在线,如果在一定时间为探测到自动注销连接(如果用户机开启防火墙,路由器无法探测到)Shared-users:帐号的分享用户多少,默认为1,即仅一个用户使用该帐号。
Rate-Limit:分配每个帐号带宽,格式为“上行 / 下行”Transparent-proxy:透明代理功能是否开启,一般使用Hotspot认证建议不用打开此参数。
其他参数请参考具体Hotspot 手册。
ROS菜鸟系列1--实现共享上网
本区为菜鸟区,所讨论的对象为刚接触ROS的新手,高手请飘过ROS菜鸟系列1--实现共享上网,即内部网络多台机器通过ROS实现一起访问互联网的功能实现,以上是废话,呵呵前提条件:一台装有从网大公司购买的装好ROS电子盘及两张网卡的主机,通过显示器登录ROS(版本为3.30)实现第一步:查看网卡信息进入菜单:interface[admin@MikroTik] /interface> printFlags: D - dynamic, X - disabled, R - running, S - slave# NAME TYPE MTU L2MTU0 R ether1 ether 15001 R ether2 ether 1500从print命令显示的信息来看,两张网卡都已被ROS正常识别出来,如果显示的“X”,则表明网卡是禁用状态,如:[admin@MikroTik] /interface> printFlags: D - dynamic, X - disabled, R - running, S - slave# NAME TYPE MTU L2MTU0 X ether1 ether 15001 R ether2 ether 1500网卡“ether1”处于禁用状态可通过命令:[admin@MikroTik] /interface> enable ether1[admin@MikroTik] /interface> printFlags: D - dynamic, X - disabled, R - running, S - slave# NAME TYPE MTU L2MTU0 R ether1 ether 15001 R ether2 ether 1500设定“ether1”为外网网卡,“ether2”为内网网卡[admin@MikroTik] /interface> set ether1 name=wan[admin@MikroTik] /interface> set ether2 name=lan[admin@MikroTik] /interface> printFlags: D - dynamic, X - disabled, R - running, S - slave# NAME TYPE MTU L2MTU0 R wan ether 15001 R lan ether 1500实现第二步:配置IP地址1)如果是具备固定外网IP地址时:假定外网IP地址为172.16.0.2/28,网关是172.168.0.1,内网为192.168.1.1/24接上面:[admin@MikroTik] /interface> /ip address[admin@MikroTik] /ip address> add address=172.16.0.2/28 interface=wan[admin@MikroTik] /ip address> add address=192.168.1.1/24 interface=lan[admin@MikroTik] /ip address> printFlags: X - disabled, I - invalid, D - dynamic# ADDRESS NETWORK BROADCAST INTERFACE0 172.16.0.2/28 172.16.0.0 172.16.0.15 wan1 192.168.1.1/24 192.168.1.0 192.168.1.255 lan2)如果通过ADSL拨号共享上网时:假定ADSL的用户名:111和密码:111,内网:192.168.1.1/24[admin@MikroTik] /interface> pppoe-client[admin@MikroTik] /interface pppoe-client> add user=111 password=111 interface=wan add-default-route=yes[admin@MikroTik] /interface pppoe-client> printFlags: X - disabled, R - running0 X name="pppoe-out1" max-mtu=1480 max-mru=1480 mrru=disabled interface=wan user="111" password="111" profile=default service-name="" ac-name="" add-default-route=yes dial-on-demand=no use-peer-dns=no allow=pap,chap,mschap1,mschap2[admin@MikroTik] /interface pppoe-client> /ip address[admin@MikroTik] /ip address> add address=192.168.1.1/24 interface=lan[admin@MikroTik] /ip address> printFlags: X - disabled, I - invalid, D - dynamic# ADDRESS NETWORK BROADCAST INTERFACE0 192.168.1.1/24 192.168.1.0 192.168.1.255 lan实现第三步:配置网关1)固定IP:[admin@MikroTik] /ip address> /ip route[admin@MikroTik] /ip route> add gateway=172.16.0.1[admin@MikroTik] /ip route> printFlags: X - disabled, A - active, D - dynamic,C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,B - blackhole, U - unreachable, P - prohibit# DST-ADDRESS PREF-SRC G GATEW AY DISTANCE IN..0 A S 0.0.0.0/0 r 172.16.0.1 1 wan1 ADC 172.16.0.0/28 172.16.0.2 0 wan2 ADC 192.168.1.0/24 192.168.1.1 0 lan2)如果是ADSL,不需要配置,因为在上面配置IP地址是,选择参数:add-default-route=yes实现第四步:配置DNS[admin@MikroTik] /ip route> /ip dns[admin@MikroTik] /ip dns> set primary-dns=61.139.2.69 allow-remote-requests=yes [admin@MikroTik] /ip dns> printprimary-dns: 61.139.2.69secondary-dns: 0.0.0.0allow-remote-requests: yesmax-udp-packet-size: 512cache-size: 2048KiBcache-max-ttl: 1wcache-used: 5KiB参数allow-remote-requests=yes,意思是本地路由启用DNS功能,即:在内网机器上,配置DNS时可以直接使用网关地址作DNS服务器实现第五步:隐藏,共享上网(NAT)[admin@MikroTik] /ip dns> /ip firewall nat[admin@MikroTik] /ip firewall nat> add chain=srcnat action=masquerade[admin@MikroTik] /ip firewall nat> printFlags: X - disabled, I - invalid, D - dynamic0 chain=srcnat action=masquerade以上五步即可完成利用ROS实现内网多台机器共享上网的功能,在后续的系列中,我们会在此基础上添加其他功能,利用ROS现实现其他目标明确的功能高手请飘过,如果是通过winbox连接到ROS的用户,以上所有的命令都可以在winbox中的主菜单中的:“new terminal”直接进行粘贴操作使用。
ros常见问题与使用技巧
ros常见问题与使用技巧RouterOS 功能包介绍:(修改补充中...)2007年11月22日星期四 18:51system ----------------------- 系统必要功能包,必须安装ppp ---------------------------- 点对点隧道协议;支持PPTP,PPoE和L2TP访问控制和客户端;支持PAP,CHAP,MSCHAPv1和MSCHAPv2验证协议;支持RADIUS验证和记录;MPPE加密;PPPoE 压缩;数据流控制;具备防火墙功能;支持PPPoE按需拨号。
dhcp -------------------------- DHCP服务器;DHCP客户端;DHCP接力;多DHCP网络;静态和动态DHCP租约;支持RADIUSadvanced-tools ------------- 高级工具包;ping;traceroute;bandwidth test;ping flood;telnet;SSH;packet sniffer;DDNS。
arlan --------------------------gps ----------------------------hotspot ----------------------- HotSpot 认证网关支持RADIUS验证和记录;用户可即插即用访问网络;流量控制功能;具备防火墙功能;实时信息状态显示;自定义HTML登陆页;支持iPass;支持SSL安全验证;支持广告功能。
hotspot-fix -------------------isdn --------------------------- ISDN dial-in/dial-out;PAP,CHAP,MSCHAPv1和MSCHAPv2验证协议;RADIUS验证和记录;Cisco HDLC,x75i,x75ui,x75bui 队列支持。
lcd -----------------------------支持LCD显示屏ntp ----------------------------- 网络对时协议服务器和客户端;同步GPS系统radiolan -----------------------routerboard ------------------routing ------------------------routing-test -------------------rstp-bridge-test --------------security -----------------------synchronous ----------------- V.35,V.24,E1/T1,X.21,DS3(T3)媒体类型;sync-ppp,Cisco HDLC,频中继协议;ANSI-617(ANDI or annex D)和Q933a(CCITT or annex A)频中继LMI 类型telephony ---------------------ups -----------------------------user-manager ----------------web-proxy ---------------------webproxy-test ----------------wireless ----------------------- IEEE802.11a/b/g wireless client和访问节点(AP);Nsetreme和Nsetreme2协议;无线分布系统(WDS);虚拟AP功能;40和104bitWEP;WPA pre-shared 加密;访问控制列表;RADIUS服务验证;漫游功能(wireless客户端);接入点桥接功能。
ROS各种脚本
ROS统计在线用户数脚本/ip firewall address-listadd address=192.168.1.0/24 disabled=no list=lanadd address=192.168.2.0/24 disabled=no list=lan添加L7识别视频和下载用户/ip firewall layer7-protocoladd name=Tencent_qq regexp="^.\?.\?[\\x02|\\x05]\\x22\\x27.+|^.\?.\?[\\x02|\\x\05]\\x22\\x27.+[\\x03|\\x09]\$|^.\?.\?\\x02.+\\x03\$|^/xFE/x42../x42/x02/x\0B/x7D/x98/x38/xE4.+"add name=Tencent_qqgame regexp="^.\?.\?\\x2D.+[\\x25\\x62\\x0E\\xC1\\x5F\\x6C|\ \\xFF\\xFF\\x20\\xCF\\x42\\x53|\\xFF\\xFF\\x10\\x17\\x87\\xA3|\\x3E\\x7F\\\x20\\xCF\\x42\\x53|\\x1F\\x43\\x10\\x17\\x87\\xA3]|^\\x05\\x22.+\\x03\$"add name=PPStream regexp="^.\?.\?\\c.+\\c"add name=QQMusic regexp=\"(^\\xFE.\?.\?.\?.\?\\xCF|^get.+\\qqmusic.\?\\qq.+\\qqmusic)"add name=QQLive regexp="(^get.+\\video.\?\\qq.+\\flv|^\\xFE.\?.\?.\?.\?\\xD3|^\ get.+\\video.\?\\qq.+\\mp4)"add name=Kugou regexp=\"(^post.+\\x0D\\x0A\\x0D\\x0A|^http.+\\x0D\\x0A\\x0D\\x0A|^e)"add name=Http regexp="http/(0\\.9|1\\.0|1\\.1) [1-5][0-9][0-9] [\t-\r -~]*(con\ nection:|content-type:|content-length:|date:)|post [\t-\r -~]* http/[01]\\\.[019]"add name=Http-img regexp="\\.jpg|\\.png|\\.gif|\\.bmp|\\.jpeg"add name=Http-web regexp=\"\\.jsp|\\.shtml|\\.html|\\.htm|\\.php|\\.asp|\\.aspx|\\.cgi"add name=NetTV regexp=\"^.*get.+(\\.flv|\\.f4v|\\.hlv|\\.rm|\\.swf|\\.wma|\\.mp4|\\.mp3).*\$"add name=File regexp="^.*get.+(\\.iso|\\.exe|\\.zip|\\.rar|\\.7z|\\.gho|\\.pdf\|\\.avi|\\.mkv|\\.wmv|\\.wav|\\.flac|\\.ape|\\.msi).*\$"add name=QQsp regexp="(^\\x03.\?\\xE1\\x8D|^\\x02\\x02|^\\x04\\x1E)"add name=DNS regexp="^.\?.\?.\?.\?[\\x01\\x02].\?.\?.\?.\?.\?.\?[\\x01-\?][a-z\0-9][\\x01-\?a-z]*[\\x02-\\x06][a-z][a-z][fglmoprstuvz]\?[aeop]\?(um)\?[\\\x01-\\x10\\x1c][\\x01\\x03\\x04\\xFF]"add name=Http-jpg regexp="^.*(post|POST|get|GET).+\\.jpg.+\\http"写入源地址列表(服务器不计算在内的话,用“!”排除即可)/ip firewall filter#排除服务器计数add action=add-src-to-address-list address-list=icafe address-list-timeout=2m \ chain=forward comment="[\CD\B3\BC\C6\B7\FE\CE\F1\C6\F7]" disabled=no \src-address=192.168.1.39-192.168.1.64#引用list:lan,排除服务器add action=add-src-to-address-list address-list=wks address-list-timeout=2m \ chain=forward comment="[\CD\B3\BC\C6\BF\CD\BB\A7\BB\FA]" disabled=no \src-address=!192.168.1.39-192.168.1.64 src-address-list=lanadd action=add-src-to-address-list address-list=NetTV address-list-timeout=5m \ chain=forward comment="[\CD\B3\BC\C6\D4\DA\CF\DF\CA\D3\C6\B5]" disabled=\ no layer7-protocol=NetTV src-address-list=wksadd action=add-src-to-address-list address-list=Flies address-list-timeout=5m \ chain=forward comment="[\CD\B3\BC\C6\BF\CD\BB\A7\BB\FA\CF\C2\D4\D8]" \ disabled=no layer7-protocol=File src-address-list=wks周期写入log/system scheduleradd comment="\D4\DA\CF\DF\C8\CB\CA\FD\D0\C5\CF\A2\D0\B4log" disabled=no \ interval=1m name=tongji3 on-event=tongji3 policy=\ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \start-date=dec/16/2012 start-time=01:07:12/system scriptadd name=tongji3 policy=\ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \source=":global prince [:len [/ip firewall address-list find list=(\"wks\"\)]]\r\\n:log warning (\"\B5\B1\C7\B0\D7\DC\B9\B2\".\"\$prince\".\"\CC\A8\BB\FA\\C6\F7\D4\DA\CF\DF\")\r\\n:global prince [:len [/ip firewall address-list find list=(\"NetTV\")]]\\r\\n:log warning (\"\D3\D0\".\"\$prince\".\"\CC\A8\B9\DB\BF\B4\D4\DA\CF\DF\\CA\D3\C6\B5\")\r\\n:global prince [:len [/ip firewall address-list find list=(\"Flies\")]]\\r\\n:log warning (\"\D3\D0\".\"\$prince\".\"\CC\A8\D4\DA\CF\C2\D4\D8\CE\C4\ \BC\FE\")\r\\n:global prince [:len [/ip firewall address-list find list=(\"wks\")]]\r\\n:log warning (\"=========================\")"ROS端口映射脚本/ip firewall nat add chain=dstnat \dst-address=120.42.115.6 protocol=tcp dst-port=80 action=dst-nat \to-addresses=192.168.0.1 to-ports=80 comment="3389"/ system scheduler add name="Timing ReBoot" on-event="/ system reboot" \ start-date=Jan/01/1990 start-time="05:30:00" interval="7d 00:00:00" \ comment="\B6\A8\CA\B1\D6\D8\C6\F4" disabled=no脚本-自动绑定PPPOE在线用户的MAC地址#自动绑定在线PPP用户的MAC地址,如果不绑定请备注:admin#可加计划执行,第一次绑定后的换MAC不会再次修改绑定MAC/ppp secret;:foreach pppuse in [find caller-id=""] do={:local pcom [get $pppuse comment];:local pnam [get $pppuse name];:if ($pcom!="admin") do={/ppp active;:foreach pact in [find name=$pnam] do={:local acal [get $pact caller-id];/ppp secret set [/ppp secret find name=$pnam] caller-id=$acal;}}}#以下配合到期日期使用可以配合备注日期为:[20111109]这样的日期格式,实现部份用户不绑定MAC ROS用户备注格式:[20111109]标注有:的为不绑定用户MAC的,示标注的绑定MAC/ppp secret;:foreach i in [find caller-id=""] do={:local pcom [get $i comment];:local pnam [get $i name];:if ($pcom~"<admin>") do={} else={/ppp active;:foreach pact in [find name=$pnam] do={:local acal [get $pact caller-id];/ppp secret set [/ppp secret find name=$pnam] caller-id=$acal;}}}:local ednsuser "登陆用户名":local ednspass "登陆密码":local ednshost "申请到的域名":local ednsinterface "接口名,例:pppoe-out2":local members "/dyndns/update?system=dyndns"#:local members "/nic/update?":local status:local status [/interface get [/interface find name=$ednsinterface] running]:if ($status!=false) do={:local ednslastip [:resolve $ednshost]:if ([ :typeof $ednslastip ] = nil ) do={ :local ednslastip "0" }:local ednsiph [ /ip address get [/ip address find interface=$ednsinterface ] address ] :local ednsip [:pick $ednsiph 0 [:find $ednsiph "/"]]:local ednsstr "&hostname=$ednshost&myip=$ednsip":if ($ednslastip != $ednsip) do={/tool fetch url=($members . $ednsstr) mode=http user=$ednsuser password=$ednspass dst-path=$ednshost:delay 2:local result [/file get $ednshost contents]:log info ($ednshost . " " .$result)/file remove $ednshost ;}}#建立地址池/ ip pool add name="pptp_pool" ranges=9.9.9.1-9.9.9.253#建立模板/ ppp profile add change-tcp-mss=no dns-server=8.8.8.8,8.8.4.4 \local-address=9.9.9.254 name=pptp_profile only-one=yes \remote-address=pptp_pool use-encryption=yes#添加NAT/ ip firewall nat add chain=srcnat src-address=9.9.9.0/24 \action=masquerade comment=vpn_pool#开启服务/interface pptp-server serverset authentication=mschap1,mschap2 default-profile=pptp_profile \ enabled=yes keepalive-timeout=30 max-mru=1460 max-mtu=1460#添加用户/ppp secret add name=test password=test service=pptp profile=pptp_profile添加queue type/queue typeadd kind=pcq name=13_down pcq-classifier=dst-address \pcq-burst-rate=4M pcq-burst-threshold=2M pcq-rate=2Madd kind=pcq name=13_up pcq-classifier=src-address \pcq-burst-rate=500k pcq-burst-threshold=256k pcq-rate=256k定义内网地址,引用type/queue simpleadd disabled=no interface=all name=all \queue=13_up/13_down target-addresses=192.168.1.0/24ROS怎么屏蔽某个网站?/ ip firewall filter add chain=forward content="" action=drop \ comment="drop-baidu" disabled=noROS自动备份脚本/system scheduleradd disabled=no interval=2d name=autobak on-event=\"/ file remove autobak.backup\r\\n/ system backup save name=autobak" policy=\ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \ start-date=jan/04/2013 start-time=01:30:00。
网站统计在线人数
在线人数统计对于做B/S开发的人来说,统计在线的人数是个很重要的工作,一般的统计方法是利用Application保存在线人数。
我今天要讲的也是用这个方法,但是,在这个方法上增加一点内容,就是,当用户直接关闭IE后,也要立刻将在线人数减少,而一般的方法是要等待Session过期后才能统计。
好了,开始了。
1、首先,配置web.config将Session的状态配置成如下,为什么我就不说了。
<sessionState mode="InProc"></sessionState>2、Global.asax的各个方法<%@ Application Language="C#" %><script runat="server">void Application_Start(object sender, EventArgs e){// 在应用程序启动时运行的代码Application.Add("OAS_Line_Counts", 0);}void Application_End(object sender, EventArgs e){// 在应用程序关闭时运行的代码Application.RemoveAll();}void Application_Error(object sender, EventArgs e){// 在出现未处理的错误时运行的代码}void Session_Start(object sender, EventArgs e){// 在新会话启动时运行的代码Session.Timeout = 30;}void Session_End(object sender, EventArgs e){// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为// InProc 时,才会引发 Session_End 事件。
php实现统计IP数及在线人数的示例代码
php实现统计IP数及在线⼈数的⽰例代码写在前⾯的话很多⼈有这样的需求,就是统计⽹站访问IP以及在线的⼈数。
今天我们就看⼀下具体实现⽅法。
开启依赖函数模块实现这个功能,需要依赖putenv()函数。
下⾯两种⽅式均可。
更改php.ini⽂件⽅法找到php.ini⽂件,搜索putenv关键字,删除即可。
isable_functions =passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,使⽤宝塔⾯板点击左侧软件管理,找到php,然后设置->禁⽤函数。
删除putenv,然后重启php即可。
实现函数在count.php同⽬录下创建⽂件:count,temp,online。
新建⽂本⽂档count.txt,去掉扩展名即为count了;linux系统中请设置⽂件属性为:777。
⽂件count.php代码,⽤到了php函数--explode、isset、empty及sprintf等:<?php$file = "count"; // 记数⽂件名称$startno = "1000"; // 起始数值$tempfile = "temp";$t_now = time();$t_array = getdate($t_now);$day = $t_array['mday'];$mon = $t_array['mon'];$year = $t_array['year'];if (file_exists("$file")) {$count_info=file("$file");$c_info = explode(",", $count_info[0]);$total_c=$c_info[0];$yesterday_c=$c_info[1];$today_c=$c_info[2];$lastday=$c_info[3];} else {$total_c="$startno";$yesterday_c="0";$today_c="0";$lastday="0";}if ( !isset($HTTP_COOKIE_VARS["countcookie"]) || $HTTP_COOKIE_VARS["countcookie"] != $day) {$your_c=1;$lockfile=fopen("temp","a");flock($lockfile,3);putenv('TZ=JST-9');$t_array2 = getdate($t_now-24*3600);$day2=$t_array2['mday'];$mon2=$t_array2['mon'];$year2=$t_array2['year'];$today = "$year-$mon-$day";$yesterday = "$year2-$mon2-$day2";if ($today != $lastday) {if ($yesterday != $lastday) $yesterday_c = "0";else $yesterday_c = $today_c;$today_c = 0;$lastday = $today;}$total_c++;$today_c++;$total_c = sprintf("%06d", $total_c);$today_c = sprintf("%06d", $today_c);$yesterday_c = sprintf("%06d", $yesterday_c);setcookie("countcookie","$day",$t_now+43200);$fp=fopen("$file","w");fputs($fp, "$total_c,$yesterday_c,$today_c,$lastday");fclose($fp);fclose($lockfile);}if ( empty( $your_c ) ) $your_c = 1;setcookie("yourcount",$your_c+1,$t_now+43200);$your_c = sprintf("%06d", $your_c);//////////////////////////开始统计在线$filename="online";$onlinetime=600; //同⼀IP在线时间,单位:秒$online_id=file($filename);$total_online=count($online_id);$ip=getenv("REMOTE_ADDR");$nowtime=time();for($i=0;$i<$total_online;$i++){$oldip=explode("||",$online_id[$i]);$hasonlinetime=$nowtime-$oldip[0];if($hasonlinetime<$onlinetime and $ip!=$oldip[1]) $nowonline[]=$online_id[$i];}$nowonline[]=$nowtime."||".$ip."||";$total_online=count($nowonline);$fp=fopen($filename,"w");rewind($fp);for($i=0;$i<$total_online;$i++){fputs($fp,$nowonline[$i]);fputs($fp,"n");}fclose($fp);if($total_online==0)$total_online=1;$total_online = sprintf("%06d", $total_online);///////////////////////////////////////////////////////echo "document.write("·总IP访问:".$total_c."");";echo "document.write("<br>");";echo "document.write("·昨⽇访问:".$yesterday_c."");";echo "document.write("<br>");";echo "document.write("今⽇IP:".$today_c."");";echo "document.write(" ");";echo "document.write("·您访问:".$your_c."");";echo "document.write("<br>");";echo "document.write("当前在线:".$total_online."");";exit;>调⽤⽤JS调⽤⽂件count.php在需要加⼊统计的的地⽅,添加:<script src="/php/count.php"></script>到此这篇关于php实现统计IP数及在线⼈数的⽰例代码的⽂章就介绍到这了,更多相关php 统计IP数及在线⼈数内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
ROS 2.96 端口映射、IP显示及回流设置
ROS 2.96 端口映射、IP显示及回流设置1、什么是端口映射这里说的端口映射是路由器上的端口映射。
一般情况下,网络中路由器都有防火墙功能,互联网用户只能访问到你的路由器WAN口(接ADSL线口或是固定的外网IP地址),而访问不了局域内部服务器或工作站。
要想让外面用户访问到局域网的电脑,那么就要在路由器上做一个转发设置,也就是端口映射设置,让用户的请求到了路由器后,能够转发到局域内部的机器上,例如游戏服务器或WEB 服务器。
这就是端口映射。
例如,在局域网中建建立一个web服务器,IP地址为:192.168.1.3,端口为80,此时在局域内部,只要在浏览器输入http://192.168.1.3,就能打你web网站的内容,但如果要在因特网上访问此web服务器,打入http://192.168.1.3这个局域网内网IP,肯定是访问不了的。
当需要在外网访问这台服务器时,就要就192.168.1.3这台机器的80端口通过路由器映射到外网。
除了web服务外,其它的服务例如FTP、远程桌面等服务都可以将不同的端口映射出去,以便能在外网通过路由器来访问内网机器。
一般的路由器都带有端口映射功能,以下对目前使较多的ROS软路由的端口映射作一说明,并提出解决外网IP显示及回流设置。
2、ROS 2.96 的端口映射的设置进入winbox,点击IP→ Firewall→Nat打开防火墙设置界面。
点击左上角红色的“+”号,添加一条dstnat 规则,其中dst.address 填写你要映射的外网IP,本例为218.87.96.xxx(此处请填入您的外网IP),然后选择protocol协议为6,即TCP协议,设置Dst. port(目标端口)为80。
设置完成后如图1所示。
单击“Action”选项卡,在Action框中,选择“dst-nat” ,在“To.Address”框中填写内网提供服务的IP 地址,本例为192.168.1.3,在“To.Port”填写内网提供服务的IP端口,这样基本映射就完成了,如图2所示,此时可以在外网中输入你的外网IP,即可看到内网192.168.1.3WEB服务器上的网站了。
ROS软路由全部命令及技巧
ROS全部命令及技巧个人资料请勿外泄ROS菜单含义guanlianinterfaces---网络接口wireless---无线网络bridge---桥接ppp-虚拟拨号ipports--端口queues-限速drivers-设备systemfiles-文件备份/恢复log--系统日志snmp-snmp管理方式users-用户radius-radius管理tools-工具new terminal-命令方式telnet--tlenet连接方式password--修改密码certificate---证书哎,盗版madk supout.rif 制作rif文件manual--说明isdn chanels--一线通方式routing--路由exit--退出sys reset__________________________________ addresses--ip地址routers-路由表pool-地址池arp-帮定ipvrrp-热备份firewall-防火墙socks-代理upnp-自动端口映射traffic flow-网络流量accounting--合计services--服务packing-ros模块neighbors--邻居ros用户dns--proxy-代理dhcp client-dhcp客户端dhcp server - dhcp服务dhcp relay-dhcp转换hospot-热点认证telephony-电话ipsec-ip隧道连接方式web proxy web代理system system system system system system---------------------------------------------identity---ros标示clock-时间resources-系统配置license-注册信息packages--安装包auto upgrade-自动升级logging--日志history--历史日志console---com控制台scripts--脚本scheduler--进程watchdog--监视狗reboot-从起shutdown-关机lcd-小液晶显示ros消息ntp chient--ros时间客户端ntp server---ros时间服务端自动更新ros时间health---ros情况ups-ups电源,可持续电源,就是电瓶。
Ros设置上网五步走
Ros设置上网五Ros设置ADSL拔号上网五步走1、正确区分内、外网。
2、建立pppoe client拔号。
3、伪装(网络地址转换)4、路由(访问外网的路径)5、dns设置(可手动,可自动)过程:1、点击interfaces区分内网和外网,使用winbox登陆时的IP或者网卡地址。
分别使用lan和wan代替2、增加IP地址:IP—addresses—点击+---在address输入访问ros的网关192.168.1.1/24其中inetrface(接口)选择lan3、建立拔号:ppp中选择pppoE Client—在弹出对话框的ganeral中的name:中输入你的拔号名称如adsl,然后在Interfaces(接口)选择wan;点选择Dial Out 然后将service和AC name分别点成蓝色(说明选择过了);然后在user和password中分别输入对就的帐号和密码;将Add Default Route前的勾去掉(如果不去则不用手动增加路由表),而use peer DNS点选的话,则为自动获取(也可在第五步中加入对就的DNS地址)。
然后点OK(确定),一会如果PPP框内的拔号前出现了“R”则表示已经连通外网,可用IP—addresses查看到,获得的链接前有个D(表示动态IP的意思),但此时并不能上网。
4、伪装NAT(网络地址转换):IP—firewall---NAT----点击Action,然后在下拉菜单中选择masquerade5、增加DNS:IP—DNS---点击Settings,在弹出的对话框中输入(主和备221.7.128.68\221.7.136.68)DNS,最后将Allow Remote Requests前的框点勾。
6、路由表中查看到DAC(动态路由表)有两条,因此要指定访问外网的路由链接,点IP—Route,点击+号,选择Gateway使其变蓝色,在Gateway Interface选择前面的拔号名称(adsl),再点ok(确定),在路由表中将会出现有AS:Destination(0.0.0.0/0) Gateway (空白)Gateway Interface(adsl)Interface(adsl)Distance(1)固定IP上网设置方法:1、确定内网网卡,区分内(lan)外(wan)网2、增加IP地址3、伪装4、路由5、DNS设置过程:1、用网卡地址登陆,(或者IP地址登陆)移除IP地址,2、增加IP地址:点IP---addresses点击+,在对话框中输入分配的IP 地址如(172.168.5.11/24),在Interface中选择wan再点击OK。
ROS限速、防syn、ip伪装、mac绑定、防火墙、各种命令使用详解、屏蔽端口
ROS限速、防syn、ip伪装、mac绑定、防火墙、各种命令使用详解、屏蔽端口ROS限速、防syn、ip伪装、mac绑定、防火墙、各种命令使用详解、屏蔽端口:foreach i in=[/system logging facility find local=memory ] do=[/system logging facility set $ilocal=none]RO防synip-firewall-connectionsTracking:TCP Syn Sent Timeout:50TCP syn received timeout:30限线程脚本::for aaa from 2 to 254 do={/ip firewall filter add chain=forward src-address=(192.168.0. . $aaa) protocol=tcp connection-limit=50,32 action=drop}RO端口的屏蔽ip-firewall-Filer Rules里面选择forward的意思代表包的转发firewall rule-GeneralDst.Address:要屏蔽的端口Protocol:tcpAction:drop(丢弃)ros限速手动限速winbox---queues----simple queues点“+”,NAME里随便填,下面是IP地址的确定①Target Address 不管,Dst. Address里填你要限制的内网机器的IP,比如我这里有个1号机器IP为192.168.1.101,那dst.address 里就填192.168.1.101 然后是/32(这里的32不是指掩码了,个人理解为指定的意思)!②interface里记着要选你连接外网那个卡,我这里分了“local和public”,所以选public③其他的不管,我们来看最重要的东西拉,Max limit ,这个东西是你限制的上限,注意的是这里的数值是比特位,比如我要限制下载的速度为500K 那么就填入多少呢?500 X 1000 X 8=400 0000=4M。
在Global.asax中使用定时器来统计在线人数和每天每月的访问量
在Global.asax中使用定时器来统计在线人数和每天每月的访问量在Global.asax中使用定时器来统计在线人数和每天每月的访问量一、在 ApplicationStart 中创建定时器//以下为使用多个定时器System.Timers.Timer的处理方法//用thread重新包一下,定义两个定时器System.Threading.Thread myTimer1 = new System.Threading.Thread(newSystem.Threading.ThreadStart(write1));myTimer1.Start();System.Threading.Thread myTimer2 = new System.Threading.Thread(newSystem.Threading.ThreadStart(write2));myTimer2.Start();二、使用定时器每10分钟更新一次在线人数检查一次是否要存入一天流量的信息//使用第一个定时器,每10分钟更新一次在线人数private void write1(){//以下使用System.Timers.Timer类每间隔10分钟存一次数据System.Timers.Timer myTimer1 = new System.Timers.Timer(600000); //实例化Timer类,设置间隔时间为600000毫秒(10分钟存一次总人数);myTimer1.Enabled = true; //是否执行System.Timers.Timer.Elapsed事件;myTimer1.Elapsed += new System.Timers.ElapsedEventHandler(myTimerElapsed); //到达时间的时候执行事件myTimerElapsed;myTimer1.AutoReset = true; //设置是执行一次(false)还是一直执行(true);}//使用第二个定时器,private void write2(){//以下使用System.Timers.Timer类每间隔10分钟检查一次是否要存入一天流量的信息System.Timers.Timer myTimer2 = new System.Timers.Timer(600000); //实例化Timer类,设置间隔时间为600000毫秒(10分钟存一次总人数);myTimer2.Enabled = true; //是否执行System.Timers.Timer.Elapsed事件;myTimer2.Elapsed += new System.Timers.ElapsedEventHandler(myTimerpeopleDay); //到达时间的时候执行事件myTimerpeopleDay;myTimer2.AutoReset = true; //设置是执行一次(false)还是一直执行(true);}三、创建myTimer过程来处理在线人数和统计每日、月、年的流量//创建 myTimerElapsed 过程并定义第一个定时器事件,要用来处理在线人数的代码private void myTimerElapsed(object sender, System.Timers.ElapsedEventArgs e){//如果现在的在现人数大于原有的在现人数,则替换数据表中的在现人数int MaxOnline = Convert.ToInt32(Application["OnlineMax"]);int MinOnline = Convert.ToInt32(Application["OnlineWhx"]);if (MaxOnline < MinOnline){SqlConnection con = Db.DB.createconnection();con.Open();SqlCommand cmd = new SqlCommand("update countpeople set totol=“" + Application["countSession"].ToString() + "“,OnLine=+“" + Application["onlineWhx"] + "“,DataTimes=“" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "“", con);cmd.ExecuteNonQuery();con.Close();Application["OnlineMax"] = Application["OnlineWhx"]; //将现在线人数赋于OnlineMaxApplication["dataTimes"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");}else{//将总访问人数写入数据库SqlConnection con = Db.DB.createconnection();con.Open();SqlCommand cmd = new SqlCommand("update countpeople set totol=" + Application["countSession"].ToString(), con);cmd.ExecuteNonQuery();con.Close();}}//创建myTimerpeopleDay 过程并定义第二个定时器事件,要用来统计每日、月、年的流量private void myTimerpeopleDay(object sender, System.Timers.ElapsedEventArgs e){try{//当天晚上24时if (DateTime.Now.Hour == 23){if (DateTime.Now.Minute >= 50){//当天晚上24时,写入一天的流量//初始化一个iP数据访问对象IPControl cont = new IPControl();//获取今天访问量Int32 countToday = Convert.ToInt32(cont.GetT oday());//获取本月访问量Int32 countMonth = Convert.ToInt32(cont.GetMonth());//存储过程名spInsertCountPeopleDaySqlConnection con1 = Db.DB.createconnection();con1.Open();SqlCommand cmd1 = new SqlCommand("spInsertCountPeopleDay", con1);mandType = CommandType.StoredProcedure; //存储过程名//调用并设置存储过程参数cmd1.Parameters.Add(new SqlParameter("@peopleDay", SqlDbType.Int));cmd1.Parameters.Add(new SqlParameter("@dateTimes", SqlDbType.DateTime));//给参数赋值cmd1.Parameters["@peopleDay"].Value = countT oday;cmd1.Parameters["@dateTimes"].Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");cmd1.ExecuteNonQuery();con1.Close();//在一个月的最后一天写入本月的访问量//取本月最后一天(30或者31日)DateTime lastDay = Convert.T oDateTime(DateTime.Now.AddMonths(1).ToString("yyy y-MM-01")).AddDays(-1);int lastDay1 = DateTime.Now.Day; //取当前时间的日期if (lastDay1.ToString() == lastDay.ToString()) //如果前日期等于本月最后一天的日期,则前本月的流量写入数据库{SqlConnection conM = Db.DB.createconnection();conM.Open();SqlCommand cmdM = new SqlCommand("spInsertCountPeopleMonth", conM);mandType = CommandType.StoredProcedure; //存储过程名//调用并设置存储过程参数cmdM.Parameters.Add(new SqlParameter("@peopleMonth", SqlDbType.Int));cmdM.Parameters.Add(newSqlParameter("@dateTimeMonth", SqlDbType.DateTime));//给参数赋值cmdM.Parameters["@peopleMonth"].Value = countMonth;cmdM.Parameters["@dateTimeMonth"].Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");cmdM.ExecuteNonQuery(); conM.Close();}}}}catch{}}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ROS如何统计内网在线人数
)
/ip firewall mangle add chain=prerouting src-address=192.168.2.1-192. 168.2.240 action=add-src-to-address-list address-list=LAN address-lis t-timeout=10m/system scheduleradd comment="" disabled=no interval=10m name=ClientNUM on-event=":global s 0\r\ \n:foreach i in=[/ip fire wall address-list find list=LAN] do={:set s (\$s+1)}\r\ \n:log inf o (\"\B5\B1\C7\B0\" . \$s . \"\CC\A8\BF\CD\BB\A7\BB\FA\D4\DA\CF\DF\") " policy=\ reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/01/1970 start-time=00:00:00192.168.2.1-192.168.2.240 内网客户机IP(自己修改)
代码注意修改LAN(内网网卡区分大小写噢)
/ip firewall mangle
add chain=prerouting src-address=192.168.2.1-192.168.2.240 action=add -src-to-address-list address-list=LAN address-list-timeout=10m
/system scheduler
add comment="" disabled=no interval=10m name=ClientNUM on-event=":glo bal s 0\r\
\n:foreach i in=[/ip firewall address-list find list=LAN] do={:se t s (\$s+1)}\r\
\n:log info (\"\B5\B1\C7\B0\" . \$s . \"\CC\A8\BF\CD\BB\A7\BB\FA\ D4\DA\CF\DF\")" policy=\
reboot,read,write,policy,test,password,sniff,sensitive start-date =jan/01/1970 start-time=00:00:00
192.168.2.1-192.168.2.240 内网客户机IP(自己修改)。