计算机网络 实验指导书 共18个实验 Apache的安装与基本配置实验-以太帧和APR包分析实验_第1页
计算机网络 实验指导书 共18个实验 Apache的安装与基本配置实验-以太帧和APR包分析实验_第2页
计算机网络 实验指导书 共18个实验 Apache的安装与基本配置实验-以太帧和APR包分析实验_第3页
计算机网络 实验指导书 共18个实验 Apache的安装与基本配置实验-以太帧和APR包分析实验_第4页
计算机网络 实验指导书 共18个实验 Apache的安装与基本配置实验-以太帧和APR包分析实验_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络实验指导书

实验一、Apache的安装与基本配置

1.实验目的

通过对ApacheWeb服务港系统的安装与配置实验,加深对HTTP协议、HTML

语言的理解,掌握Apache服务器的安装与配置方法,为将来从事网络工程建设

打下基础。

2.实验要求

下载ApacheWEB服务器源代码,在Linux仄境下,编译生成执行代码,并

进行安装和基本配置,然后设计一个用于测试的网页,分别在本机和网络中其它

计算机上访问该测试网页,测试ApacheWeb服务器系统工作是否正常。

3.实验步骤

3.1实验准备

1、系统要求

•系统配置

建议CPU为PHI900MUZ以上,内存128.MB以上,磁盘可用空间100MB以上,

具有10M/100M网卡,操作系统采用RedHat6.0版本或更高版本。

・编译器环境

系统必须装有ANSI-C编译器,推荐使用来自FreeSoftwareFoundation(FSF)

的GNUCcompiler(GCC)。

2、下载源代码

Apache最新版本的源代码可以从ApacheSoftwareFoundation网站上:

http://httpd.apache,org/download.egi或其镜像站点下载,本书附带的光盘

上包括了httpd-2.0.49版本的原代码。

3、源代码解包

将下载的安装包httpd-2.0.49.tar.gz复制到某一个用户目录下(下面以

/usr/src/目录为例介绍),然后用以下命令解压:

$cd/usr/src

$tarxvfzhttpd-2.0.49.tar.gz

将会在/usr/src/目录下创建/http-2.0.49子目录,该目录下包含apache

的所有的源代码和相关文档。

3.2编译设置

Apache是一个由多模块组成的安装包,其功能可以根据不同的应用需求进行

裁剪,另外,Apache还可以在不同的操作系统环境下安装,由于不同的操作系

统其编译库可能不完全相同,所以必须设置好当前操作系统下编译参数,此外,

还需要设置好Apache系统的安装目录,这些工作可以通过/httpd-2.0.49目录

下的configure脚本来进行裁剪和检测,并形成下一步编译的Makefile文件。

执行./configure--help可显示Apache可以设置的参数或裁剪的模块及其

简要说明:

$cdhttpd-2.0.49

$./configure--help

除了以下几个参数可能需要更改外,一般情况下,使用系统默认的设置就可

以了。

•安装路径名

Apache默认的安装路径名为/usr/local/apache,如果需要,你可以通过

一prefix参数指定一个其他安装目录(如/usr/other/Web):

--prefix=/usr/other/Web

・功能模块

基本服务器安装包中包含了最常用的功能模块,如果要安装某扩展功能模

块,则需要在编译时指定包含之,同样,对于某个基本功能模块(在Apache文档

中有模块清单备查,其中状态为〃Base〃的为基本模块),如果不需要安装,则必

须明确地禁用它:

编译并包含模块MODULE:

-enable-MODULE

编译并包含用空格分隔的多个模块MODULE-LIST:

-enab1e-modules=MODULE-LIST

禁止编译并包含模块MODULE:

—disable-MODULE

编译并包含用空格分隔的MODULE-LIST成动态库DSO:

--enable-mods-shared=MODULE-L1ST

一般情况下使用默认的模块设置就可以了,下面的命令将配置基本的安装模

块并告诉编译器将Apache安装在/usr/local/apache目录下:

$cd/usr/src/httpd-2.0.49

$./configure-prefix=/usr/1ocal/apache

3.3编译

根据./configur。配置的模块和检测到编译参数(保存在Makefile中)执行

以下命令就可以对Apache源代码进行编译:

$cd/usr/src/httpd-2.0.49

$make

对一个具有基本配置的Apache进行编译,在PentiumIII机器上需要运行3

分钟左右,实际需要的时间因你的硬件和选择的模块数量会有很大不同。

正常情况下,编译能顺利完成,但如果操作系统或C语言编译器有问题,则

可能终止编译过程,此时需要根据报告的错误进行相应的处理。

3.4安装

如果编译正常完成,就可以将Apache安装到二述一prefix指定的目录中(如

/usr/local/apache),命令如下:

$cd/usr/src/httpd-2.0.49

$makeinstall

安装完成后,可以清除编译生成的中间文件(.o),以释放磁盘空间:

$cd/usr/src/httpd-2.0.49

$makeclean

注意:如果由于某种原因,需要重新./configure和编译时,一定要makeclean

清除上次编译生成的中间文件,否则编译器不会重新编译已有的文件,导致重新

编译无效。

3.5配置

Apache的运行配置文件放在/usr/local/apache/conf/httpd.conf中,通过

编辑该文件控制Apache服务器运行,在/usr/local/apache/docs/manual/有

Apache使用手册,在http://htt.pd.apache,org/docs/有完整的配置指令参考。

$cd/usr/1ocal/apache/conf

$vihttpd.conf

通常需要修改配置文件httpd.conf中以下几个参数:

1、修改服务器名称

指定HTTP服务器的域名和服务端口:

ServerNamewww.test,com:80

如果已为你的服务器注册了域名www.test.com,则可以通过该名字在网络上

访问WEB服务器,但如果你没有注册域名,则只能通过你的IP地址访问你的HTTP

服务器。

在注册域名前,为了能在本机上通过域名ww\v.tost,com访问该Web服务器,

可以在本机的/etc/hosts文件尾部增加一项本地域名与IP地址对应表,以便在

本机上测试访问www.test,com服务器(假设HTTP服务所在的机器IP地址为

192.168.25.188):

192.168.25.188www.test.com

2、修改服务端口

缺省情况下,http服务的socket服务端口为80,你可以修改之:

Listen80

3、修改文档目录

你的网页默认情况下是放在安装目录下的htdocs中(如:

/usr/local/apache/htdocs),你可以在此修改之:

DocumentRoot/usr/local/apache/htdocs

4、修改出错信息、日志目录

HTTP服务器出错信息和访问日志默认时是放在安装目录中的

logs/errorlog和access_log中,你可以在此修改之:

ErrorLoglogs/error_log

日志的级别有debug/info/notice/warn/error/crit/alert/emerg,可以修

改日志的级别:

LogLevelwarn

你可以指定记录客户访问本服务器的日志目录和格式,将来可以用以分析服

务器被访问的情况:

CustomLoglogs/access_logcommon

5、修改支持的语言和编码

指定网页默认的语言:

DefaultLanguagezh-CN

指定网页支持的语言和优先级别:

AddLanguagezh-CN.zh-cn

AddLanguageen.en

LanguagePriorityzh-CNen

指定网页默认的字符集和支持的字符集:

AddDefau1tCharsetGB2312

AddCharsetGB2312.gb2312.gb

3.6运行与停止

可以执行以下命令手工启动你的ApacheHTTP服务器:

$cd/usr/local/apache/bin

$./apachectlstart

可以通过以下命令来检查HTTP服务器进程(缺省时有5个,可配置):

$ps-A|grephttpd

HTTP服务启动和运行时根据前面设置的参数写日志文件,你可以这样来动态

观察Apache的启动与运行过程日志信息和出错信息:

tail-f/usr/local/apache/logs/access_log

tail-f/usr/local/apache/logs/error_log

如果HTTP服务器进程已运行,则你可以在本机上用http:〃localhost/或

http:/127.0.0.1/来访问你的测试网页了,这个网页位于

/usr/local/apache/htdocs/o

如果在其他机器上需要访问该服务器,则必须输入http:〃192.168.25.188

才能访问。

注意,必须修改HTTP服务器上防火墙系统的设置(进入应用程序/系统设置

/安全级别的设置界面),允许信任HTTP服务,否则无法访问该HTTP服务。

最后。你可以停止HTTP服务器:

$cd/usr/local/apache/bin

$./apachectlstop

还可以编辑启动文件apache,并将该文件放到/etc/rud/「c.local/init.d/

目录下,系统开机时自动启动Web服务器。

4、实验评测

按照上述步骤安装并配置

Apache服务器,然后启动

ApacheWeb服务后,并进行以

下测试,以判断Web服务是否

正常:

(1)在服务器上测试

在服务器上启动浏览器,输

入http:〃localhost/或

http:〃192.168.25.188或

http:〃www.test,com,能看至“

Apache默认的测试网页(中

文)。

如果看不到或显示的页面不是上图内容,则说明配置有问题。

自己设计一个测试网页,替代系统原来的网页,重复上述测试,如果能看到

你设计的测试内容,则说明Web服务器工作正常。

(2)在局域网内测试

在局域网另外一台计算机上启动浏览器,输入http:〃192.168.25.188,如

果能看到你设计的测试内容,则说明Web服务器工作正常。

在一台Linux机器上/etc/hosts文件尾部增加一项域名与IP地址对应表,

以便能通过域名访问ww.test.com服务器:

192.168.25.188www.test.com

然后在浏览器中输入htip://嬴晟lest.com,应同样能看到你设计的测试内

容。

实验一、BIND域名服务器的安装与配置

1.实验目的

通过对BIND服务器系统的安装与配置实验,加深对DNS协议及工作过程的

理解,掌握DNS服务器的安装与配置方法,为将来从事网络工程建设打下基础。

2.实验要求

下载BIND域名服务器源代码,在Linux环境下,编译生成执行代码,并进

行安装,然后根据以下实验环境配置域名服务器,并进行正反域名解析,以测试

BIND域名服务器系统二作是否正常。

假定需要建立一台某企业网络的DNS主服务器,应用环境如下:

(a)企业使用的二个C类网段地址:192.168.25.xxx,192.168.26.yyy;

(b)企业域名为test.com,并已注册,主域名服务器地址192.168.25.188,

主机名为abc.test,com,辅域名服务器地址192.168.25.168,外部域名服务器

为:202.106.0.98;

(

c企业的WWW服务器地址为192.168.25.1,名字为www.test.com

/\

nd

\7企业的Mail服务器地址为,名字为mail.tost.com

/\

(e1

X7企业的Database服务器地址为192.168.25.3,名字为db.test.com

z\

(f!

x7企业的ftp服务器地址为192.168.25.3,名字为ftp.test.com

/\

(g

\7企业的proxy服务器地址为192.168.25.4,名字为proxy,test,com

/\

lh)

\/拒绝服务的二个C类网段地址服92.0.0.xxx,192.1.0.yyy

3.实验步骤

3.1实验准备

1、系统要求

•系统配置

建议CPU为Pin900MHZ以上,内存128MB以上,磁盘可用空间100MB以上,

具有10M/100M网卡,操作系统采用RedHat6.0版本或更高版本。

・编译器环境

系统必须装有ANS-C编译器,推荐使用来自FreeSoftwarcFoundation(FSF)

的GNUCcompiler(GCC)0

2、下载源代码

BIND最新版本的源代码可以从http:〃www.isc.org/index.pl?/sw/bind/站

点下载,本书附带的光盘上包括了Bind9.2.4rc6版本的原代码。

3、源代码解包

将下载的安装包bind-9.2.4rc6.tar.gz复制到某一个用户目录下(下面以

/usr/src/目录为例介绍),然后用以下命令解压:

$cd/usr/src

$tarxvfzbind-9.2.4rc6.tar.gz

将会在/usr/src/目录下创建/bind-9.2.4rc6子目录,该目录下包含Bind

的所有的源代码和相关文档。

3.2安装设置

$cdbind-9.2.4rc6

$./configure-prefix=/usr/local/bind

$makedepend

3.3编译

$make

3.4安装

$makeinstall

手工创建链接文件:

$mkdir-p/usr/local/bind/var/run

$mkdir-p/usr/local/bind/var/named

$mkdir-p/usr/local/bind/etc

$touch/usr/local/bind/etc/named.conf

$touch/usr/local/bind/etc/rndc.conf

$In-sf/usr/local/bind/etc/named.conf/etc/named,conf

$In-sf/usr/local/bind/etc/rndc.conf/etc/rndc.conf

$In-sf/usr/local/bind/var/named/var/

$In-sf/usr/local/bind/sbin/rndc/usr/sbin/rndc

$In-sf/usr/local/bind/sbin/named/usr/sbin/named

3.5配置

3.5.1实验环境设立

假定我们需要为某企业网络建立一台DNS主服务器,应用环境如实验要求所示。

352远程管理配置

BIND提供远程域名服务控制器(Theremotenamedaemon

control:RNDC),是管理员用来控制域名服务器的应用程序,用于动态加载、

停止、配置DNS服务,它需要的配置文件为/etc/rndc.conf,其内容如下:

$vi/etc/rndc.conf

//共享密钥,用于和受控DNS服务器之间完成认证.

keytest.

(

algorithm〃hmac-md5〃;

secret"xxxxxxxxxxxxxxxxxxxxxx二二〃;〃此处的xxxx即为下面将要生成

〃的共享密钥KEY.

};

options

(

〃管理的DNS主机名称,本例为管理本机。

default-serverlocalhost;

default-keytest.;

);

serverlocalhost

(

keytest.;

);

BIND提供了一种安全机制---TSIG(TransactionSIGnatures),使用

共享密钥进行安全的DNS通知、更新,创建共享密钥的方法如下:

$cd/usr/local/bind

$sbin/dnssec-keygen-ahmac-md5-b128-nHOSTtest.

生成的密钥文件为K***木木.key和K*****.private,其中*.private文件包

含的KEY"xxxxxxxxxxxxxxxxxxxxxx—z,即为共享密钥。

3.5.3运行配置

Bind的主配置文件为named,conf,zone是配置文件中的最重要的组成部

分,描述了一个授权域名下的域名解析信息,一个配置的例子如下:

keytest.

algorithm〃hmac-md5〃;

//共享密钥,只有和改共享密钥西配的主机,方能管理DNS服务器。

secret〃xxxxxxxxxxxxxxxxxxxxxx==";//此处的KEY即为上述生成的密钥.

};

controls

(

inet127.0.0.1allow{localhost;}keys{test.;};

};

〃非法的网络地址:

aclbogus-nets{192.0.0.0/16;192.1.0.0/16;};

//内部网络地址范围:

aclour-inner-nets(127.0.0.1/32;192.168.25.0/16;

192.168.26.0/16;};

〃私有的外部网络地址范围:

aclour-outer-nets[/16;};

〃内部的辅DNS服务器地址:

acltransfer-inner-ips

{192.168.25.168};

〃外部的辅DNS服务器地址:

acltransfer-outer-ips{;};

options

(

version〃$Id,test,com”;

directory,z/var/named;

allow-query{any;};

〃对于内网地址,和私有的外网地址,提供DNS的递归查询服务。

allow-recursion{our-inner-nets;our-outer-nets;};

〃对于非法地址,拒绝提供服务.

blackhole{bogus-nets;};

notifyyes;

recursionyes;

forwardfirst;

〃递归查询时,如果本地的cache没有命中,则依次对forwarders中的

〃主机进行DNS查询:

forwarders

202.106.0.98;

};

listen-on-v6{none;};

auth-nxdomainno;

};

//view提供了根据来访的地址范围,提供不同的服务。该internal视图为木

地提供解析服务。

view"internal”

(

match-clients{our-inner-nets;};

recursionyes;

zone”0.0.127.in-addr.arpa〃

(

typemaster;

//localhost的反相解析域

file

“named,local”;

notifyno;

);

zone”25.168.192.in-addr.arpa〃

|

typemaster;

//192.168.25网段的反相解析域

file

"named.192.168.25〃;

notifyyes;

allow-transfer{transfer-inner-ips;};

};

zone〃26.168.192.in-addr.arpa/z

(

typemaster;

//192.168.26网段的反相解析域

file

“named.192.168.26〃;

notifyyes;

allow-transfer{transfer-inner-ips;);

};

zone””

(

typemaster;

//test,com在内部网的域名解析域

file“named,inner,test,com”;

allow-query{any;};

allow-transfer(transfer-inner-ips;};

notifvyes;

);

};

//outerview视图为外部提供解析服务。

view"external”

(

match-clients{any;};

recursionno:

zone〃0.0.127.in-addr.

(

typemaster;

file"named,local”;

notifyno;

);

zone〃25.168.192.in-addr.arpa〃

(

typemaster;

file"named.192.168.25〃;

notifyyes;

allow-transfer(transfer-inner-ips;};

);

zone〃26.168.192.in-addr.

(

typemaster;

file"named.192.168.26〃;

notifyyes;

allow-transfer{transfer-inner-ips;};

);

zonetest,com

typemaster;

//test,com在外部网的域名解析域

file"named,outer,test,com”;

allow-query{any;};

allow-transfer(transfer-outer-ips;};

notifyyes;

};

};

3.5.4区域文件的配置

$cd/var/named

用vi依次编辑各区域文件。

//var/named/named.local的内容如下:

$TTL3600

@INSOAlocalhost.root,localho

st.(

2001030801;serial

28800;refresh

14400;retry

3600000;expire

86400;default_ttl

)

©INNSlocalhost.

1INPTRlocalhost.

;EndofFile

/var/named/named.192.168.25的内容如下:

$TTL3600

@INSOA

nsl.test.com.abc.test.com.(

2001030801;serial

600:refresh

600;retry

3600000;expire

3400;default_ttl

)

@INNSnsl.test.com.

@TNNSns2.test.com.

1INPTRaaa;192.168.25.1对应的名

字为aaa.test,com

2INPTRbbb;192.168.25.2对应的名字

为bbb.test,com

3TNPTRccc.;192.168.25.3对应的名

字为ccc

4INPTRddd.;192.168.25.4对应的名

字为ddd

;EndofFile

/var/named/named.192.168.26的内容如下:

$TTL3600

@INSOA

nsl.test.com.abc.test.com.(

2001030801;serial

600;refresh

600;retry

3600000;expire

3400;dpfault._tt1

©INNSnsl.test.com.

©INNSns2.test.com.

1INPTRaaa;192.168.26.1对应的名

字为aaa.test,com

2INPTRbbb;192.168.26.2对应的名字

为bbb.test,com

3INPTRccc.;192.168.26.3对应的名字

为ccc

4INPTRddd.;192.168.26.4对应的名

字为ddd

;EndofFile

/var/named/named.inner,test,com的内容如下:

$TTL3600

©INSOA

nsl.test.com.abc.test.com.(

2001030801;serial

600;refresh

600;retry

3600000;expire

3400;default_ttl

)

@INNSnsl.test.com.

@INNSns2.test.com.

INMX5mail.test,com

localhostINA127.0.0.1

nsl:NA192.168.25.188

ns2INA192.168.25.168

abcINA192.168.25.188

WWWINA192.168.25.1

mailINA192.168.25.2

db:NA192.168.25.3

ftpINA192.168.25.3

proxyINA192.168.25.4

/var/named/named.outer,test,com

$TTL3600

INSOA

nsl.test.com.abc.test.com.(

2001030801;serial

600;refresh

600;retry

3600000;expire

3400;default_ttl

)

@INNSnsl.test.com.

@INNSns2.test.com.

@INMX5mail.test,com

localhostINA127.0.0.1

nsl:NA192.168.25.188

ns2INA192.168.25.168

abcINA192.168.25.188

WWWINA192.168.25.1

mailINA192.168.25.2

dbINA192.168.25.3

ftpINA192.168.25.3

proxyINA192.168.25.4

3.6运行与停止

3.6.1启动文件

用vi在/etc/rc.d/init.d/目录下编辑一个启动文件named

#!/bin/sh

#

#Thisshel1scripttakescareofstartingandstoppingnamed(BINDDNS

server).

#description:named(BIND)isaDomainNaneServer(DNS)

#thatisusedtoresolvehostnamestoIPaddresses.

#probe:true

#Sourcefunctionlibrary.

./etc/rc.d/init.d/functions

#Sourcenetworkingconfiguration.

./etc/sysconfig/network

#Checkthatnetworkingisup.

[${NETWORKING)=〃no〃]&&exit0

[f/usr/sbin/named!||exit0

[-f/etc/named,conf]||exit0

#Seehowwewerecalled.

case〃$1"in

start)

#Startdaemons.

echo-n"Startingnamed:〃

daemonnamed

echo

touch/var/lock/subsys/named

,,

stop)

#Stopdaemons.

echo-n〃Shuttingdownnamed:〃

killprocnamed

rm-f/var/lock/subsys/namcd

echo

,,

status)

/usr/sbin/rndcstatus

exit$?

,,

restart)

/usr/sbin/rndcrestart

exit$?

reload)

/usr/sbin/rndcreload

exit$?

probe)

#namedknowshowtoreloadintelligently;wedon'twant

linuxconf

ittooffertorestarteverytime

/usr/sbin/rndcreload>/dev/null2>&1|echostart

exit0

,,

*)

echo"Usage:named{start|stopstatusrestart)

exit1

esac

exit0

3.6.2创建符号联结

$In-s/etc/rc.d/init.d/named/etc/rc.d/rcO.d/K45named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rcl.d/K45named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rc2.d/K45named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rc3.d/S55named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rc4.d/S55named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rc5.d/S55named

$In-s/etc/rc.d/init.d/named/etc/rc.d/rc6.d/K45named

3.6.3启动/停止

$tail-f/var/log/nessages&

$/etc/rc.d/init.d/namedstart//Startthenameserver

$/etc/rc.d/init.d/namedstop//Stopthenameserver

4.实验评测

4.1.配置检查

$sbin/named-checkconf

$sbin/named-checkzonezonenamezonefilename

4.2.nslookup测试

在LINUX系统中,测试前必需编辑/etc/resolv.conf文件:

#cd/etc

#viresolv.conf

search

nameserver192.168.25.188

然后再用nslookup测试。

#nslookup

Note:nslookupisdeprecatedandmayberemovedfrcnfuturereleases.

Considerusingthedig,orhost,programsinstead,Runnslookupwith

the\-si1[ent]'optiontopreventthismessagefromappearing.

—setall

Defaultserver:192.168.25.188

Address:88#53

Setoptions:

novcnodebugnod

2

searchrccursc

timeout=0retry=2port=53

querytype=Aclass=IN

srchlist=

->nsl

Server:192.168.25.188

Address:192.168.25.188#53

Name:nsl.test,com

Address:192.168.25.188

WWW

Server:192.168.25.188

Address:192.168.25.188#53

Name:www.test,com

Address:192.168.25.1

->mail

Server:192.168.25.188

Address:192.168.25.188#53

Name:mail.test,com

Address:192.168.25.2

反向解析:

->setquery=ptr

->192.168.25.1

Server:192.168.25.188

Address:192,168.25.188#53

1.25.168.192.in-addr.arpaname=111.25.168.192.in-addr.arpa.

->192.168.25.5

Server:192.168.25.188

Address:88#53

5.25.168.192.in-addr.arpaname=555.

今exit

IP包与ICMP包分析实验

一、目的

1、理解IP包格式

2、理解ICMP包协议格式

二、实验类型

验证类实验

三、实验课时

2学时

四、实验步骤

1、在VC6.0以上环境下编译提供IPdump协议包分析程序,了解其工作原理和执行流程,

重点熟悉IP包解包函数和ICMP包解包函数,然后运行该程序,并完成下列实验。

2、IP协议分析

•指定IPdump运行时源IP地址为主机A的地址,目的IP地址为主机B的地址,分

析开关为IP协议;

•从主机A上向主机B发P1NG检测报文,捕获IP数据包,记录并分析各字段的含

义,并与IP数据包格式进行比较;

•在Dos仿真环境下运行traccrt“校园网内某服务器IP地址”,如:

tracert

捕获IP数据包,记录并分析各字段的含义,并与IP数据包格式进行比较。

表I:IP包格式

实验项IP包字段名称值含义

1

2

3

4

•••

5、ICMP协议分析

•指定IPdump运行时源IP地址为主机A的地址,目的IP地址为主机B的地址,分

析开关为1CMP协议;

•从主机A上向主机B发PING检测报文,捕获ICMP请求数据包和应答数据包,

记录并分析各字段的含义,并与ICMP数据包格式进行比较;

•在主机A上ping12700.1,观察能否捕获ICMP数据包;

•在Dos仿真环境卜运行netstat-s,查看本机已经接收和发送的ICMP报文类型及

报文个数。

表2:ICMP包格式

实验项1CMP包字段名称值含义

1

2

3

4

五、实验体会

六、思考问题

1、为什么运行ping时,不能捕获到ICMP报文?如果运行ping本机IP地址

能收到报文吗?

2、能否在WINDOWS操作系统下进行设置,使得主机收到ICMP报文后不响应呢?

实验二、POP3服务器的安装与配置

目前使用很广的POP3邮件接收系统有如Qpoper,IPOP等,下面简单介

绍QPopper的安装与配置。

1.实验目的

通过对Qpoppcr服务器系统的安装与配置实验,加深对POP3协议的理解,

掌握POP3邮件服务器系统的安装与配置方法,为将来从事网络工程建设打下基

础。

2.实验要求

下载Qpopper服务器源代码,在Linux环境下,编译生成执行代码,并进行

安装和配置,使用测试帐号abc和xyz,分别在本机和网络中其它计算机上先使

用Sendmail发送邮件,然后再通过Qpopper接收邮件,测试Qpopper服务器系

统工作是否正常。

3.实验步骤

3.1实验准备

1、系统要求

•系统配置

建议CPU为PHI900MHZ以上,内存128MB以上,磁盘可用空间100MB以上,

具有10M/100M网卡,操作系统采用RedHat6.0版本或更高版本。

・编译器环境

系统必须装有ANS-C编译器,推荐使用来自FreeSoftwareFoundation(FSF)

的GNUCcompiler(GCC)o

2、下载源代码

Qpopper最新版本的源代码可以从http://ww.eudora.com/qpopper站点下

载,本书附带的光盘上包括了Qpopper4.0.5版本的原代码。

3、源代码解包

将下载的安装包cpopper4.0.5.tar.gz复制到某一个用户目录下(下面以

/usr/src/目录为例介绍),然后用以下命令解压:

$cd/usr/src

$tarxvfzqpopper4.0.5.tar.gz

将会在/usr/src/目录下创建/qpopper4.0.5子目录,该目录下包含Qpopper

的所有的源代码和相关文档。

3.2安装设置

进入安装包所在目录:

$cd/usr/src/qpopper4.0.5

$./configure-help〃可查看配置选项

指定安装目录为/usr/local/qpopper

$./configure-prefix=/usr/local/qpopper-enable-standalone

3.3编译

$cd/usr/src/qpopper4.0.5

$make

3.4安装

首先,手工创建有关目录:

$cd/usr/local

$mkdirqpopper

$mkdirqpopper/sbin

$mkdirqpopper/man

$mkdirqpopper/man/man8

执行安装命令,把compile出来的执行文件popper复制到

/usr/local/qpopper/sbin/41:

$cd/usr/src/qpopper4.0.5

$makeinstall

安装完成后,可以清除编译生成的中间文件(.。),以释放磁盘空间:

$makeclean

3.5配置

Qpopper不需要做特殊的设置,使用默认的设置即可。

3.6用户管理

在Unix中添加一个操作系统用户就会有一个电子邮件帐户,不需要特别

设置,可以通过该用户和密码用popper收邮件。

3.7运行与停止

运行Qpopper:

$cd/usr/local/qpopper/sbin

$./popper

popper运行起来后,将会形成Fl志文件,缺省时在/var/log/messages

中,启动后可通过命令来查看,以发现问题:

$tail-f/var/1og/messages&

如果日志不详细,还可以通过在./configure中参数

-enable-low-debug提供详细的运行日志。

停止Qpopper:

$ps-A|greppopper

$kill-9processID

4.实验评测

Qpopper运行起来后,可以通过以下命令进行测试(假设邮件服务器的IP地

址为192.168.25.188),其中‘好'表示人输入的命令,’6'表示Qpopper返

回的信息:

$telnet192.168.25.188110〃110为POP3服务端口

♦Trying192.168.25.188...

<-Connectedtowww.test,com(192.168.25.188).

(Escapecharacteris'

—OKQpopper(version4.0.5)atteststarting.

〃输入用户名

今userxyz

<-+0KPasswordrequiredforxyz.

//输入用户口令

今passtestl23

<-+0Kxyzhas2visiblemessages(0hidden)in1069octets.

〃查看邮件数量,显示有两份邮件及每个邮件的大小:

<-+0K2visiblemessages(1069octets)

<-l530

62539

J

//收取第1份邮件

->retr1

<-+0K530octets

<-Return-Path:<xyz@test.com>

<-Received:fromnsl.test,com([192.168.25.188])

(bylocalhost,localdomain(8.13.0/8.13.0)withESMTPidi79Q0013316

<-for<xyz@test.com>;Mon,30Aug200417:26:24+0800

<"Subject:

(From:abcabc@test.com

<-To:xyz@test.com

^-1234567890abcdefg

J

〃收取第2份邮件

->retr2

〃删除第1份邮件

)dele1

<-+0KMessage1hasbeendeleted.

〃删除第2份邮件

♦dele2

<-+0KMessage2hasbeendeleted.

〃退出

->quit

通过上述命令将以xyz@的身份登录邮件服务器,收取或删除邮

件。

如果上述操作能正确完成,则表明POP3服务器能正常工作,可以通过

outlook等POP3客户端程序接收邮件。

下表是POP3协议的命令:

命令简要描述

USER输入用户帐号(注:并非邮件地址)

PASS输入该帐号对应的密码

STAT/LIST显示该帐号上是否有邮件

RETR从服务器上收取某个邮件

DELE删除服务器上的某个邮件

QUIT结束本次接收通信过程

实验一、SMTP服务器的安装与配置

1.实验目的

通过对Sendmail服务器系统的安装与配置实验,加深对SMTP协议的理解,

掌握Sendmail邮件服务器的安装与配置方法,为将来从事网络工程建设打下基

础。

2.实验要求

下载Sendmail服务器源代码,在Linux环境下,编译生成执行代码,并进

行安装和配置,然后创建二个测试帐号,分别在本机和网络中其它计算机上使用

测试帐号发送邮件,测试Sendmail服务器系统工作是否正常。

3.实验步骤

3.1实验准备

1、系统要求

•系统配置

建议CPU为PHI900M1IZ以上,内存128.MB以上,磁盘可用空间100MB以上,

具有10M/100M网卡,操作系统采用RedHat6.0版本或更高版本。

・编译器环境

系统必须装有ANSI-C编译器,推荐使用来自FreeSoftwareFoundation(FSF)

的GNUCcompiler(GCC)o

2、下载源代码

Sendmail最新版本的源代码可以从httpi/A^v.sendmail.org或其镜像站

点下载,本书附带的光盘上包括了sendm

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论