IT学习者 | 文章大全 | 技术文档 | 桌面壁纸 | 实用查询 | 网络电台 | 成语 | 歇后语 | 网址 | 下载 | 周公解梦 | 生日密码 | 电视剧365 | Flash
 您现在的位置: IT学习者 >> 文章大全 >> 网页制作 >> 服务器

在WINDOWS下安装MRTG全攻略

【 作者:樊礼    来源:作者网站  更新时间:2006-3-4 | 字体:

在WINDOWS下安装MRTG全攻略
网络流量监控
文:重庆/樊礼 (cqfanli@163.com)
如需转载,请保持文档完整并注明出处(
http://www.cnitexam.com )
代序
在一个网络中,作为网络工程师或者网络管理员,需要随时了解网络的各种状态,以判断网络是否处于健康状态或者随时了解网络的流量、每个路由器的流量、每个交换机端口的流量…,以供年度报告时向上级领导提供详实的数据及图形报告。在这里,我先把自己有关如何获取网络流量的方法向大家讲解一下,如果有必要,您可以立即动手,自己做一个公司的网络流量监控图出来。网络流量的监控需要涉及到SNMP、PERL、MRTG和一点网页的相关知识,现在我就STEP BY STEP给大家讲解怎么具体实施。我的水平有限,如有错误或者更好的解决办法,还恳请大家提出,谢谢!

STEP BY STEP教您安装PERL
Perl的安装比较简单了,目前使用的一般是Active Perl for windows,现在最新的版本是5.8.0,它需要使用者先安装IIS或者APACHE等常用的WEB服务器平台。在这里,我就以最常用的IIS作为安装的示例,如果大家需要在APACHE平台里面安装PERL,结果会稍有些不同.
Perl 适用于五花八门的各种作业平台, 包括所有已知的 UNIX/Linux
及微软的作业系统, 以及足够支持 POSIX 的下列平台: BeOS, Cygwin, Netware,MPE/iX, OS/2, QNX, VMS, VOS, 以及 z/OS. 麦金塔 MacOS Classic 的用户也可以在http://dev.macperl.org/ 下载专属的移植版本.
在本例子中,我们以ActivePerl-5.6.1作为安装示例教大家怎么安装,Perl For WINDOWS 版本是msi的安装包,一般的情况如ActivePerl-5.6.1.633-MSWin32-x86.msi ,大家可以去http://downloads.activestate.com/Ac...MSWin32-x86.msi 下载最新版本的ActivePerl。
安装Perl的过程很简单的,但还是要讲解一下:
我现在的环境是WINDOWS 2000 SERVER 英文版+PACK3 ,IIS5.0平台。
1、 打开Perl的安装文件 ,点下一步,


2、 没得选择,只有同意协议才能下一步。

3、 在这里千万要注意了,系统默认是安装在 Perl 目录里面,但为了我们以后使用程序的方便,一定要记得修改为 usr 目录,盘符一般应和web的根目录所在的盘一致,结果如下:

4、 下一个画面会让您确认是否使用[PPM3发送个人信息至ASPN],还是省着点儿,不要选它,直接按下一步。
5、 这里可以全部选择上,下一步。

6、 提示准备好了开始安装了,下一步。
7、 开始安装

8、 硬盘一阵狂响之后,系统就安装成功了!大概在等几分钟吧
9、 安装Perl 到此结束,是不是超级简单。
Perl安装好之后,您可以打开 [Internet Information Services]->[Default WebSite]->[Properties]->[Home Directory]->[Configuration]看到如下的画面

看到其中有pl,plx,就表示安装成功了,其他.cgi的是我自己手工加上去的,方法是点击其他的[Add…]

在出现的对话框中输入如图所示的字符串即可。

然后我们可以测试一下安装的结果,一般使用所谓的CGI探针,可以在网上找到。出现如上图所示的内容,就表示我们的PERL安装配置成功,可以进入下一步学习了。

STEP BY STEP教您设置SNMP
我们将PERL安装好后,要先设置一下您需要监控流量的设备,它可能是路由器、交换机…甚至于一台安装了WIN2K的电脑。只要其支持SNMP的traps,都可以使用来作用被监控的对象。我在这里面以一台CISCO 2950交换机和华为2600路由器为例给大家介绍,因为涉及到IOS版本和其他不确定因素,在实际操作中,希望大家灵活运用。当然,下面的例子是我亲手调试通过的,您只需要改变一下相关名称,就可以正常使用了。
为了方便大家阅读,我简单的解释一下:在设置community 字串时,不要使用默认的public,因为它无容易被某些黑客监听,或者出现安全漏洞,可以选择自己认为有意义的字符串;host是接收traps的主机IP名字,可以根据您的实际需要调整。
以下命令在CISCO 2950环境里面调试通过:
C:\telnet 您的交换机的IP
User Access Verification
Password:
TNKSW>en
Password:
TNKSW# conf t
TNKSW(config)# nmp-server community chinatnk RO
TNKSW(config)# snmp-server trap-source FastEthernet0/1
TNKSW(config)# snmp-server contact
cqfanli@163.com
TNKSW(config)# snmp-server host 192.168.0.6 chinatnk
TNKSW(config)# snmp-server enable traps
TNKSW# sh run
TNKSW# wr
(以下为部份摘录show run命令)
……

……
可以看到,到此我们的交换机的SNMP已经正常工作了,当然,最重要的是别忘了保存呀,要不然就前功尽弃了,呵呵…
再看看华为2600路由器的配置,其实也差不多的,不过华为的产品好象几个命令的CISCO有些不一样,^_^
C:\telnet 您的交换机的IP
User Access Verification
Password:
qjrouter> en
Password:
qjrouter# conf (华为产品不带terminal参数,*_*)
qjrouter(config)#snmp-server ?
community Enable SNMP ; set community string
contact Text for mib object sysContact
enable Enable SNMP Traps
host Specify hosts to receive SNMP TRAPs
location Text for mib object sysLocation
trap-authentication Send TRAP on receipt of incorrect community string
qjrouter(config)#snmp-server enable traps
qjrouter(config)#snmp-server contact
cqfanli@163.com
qjrouter(config)#snmp-server location chinatnk
qjrouter(config)#snmp-server community ?
ro Read-only access with this community string
rw Read-Write access with this community string
qjrouter(config)#snmp-server community ro chinatnk
qjrouter(config)#
qjrouter#wr
qjrouter#sh ru
(以下为部份摘录show run命令)
……
……
友情提示:一定要保存,不要忘记了,^_^


STEP BY STEP教您安装MRTG
我们首先要从Internet上面下载最新的MRTG回来,MRTG的官方网址是:http://people.ee.ethz.ch/~oetiker/webtools/mrtg/ MRTG的中国镜象网址是:http://mrtg.openunion.org/ MRTG的下载网址是:http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/ ,现在最新的版本是:mrtg-2.9.27.zip 如果您使用的是LINUX或者UNIX系统,可以直接下载mrtg-2.9.27.tar.gz 。软件下载回来后,我们要先将其解压。由于MRTG是一个PERL写的程序,不需要安装,稍后有些安装过程需要在DOS里面完成,所以建议解压的路径为C:\MRTG。
下面给出详细的安装步骤:
1、 运行cmd,进入DOS状态;
2、 c:\>cd\mrtg\bin 进入刚才解压的MRTG目录,准备执行命令;
3、 使用perl mrtg 命令测试MRTG是否正确;
4、 执行命令行perl cfgmaker
chinatnk@192.168.0.254 --global "WorkDir: c:\www\mrtg" --output mrtg.cfg
这一行命令我要解释一下:
chinatnk@192.168.0.254 使用的是您需要获得SNMP数据的设备的community 和它的IP地址;
WorkDir: c:\www\mrtg 使用的是正确安装MRTG后,需要使用到的WEB目录,要根据实际情况更改;
output mrtg.cfg 则是输出后的配置文件名称;
改好了之后按一下回车,系统就开始执行配置了。由于我是先使用的是交换机来作为的SNMP源,上面命令执行后,它会绑定24个端口,有一些信息显示出来,而路由器上没有那么多需要绑定的端口,所以信息量会稍微少一些。
此一步骤正常执行完后,系统将在MRTG的目录下生成指定的mrtg.cfg文件,我们下一步要做的就是修改MRTG文件,使之符合我们的要求。
有的设备不支持SNMP协议,在这里将会出现错误的提示信息,请各位朋友注意一下。
注意,如果您是需要同时监控多个设备的流量,则需要修改output 参数后面的配置文件名,此例中是mrtg.cfg。
详细资料如下:
C:\mrtg\bin>perl cfgmaker
chinatnk@192.168.0.4 --global "WorkDir: e:\webroot\mrt
g" --output mrtg4.cfg
--base: Get Device Info on
chinatnk@192.168.0.4:
--base: Vendor Id: cisco
--base: Populating confcache
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/1 --> 1
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/2 --> 2
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/3 --> 3
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/4 --> 4
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/5 --> 5
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/6 --> 6
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/7 --> 7
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/8 --> 8
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/9 --> 9
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/10 --> 10
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/11 --> 11
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/12 --> 12
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/13 --> 13
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/14 --> 14
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/15 --> 15
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/16 --> 16
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/17 --> 17
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/18 --> 18
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/19 --> 19
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/20 --> 20
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/21 --> 21
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/22 --> 22
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/23 --> 23
--snpo: confcache
chinatnk@192.168.0.4: Name Fa0/24 --> 24
--snpo: confcache
chinatnk@192.168.0.4: Name Nu0 --> 25
--snpo: confcache
chinatnk@192.168.0.4: Name Vl1 --> 26
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/1 --> 1
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/2 --> 2
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/3 --> 3
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/4 --> 4
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/5 --> 5
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/6 --> 6
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/7 --> 7
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/8 --> 8
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/9 --> 9
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/10 --> 10
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/11 --> 11
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/12 --> 12
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/13 --> 13
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/14 --> 14
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/15 --> 15
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/16 --> 16
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/17 --> 17
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/18 --> 18
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/19 --> 19
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/20 --> 20
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/21 --> 21
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/22 --> 22
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/23 --> 23
--snpo: confcache
chinatnk@192.168.0.4: Descr FastEthernet0/24 --> 24
--snpo: confcache
chinatnk@192.168.0.4: Descr Null0 --> 25
--snpo: confcache
chinatnk@192.168.0.4: Descr Vlan1 --> 26
--snpo: confcache
chinatnk@192.168.0.4: Ip 192.168.0.4 --> 26
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 1
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 2 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 3 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 4 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 5 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 6 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 7 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 8 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 9 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 10 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 11 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 12 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 13 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 14 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 15 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 16 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 17 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 18 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 19 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 20 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 21 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 22 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 23 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 6 --> 24 (duplicate)
--snpo: confcache
chinatnk@192.168.0.4: Type 1 --> 25
--snpo: confcache
chinatnk@192.168.0.4: Type 53 --> 26
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-81 --> 1
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-82 --> 2
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-83 --> 3
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-84 --> 4
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-85 --> 5
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-86 --> 6
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-87 --> 7
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-88 --> 8
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-89 --> 9
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8a --> 10
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8b --> 11
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8c --> 12
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8d --> 13
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8e --> 14
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8f --> 15
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-90 --> 16
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-91 --> 17
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-92 --> 18
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-93 --> 19
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-94 --> 20
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-95 --> 21
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-96 --> 22
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-97 --> 23
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-98 --> 24
--snpo: confcache
chinatnk@192.168.0.4: Eth --> 25
--snpo: confcache
chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-80 --> 26
--base: Get Interface Info
--base: Walking ifIndex
--base: Walking ifType
--base: Walking ifAdminStatus
--base: Walking ifOperStatus
--base: Walking ifAlias
--base: Walking ifSpeed
--base: Writing mrtg4.cfg
C:\mrtg\bin>perl mrtg mrtg4.cfg
C:\mrtg\bin>
C:\mrtg\bin>perl cfgmaker
chinatnk@192.168.0.254 --global "WorkDir: e:\webroot\m
rtg" --output mrtg5.cfg
--base: Get Device Info on
chinatnk@192.168.0.254:
--base: Vendor Id:
--base: Populating confcache
--snpo: confcache
chinatnk@192.168.0.254: Descr Ethernet0 --> 1
--snpo: confcache
chinatnk@192.168.0.254: Descr Serial0 --> 2
--snpo: confcache
chinatnk@192.168.0.254: Descr Bri0 --> 3
--snpo: confcache
chinatnk@192.168.0.254: Descr LoopBack0 --> 4
--snpo: confcache
chinatnk@192.168.0.254: Ip 127.0.0.1 --> 4
--snpo: confcache
chinatnk@192.168.0.254: Ip 192.168.0.254 --> 1
--snpo: confcache
chinatnk@192.168.0.254: Ip 202.104.141.177 --> 1
--snpo: confcache
chinatnk@192.168.0.254: Type 6 --> 1
--snpo: confcache
chinatnk@192.168.0.254: Type 23 --> 2
--snpo: confcache
chinatnk@192.168.0.254: Type 23 --> 3 (duplicate)
--snpo: confcache
chinatnk@192.168.0.254: Type 24 --> 4
--snpo: confcache
chinatnk@192.168.0.254: Eth 00-e0-fc-06-d4-21 --> 1
--snpo: confcache
chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 2
--snpo: confcache
chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 3 (duplicate
)
--snpo: confcache
chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 4 (duplicate
)
--base: Get Interface Info
--base: Walking ifIndex
--base: Walking ifType
--base: Walking ifAdminStatus
--base: Walking ifOperStatus
--base: Walking ifSpeed
--base: Writing mrtg5.cfg
C:\mrtg\bin>perl mrtg mrtg5.cfg
C:\mrtg\bin>
5、 开始生成流量图及配置文件
6、
C:\mrtg\bin>perl mrtg mrtg.cfg
命令成功执行完成后,将会在我们前一个命令所指定的WEB目录里面生成以IP+端口命名的网页和一些png图片,这些图片就是网络当时的流量图。我们可以直接打开这个网页检查一下,看是否正常。刚开始生成后很多都是空白的,需要让它自动运行一段时间后才可以有图形表现出来。
7、 要使MRTG可以随时得到最新的流量图,我们还需要修改一下配置脚本,主要是刚才output参数所带的文件名mrtg.cfg,使用文本编辑器打开它。
文件头部已经说明了在Windows系统里面或者在UNIX系统里面的不同配置方法,现在因为是新版的MRTG,已经自动在尾部添加了工作目录,不需要我们再手工编辑。
为了使网络流量图可以每5分钟自动更新一次,我们还需要在
###Global Config Options的下一行加入一条命令:
RunAsDaemon: yes
这条命令的作用是使MRTG每5分钟自动去获取一次SNMP的数据及更新网络流量图形。
保存文件,退出。
8、 当我们需要同时监控的设备多于一个时或者设备的接口多于一个时,将会涉及到生成了多个配置文件,这样查看起来比较困难,这时我们需要使用indexmaker命令将多个数据收集起来做成一个文件里面。
执行如下命令:
C:\MRTG\BIN> perl indexmaker --output=index.htm mrtg.cfg
此时,系统将会自动生成index.htm在我们指定的WEB目录里面,我们现在可以打开网页文件来查看是否正常了。
9、 为了使系统在每次开机后,能自动运行该命令,我们还需要在启动里面加入这个快捷方式。
1)、在桌面击右键,选择快捷方式。
2)、输入快捷方式的运行命令行为 start /D c:\mrtg/bin wperl mrtg –logging=eventlog mrtg.cfg
3)、输入一个好记的文件名,如”mrtg流量监控”。
9、至此,MRTG已经可以正常运行了,并且会给我们提供每5分钟流量图,每日流量图,每周流量图,每月流量图,每年流量图。
更详细的安装MRTG的方法在MRTG的官方网站:http://people.ee.ethz.ch/~oetiker/w...g/nt-guide.html
把流量图加入您的网站
前面,我们已经生成了图量图文件了,现在是把它美化,并加入您的网站。
我们使用Dreamwaver MX等网页制作软件打开它,按自己所需要或者网站的网格美化一下,就可以正常使用了。

相 关 文 章
相 关 软 件
没有相关下载
逃生 放生 黄玫瑰 想太多 那滋味 擦肩而过 放手去爱 北京欢迎你 依然在一起 吻得太逼真 感动天感动地 坐上火车去拉萨 怎么会狠心伤害我
心碎 冲动 小太阳 别碰我 蒲公英 千山万水 改变自己 一定要爱你 等爱的玫瑰 陷入爱里面 北极星的眼泪 最后一次的温柔 亲爱的那不是爱情
光荣 火花 坏女人 日不落 樱花草 为你写诗 独家记忆 夏天的味道 寂寞才说爱 忘不掉的伤 爱上你是个错 第三者的第三者 地球人都知道我爱你
假如 相思 是非题 有缘人 舍不得 我的答铃 死而无憾 外滩十八号 越爱越难过 123木头人 和寂寞说分手 爱上你是我的错 爱情里没有谁对谁错
加入收藏留言建议自助友情链接普通友情链接站长的Blog
版权所有   COPYRIGHT 2002-2008 ★IT学习者★ ALL RIGHTS RESERVED.