IPv6,IPSec导引2-试验Linux+NAS+

IPv6,IPSec导引2-试验Linux+NAS+
IPv6,IPSec导引2-试验Linux+NAS+

IPv6和IPSec

试验笔记

1.IPv6 in Linux配置 (2)

1.1.安装Debian (2)

1.2.检查IPv6支持 (2)

1.3.添加IPv6工具组件 (2)

2.IPv6路由实验 (3)

2.1.自动分配IPv6地址 (3)

2.2.路由配置 (4)

3.NAS:访问控制 (5)

3.1.NAS网关原理试验:允许或禁止路由访问 (5)

3.2.NAS部署试用:走TT (6)

3.3.获得正式的IPv6地址:使用BTexact的IPv6隧道 (7)

3.4.自动分配IPv4地址:DHCPv4 Server (7)

3.5.登录界面:重定向页面 (9)

3.4.1 Apache的配置 (9)

4.NAS @ 211.86.49.110说明 (10)

5.IPSec in Linux试验 (10)

5.1.FreeS/WAN (11)

5.2.KAME-racoon (11)

5.2.1IPSec/IPv4 (11)

5.2.2IPSec/IPv6 (12)

5.2.3IPSec/IPv6 with CERT (13)

5.3.isakmpd (14)

6.Tunnel Broker (14)

7.参考 (14)

1.IPv6 in Linux配置

Linux对IPv6的支持是比较彻底的,这得益于社区的共同努力,尤其是USAGI项目的持续努力,2.6内核保持了较好的IPv6新特性。

下面以Debian3.1r1a为例,介绍IPv6的安装和配置。

1.1.安装Debian

Debian3.1r1a默认安装。修正sources.list启用新的安装源:

deb ftp://211.86.49.110/pub/ISOs/Debian3.1r1a/debian-31r1-i386-binary-1/ unstable contrib main

deb ftp://211.86.49.110/pub/ISOs/Debian3.1r1a/debian-31r1-i386-binary-2/ unstable contrib main

然后更新dpkg库:

#apt-get update

为了方便后期使用,安装辅助工具:

#apt-get install apt-show-versions // 查看已经安装组件列表

#apt-get install rcconf //服务管理

#apt-get install ssh samba less //常用工具

为了操作方便,尤其是使用vmware虚拟机中安装的Linux时,建议从Windows中使用ssh 连接到linux,同时在Linux启用Samba服务,这样可以在Windows中方便的浏览Linux文件。

1.2.检查IPv6支持

Linux内核2.4/2.6已全面支持IPv6。核实当前系统是否已经开启IPv6支持:

#cat /proc/net/if_inet6

#ping6 ::1

IE/Mozilla/Firefox浏览器都支持IPv6。Mozilla/Firefox可以使用这种形式的URL(IE 不能使用这种形式):

http://[3e79:1::1]/

如果是IE,可以在/etc/hosts(\windows\system32\drivers\hosts)文件中添加一行,然后访问http://rose/。

3e79:1::1 rose

1.3.添加IPv6工具组件

将要用到的主要的IPv6工具:

ping6

traceroute6

tracepath6

tcpdump

添加net-tools组件(in debian 默认已经安装),以及添加iproute等组件:

apt-get install net-tools

apt-get install iproute

apt-get install iputils-arping iputils-ping iputils-tracepath

apt-get install tcpdump nmap

可以综合为一条命令:

apt-get install net-tools iproute iputils-arping iputils-ping iputils-tracepath tcpdump nmap

2.IPv6路由实验

路由器至少有两个网络接口连接两个网络。

2.1.自动分配IPv6地址

IPv6的路由器可以使用radvd分发地址配置信息,主要是广播地址前缀。

安装radvd组件:

#apt-get install radvd

比如在eth0网段上广播路由前缀3e79:1::/64,配置文件/etc/radvd.conf内容如下。3e79是随便取用来测试的地址。

interface eth0 {

AdvSendAdvert on;

MinRtrAdvInterval 3;

MaxRtrAdvInterval 10;

prefix 3e79:1::/64 { // 3e79 CNGI

AdvOnLink on;

AdvAutonomous on;

AdvRouterAddr on;

};

};

使用radvdump命令可以看到radvd的路由广播信息。

#radvdump

为方便设置eth0的地址为3e79:1::1。

#ifconfig eth0 add 3e79:1::1 // 为什么自己网卡不能自动获得IPv6地址?

eth0所在网络上的其他机器可以自动获得3e79:1::/64前缀的IPv6地址,其后64位由网卡MAC地址自动衍生。比如某机器A获得的地址是3e79:1::20c:29ff:fedc:a021,机器B获得的地址是3e79:1::20c:29ff:feb4:290c。则A、B和Rose机器相互之间可以使用3e79:1::/64

前缀的地址相互ping 通。

查看本机IPv6地址: #ifconfig | grep inet6

2.2. 路由配置

机器Rose 作为路由器,有2块网卡分别连接两个LAN 。一个LAN 是实验室网络,包括原IP 属于211.86.49.0/24的所有机器,其中有一台专门的测试机Alice 。另一个LAN 是虚拟LAN ,使用OpenVPN 和桥接连接到远程一个TT 网段上,其上一台测试机Bob 。

(1) eth0 3e79:1::1/64 接在实验室LAN ,发布3e79:1::/64前缀。 (2) eth1 3e79:2::2/64 连接远程LAN 的隧道,发布3e79:2::/64前缀。

结构图示 {a/b/r 都是vmware 虚拟机}

核实在Rose 上已经开启IPv6路由转发(/proc/sys/net/ipv6/conf/all/forwarding),配置radvd ,分别在eth0和eth1上提供3e79:1::/64和3e79:2::/64前缀,并设置路由,脚本如下:

hostname rose

echo 1 > /proc/sys/net/ipv6/conf/all/forwarding ifconfig eth0 up

ifconfig eth0 add 3e79:1::1/64 route -A inet6 add 3e79:1::/64 eth0 ifconfig eth1 up

ifconfig eth1 add 3e79:2::2/64 route -A inet6 add 3e79:2::/64 eth1

可能由于Linux in vmware 的MAC 地址动态变化的原因,每次获得的IPv6地址有变化。为方便,可以另外添加一个地址,比如Alice 额外设置3e79:1::a 。这个地址可以视同静态地址被外部引用。在Alice 上:

hostname alice

ifconfig eth0 add 3e79:1::a/64

route -A inet6 add 3e79:2::/64 gw 3e79:1::1 在Bob 上: hostname bob

ifconfig eth0 add 3e79:2::b

宽带

route -A inet6 add 3e79:1::/64 gw 3e79:2::2

为了方便,特添加到/etc/hosts(\windows\system32\drivers\hosts):

3e79:1::1 rose rose1 r1 r

3e79:1::a alice a

3e79:2::2 rose2 r2

3e79:2::b bob b

此时A、B之间可以ping6通。

注:实际上Rose是运行在238上的vmware虚拟机,Alice是运行在110上的虚拟机,Bob 是运行在OpenVPN隧道远端的虚拟机。

3.NAS:访问控制

上面的路由实验中默认允许任意分组通过路由器。下面使用Linux内置的防火墙功能演示网络访问服务(NAS)的实现。

3.1.NAS网关原理试验:允许或禁止路由访问

把3f79:1::/64当作内网,把3f79:2::/64当作外网。一开始禁止所有源自内网的分组通过路由器访问外网:

ip6tables -A FORWARD -s 3e79:1::/64 -j DROP

ip6tables -D FORWARD -s 3e79:1::/64 -j DROP // 如果恢复

允许比如Alice、svr110通过,则:[登录成功后]

ip6tables -I FORWARD -s 3e79:1::a/128 -j ACCEPT

如果再禁止通过:[注销或超时]

ip6tables -D FORWARD -s 3e79:1::a/128 -j ACCEPT

注意:A的IPv6地址是通过radvd广播前缀结合本机网卡MAC自动得来的,此处为方便假设。

假如位于外网3e79:2::/64上有某些资源(比如可以连接到IPv6互联网),3e79:1::/64上的用户可以登录后访问。

http://rose/login.htm

该网页用一个FORM接受用户提交的帐号、口令、登录/注销请求,数据POST路由器rose 的/cgi-bin/checkin.cgi脚本,该脚本文件检查用户名字和口令是否有效,如果有效则登录或注销。

登录成功,允许当前用户IP地址通过网关访问3e79:2::。

注销成功,禁止当前用户IP地址通过网关访问3e79:2::。

为了演示效果,同时支持IPv4,内网地址172.21.0.0/16,外网地址172.22.0.0/16。如图:

注:login.htm、checkin.cgi、cngiuser.conf、rc内容与代码,可以ssh登录rose查看。{ 0utdate }

注意事项

(1) cgi脚本文件需要设置可执行属性。

chmod +x checkin.cgi

(2)为了让webserver/CGI能够操作iptables,暂时设置ip6tables为SUID属性。这样做应该不会带来问题。

chmod +s `which ip6tables`

chmod +s `which iptables`

3.2.NAS部署试用:走TT

在Alice上,启用IPv6,获得IPv6地址,修改hosts,访问http://rose/login.htm登录,则可以访问3e79:2::/64外网。

Bob有一条TT宽带线路。使用IPv4,在Bob上启用NAT,则可以让内网透明使用TT线路。同时,配合对路由表的修正,仍可以保持对教育网的高速访问。

在Rose上如下配置,并启用IPv4路由转发: [主要思路如此]

echo 1 > /proc/sys/net/ipv4/ip_forward //启用IPv4路由

ifconfig eth0:1 172.21.1.1/16 // Rose的内网地址

ifconfig eth1:1 172.22.2.2/16 // Rose的外网地址,可达Bob

route add -net 0/0 172.22.22.22 // IPv4的默认路由指向Bob 在Bob上配置外网地址,同时启用IPv4的路由转发和NAT:

ifconfig eth0:1 172.22.22.22

echo 1 > /proc/sys/net/ipv4/ip_forward

iptable -t nat -A POSTROUTING -s 172.16.0.0/12 -o eth1 -j MASQUERADE 内网其他机器上的IPv4地址自己手工配置为172.21.0.0/16,则在172.21.0.0/16上的机器可以通过Rose经由Bob使用TT高速线路。如果需要保持EDU仍走校园网,则可以保持路由表规则即可。

比如在211.86.49.238上的配置如下:

netsh interface ip add addr "本地连接" 172.21.49.238 255.255.0.0

route add 0.0.0.0 mask 0.0.0.0 172.21.1.1 metric 1

route add 202.194.0.0 mask 255.255.0.0 211.86.49.254 metric 1

… // 以及其他教育网地址段

3.3.获得正式的IPv6地址:使用BTexact的IPv6隧道

3e79::是非正式的IPv6地址。互联网上有好多站点提供测试用IPv6地址,BTexact即提供正式的临时IPv6地址可用。

为实测,已在105机房202.194.194.246上申请到的BTexact的IPv6地址2001:618:400:7ffc::/64,使用radvd播放地址广告,部署NAS控制访问IPv6网络。

测试和使用方法如下:

(0)确信能ping/ping -6/ping6 通2001:618:400:7ffc::1

ping6 2001:618:400:7ffc::1

(1)添加路由

#route -A inet6 add ::/0 gw 2001:618:400:7ffc::1或者在windows中

C:>netsh interface ipv6 add route ::/0 local 2001:618:400:7ffc::1 (2)用mozilla访问网关,登录

http://[2001:618:400:7ffc::1]/login-en.htm

(3)在登录后ping IPv6网络应该可以通达。

ping6 -n https://www.360docs.net/doc/994622843.html,

ping6 -n https://www.360docs.net/doc/994622843.html,

(4)使用mozilla访问IPv6-Only的网址,应该可以看到正常网页。

https://www.360docs.net/doc/994622843.html,/

3.4.自动分配IPv4地址:DHCPv4 Server

dhcpd提供了IPv4版的动态地址分配,同时附带配置路由和域名后缀。

安装dhcpd:{ 可以直接#aptitude install dhcpd }

wget dhcp-3.0.4.tar.gz

tar zxf dhcp-3.0.4.tar.gz

cd dhcp-3.0.4

./configure

make

make install

touch /var/state/dhcp/dhcpd.leases

一个典型的dhcpd.conf如下:

#cat /etc/dhcpd.conf

default-lease-time 600;

max-lease-time 7200;

option subnet-mask 255.255.0.0;

option broadcast-address 172.23.255.255;

option routers 172.23.1.1;

option domain-name-servers 202.194.15.12;

option domain-name "https://www.360docs.net/doc/994622843.html,";

ddns-update-style interim;

subnet 172.23.0.0 netmask 255.255.0.0 {

range 172.23.1.9 172.23.250.250;

}

注:这个软件在后来并没有被使用。

3.5.PPTPD:PPTP VPN Server

(在debian4中。2008-2)

aptitude install pptpd

在/etc/pptpd.conf的尾部,像这样修改:

listen 211.87.235.52

localip 169.254.2.252

remoteip 169.254.2.140-240

修改/etc/ppp/pptpd-options,有几处像这样:

name 52db4

#require-mppe-128

在/etc/ppp/chap-secrets中,

# client server secret IP addresses

vpn 52db4 "vpn" *

这样基本就可以了。

另外,可以同时配置上DHCP,让DHCP客户端和VPN客户端之间ping互通。这样:aptitude install dhcpd

配置文件像这样,其中shared-network视需要可以加上或去掉。

option domain-name-servers 202.194.15.12;

option subnet-mask 255.255.255.128;

default-lease-time 600;

max-lease-time 7200;

shared-network mytag {

subnet 169.254.2.0 netmask 255.255.255.128 {

range 169.254.2.2 169.254.2.80;

option broadcast-address 169.254.2.127;

option routers 169.254.2.1;

}

subnet 211.87.235.0 netmask 255.255.255.0 {

}

}

3.6.登录界面:重定向页面

用户在使用网络之前应该先登录,可行方法有:

(1)去某个约定的网址登录;

(2)如果用户没有登录就访问网络,典型的是用浏览器访问网站,则弹出登录页面。

方法1容易实现,2对用户来说更方变一些。

方法2可以通过netfliter/iptables实现(?)。在路由器上使用iptables命令操作nat表,添加一条nat规则如下,则所有来自指定子网/主机的IP分组会被转向某固定IP。

iptables -t nat -A PREROUTING -s 172.21.0.0/16 -j DNAT --to 172.21.1.1

如果用户浏览器访问比如https://www.360docs.net/doc/994622843.html,/的话会显示172.21.1.1的网页。此时地址栏仍是https://www.360docs.net/doc/994622843.html,/,因此在172.21.1.1/上设置一个这样的网页就可以把浏览器引导到真正的登录网页。(注:如果需要,可以改进该页以不打扰原先的网页服务)

当用户登录成功后,除了放开路由,再配合使用如下规则让该用户的IP不再被DNAT。

iptables -t nat -I PREROUTING -s 172.21.49.238 -j RETURN

3.4.1 Apache的配置

安装Apache2withSSL。安装后需要修改配置文件./conf/httpd.conf和./conf/ extra/httpd-ssl.conf。

wget httpd-2.2.2.tar.gz

tar zxf httpd-2.2.2.tar.gz

cd httpd-2.2.2

./configure --enable-ssl --prefix=/usr/local/apache2ssl

make

make install

编辑conf/httpd.conf,把尾部的一行去掉注释:

Include conf/extra/httpd-ssl.conf

修改httpd-ssl.conf,主要是把443改成[::]:443,准备证书、私钥、CA证书等。然后:bin/apachectl start

使用浏览器访问https://~/看看结果。

该Apache只用来提供登录界面。为把对该站点的所有访问都重定向到login.shtml,在原主页文件头部区域添加:

并在apache的配置文件中添加一项:

ErrorDocument 404 /login-redir.shtml

其中login-redir.shtml也是重定向到login.shtml。

为了网页的移植性,在login.shtml等网页中使用了Apache/SSI特性。具体细节参看部署在211.86.49.110上的一个实例。

4.NAS @ 211.86.49.110说明

登录110的帐号test,口令cngi,可以用来观察。

文件说明

/root/auto.bat建立BT/IPv6隧道

/root/fw-enb.bat开启防火墙

/root/fw-dis.bat关闭防火墙

/etc/dhcpd.conf DHCPv4服务器配置文件(dhcpd进程)

/etc/radvd.conf IPv6 路由广播配置文件(radvd进程),相当于DHCPv6

/etc/cngiuser.conf用户文件,当前在checkin.cgi中被引用

/usr/local/apache2ssl/中的Apache2相关文件:

conf/httpd.conf Apache2配置文件

conf/user9.pem SSL证书和私钥

conf/root.pem CA证书

cong/extra/httpd-ssl.conf SSL配置文件

htdocs/index.shtml

htdocs/login-redir.shtml网页重定向

htdocs/login.shtml登录表单网页

htdocs/login-en.shtml登录表单网页英文

cgi-bin/checkin.cgi处理登录请求的CGI脚本

5.IPSec in Linux试验

起先,是Free S/WAN项目实现了IPSec的支持,那时还主要是IPv4年代。其IPSec栈名叫KLIPS,密钥管理器叫pluto。但是该项目在04年底废弃了。还好,OpenSWAN和StrongSWAN 两个项目继续和发展了OpenSWAN。

然后,IPSec的另一个项目---KAME项目主要由日本厂商开发的,可用于BSD和Linux,其密钥管理器在linux上叫racoon,在bsd上叫isakmpd。

真正加入到Linux内核2.6的,出乎预料,不是KAME,而是02年由Alexey Kuznetsov和David S. Miller的一个实现。它可以和配合pluto或racoon或isakmpd,或者直接使用手工的密钥管理。

别的也还有很多IPSec的实现。但是,跟Linus走才是正途。

5.1.FreeS/WAN

FreeSwan是为Linux开发的IPSec/IPv4实现,后来也支持IPv6,它以内核补丁的方式修订Linux内核以使之支持IPSec。但是Linux2.6内核没有吸收FreeSwan(好像是因为密码强度/出口限制问题),而是用了KAME,因此FreeSwan项目自然就停止了。但从FreeSwan衍生出两个后续版本,OpenSwan和StrongSwan,后者更专注于使用X509。Fedora Core3开始有OpenSwan。

0)FreeSWAN

1)OpenSWAN

2)StrongSWAN

5.2.KAME-racoon

racoon是KAME项目的IKE(ISAKMP/Oakley)密钥管理后台服务器。安装racoon,并配置。注意:在两台机器上对称配置。一台机器是10.1.1.1/3ffe::1,另一台是10.1.1.2/3ffe::2。

#modprobe crc32c

#aptitude install racoon

5.2.1IPSec/IPv4

setkey是手工配置SA/SP数据库的工具。Setkey可以被racoon引用以服务于IPSec。

#vi /etc/setkey.conf # spdadd ...

flush ;

spdflush ;

spdadd 10.1.1.1 10.1.1.2 any -P out

ipsec esp/transport//require ah/transport//require ;

spdadd 10.1.1.2 10.1.1.1 any -P in

ipsec esp/transport//require ah/transport//require ;

spdadd a b any -P out

ipsec esp/transport//require ah/transport//require ;

spdadd b a any -P in

ipsec esp/transport//require ah/transport//require ;

#setkey -f /etc/setkey.conf

下面配置racoon。

#vi /etc/racoon/psk.txt # 添加如下。该文件在racoon.conf中被引用。

10.1.1.2 password

b password

#vi /etc/racoon/racoon.conf # 修正尾部的 remote和sainfo

remote b {

exchange_mode main,aggressive;

proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

authentication_method pre_shared_key;

dh_group modp1024;

}

generate_policy off;

}

sainfo anonymous {

pfs_group modp768;

encryption_algorithm 3des;

authentication_algorithm hmac_md5;

compression_algorithm deflate;

}

#racoon -F -f /etc/racoon/racoon.conf # 可以看到是否出错的信息

使用tcpdump可以观察到IPSec的运行情况。

#tcpdump -nl | grep AH

5.2.2IPSec/IPv6

10.1.1.1/2之间的IPSec如上操作即可建立,但是3ffe::1/2之间的IPSec却失败。因为在LAN上两机之间的通信优先使用链路地址(FE80打头),因此不合IPSec规则而失败。下面将使用跨LAN的两台机器(因此避免了FE80地址),结果成功。

在两台机器上对称配置。一台机器是a/3e79:1::a,另一台是b/3e79:b::b,中间经过一台路由器连接。

#modprobe crc32c

#aptitude install racoon

setkey是手工配置SA/SP数据库的工具。Setkey可以被racoon引用以服务于IPSec。

#vi /etc/setkey.conf # spdadd ...

flush ;

spdflush ;

spdadd a b any -P out

ipsec esp/transport//require ah/transport//require ;

spdadd b a any -P in

ipsec esp/transport//require ah/transport//require ;

#setkey -f /etc/setkey.conf

下面配置racoon。

#vi /etc/racoon/psk.txt # 添加如下。该文件在racoon.conf中被引用。

b password

#vi /etc/racoon/racoon.conf # 修正尾部的 remote和sainfo

remote b {

exchange_mode main,aggressive;

proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

authentication_method pre_shared_key;

dh_group modp1024;

}

generate_policy off;

}

sainfo anonymous {

pfs_group modp768;

encryption_algorithm 3des;

authentication_algorithm hmac_md5;

compression_algorithm deflate;

}

#killall racoon

#racoon -F -f /etc/racoon/racoon.conf # 可以看到是否出错的信息

使用tcpdump可以观察到IPSec的运行情况。

5.2.3IPSec/IPv6 with CERT

使用证书时的配置文件(一方,另一方同样但是使用的是user9.pem/key9.pem)。path certificate "/etc/racoon/certs";

remote 3e79:1::a {

exchange_mode main,aggressive;

my_identifier asn1dn;

peers_identifier asn1dn;

certificate_type x509 "user3.pem" "key3.pem";

ca_type x509 "root.pem";

verify_cert on;

proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

#authentication_method pre_shared_key;

authentication_method rsasig;

dh_group modp1024;

}

generate_policy off;

}

在ping6能通达,用tcppdump可以看到AH/ESP流量,测试通过。

5.3.isakmpd

isakmpd是从OpenBSD中移植过来的。

TO DO

6.Tunnel Broker

TO DO

7.多播

8.参考

Debian安装源

ftp://211.86.49.110/pub/ISOs/

Linux IPv6 Howto

https://www.360docs.net/doc/994622843.html,./HOWTO/Linux+IPv6-HOWTO/

IPSec Howto

https://www.360docs.net/doc/994622843.html,/

IPsec-Tools (a port of KAME's IPsec utilities including racoon to the Linux-2.6)https://www.360docs.net/doc/994622843.html,/

Apache CGI SSL Variable

https://www.360docs.net/doc/994622843.html,/docs.html#CGI

dhcpd

https://www.360docs.net/doc/994622843.html,/sw/dhcp/

网络协议分析实验报告

实 验 报 告 课程名称 计算机网络 实验名称 网络协议分析 系别 专业班级 指导教师 学号 姓名 实验日期 实验成绩 一、实验目的 掌握常用的抓包软件,了解ARP 、ICMP 、IP 、TCP 、UDP 协议的结构。 二、实验环境 1.虚拟机(VMWare 或Microsoft Virtual PC )、Windows 2003 Server 。 2.实验室局域网,WindowsXP 三、实验学时 2学时,必做实验。 四、实验内容 注意:若是实验环境1,则配置客户机A 的IP 地址:192.168.11.X/24,X 为学生座号;另一台客户机B 的IP 地址:192.168.11.(X+100)。在客户机A 上安装EtherPeek (或者sniffer pro )协议分析软件。若是实验环境2则根据当前主机A 的地址,找一台当前在线主机B 完成。 1、从客户机A ping 客户机B ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析ARP 协议; 2、从客户机A ping 客户机B ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析icmp 协议和ip 协议; 3、客户机A 上访问 https://www.360docs.net/doc/994622843.html, ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析TCP 和UDP 协议; 五、实验步骤和截图(并填表) 1、分析arp 协议,填写下表 客户机B 客户机A

2、分析icmp协议和ip协议,分别填写下表 表一:ICMP报文分析

3、分析TCP和UDP 协议,分别填写下表

实验yi:网络协议分析工具Wireshark的使用

实验一: 一、实验目的 学习使用网络协议分析工具Wireshark的方法,并用它来分析一些协议。 二、实验原理和内容 1、tcp/ip协议族中网络层传输层应用层相关重要协议原理 2、网络协议分析工具Wireshark的工作原理和基本使用规则 三、实验环境以及设备 Pc机、双绞线 四、实验步骤(操作方法及思考题) 1.用Wireshark观察ARP协议以及ping命令的工作过程:(20分) (1)用“ipconfig”命令获得本机的MAC地址和缺省路由器的IP地址;(2)用“arp”命令清空本机的缓存; (3)运行Wireshark,开始捕获所有属于ARP协议或ICMP协议的,并且源或目的MAC地址是本机的包(提示:在设置过滤规则时需要使用(1)中获得的本机的MAC地址); (4)执行命令:“ping 缺省路由器的IP地址”; 写出(1),(2)中所执行的完整命令(包含命令行参数),(3)中需要设置的Wireshark的Capture Filter过滤规则,以及解释用Wireshark所观察到的执行(4)时网络上出现的现象。 -------------------------------------------------------------------------------- (1)ipconfig/all (2)arp –d (3)( arp or icmp ) and ether host 18-03-73-BC-70-51, ping 192.168.32.254 后的截包信息图片:

首先,通过ARP找到所ping机器的ip地址,本机器发送一个广播包,在子网中查询192.168.32.254的MAC地址,然后一个节点发送了响应该查询的ARP分组,告知及其所查询的MAC地址。接下来,本机器发送3个请求的ICMP报文,目的地段回复了三个响应请求的应答ICMP报文。在最后对请求主机对应的MAC地址进行核查。 2.用Wireshark观察tracert命令的工作过程:(20分) (1)运行Wireshark, 开始捕获tracert命令中用到的消息; (2)执行“tracert -d https://www.360docs.net/doc/994622843.html,” 根据Wireshark所观察到的现象思考并解释tracert的工作原理。 ----------------------------------------------------------- 实验室路由跟踪显示有6个路由器

实验二 网络报文捕获与网络协议分析

实验二网络报文捕获与网络协议分析 实验原理: 网络报文捕获与协议分析广泛地应用于分布式实时控制系统、网络故障分析、入侵检测系统、网络监控系统等领域中,可以用来解决网络故障问题,检测安全隐患,测试协议执行情况。这里我们使用Wireshark来捕获网络报文,学习网络协议。 实验内容: 分析面向连接的TCP协议三次握手建立连接和4次握手释放连接的过程;利用Wireshark捕获一次网页打开的过程,通过观察整个网页获得全过程,加强对HTTP协议的理解,通过观察捕获分组分析和理解HTTP协议细节和格式。 2.1网络报文捕获 实验设备:PC机1台(操作系统为XP),连接Internet 实验组网图:无 实验步骤: 1. 启动Wireshark,对Capture Options各个选项设置。 2.点击Start按钮开始捕获分组 3.点击Capture from…对话框中Stop按钮结束捕获 4.得到捕获记录,观察跟踪记录

1 2 3 从IP: 58.198.165.100到https://www.360docs.net/doc/994622843.html,(58.198.165.79)的捕获。1区为捕获记录的列表框。2区为协议层框(协议框),显示所选分组的各层协议细节:物理层帧,以太网帧及其首部,IP协议数据报及其首部,UDP数据报及其首部,HTTP等协议细节。3区为原始框,显示了分组中包含的数据的每个字节.从中可以观察最原始的传输数据.方框左边是十六进制的数据,右边是ASCII码。 2.2 TCP协议分析 实验设备:PC机1台(操作系统为XP),虚拟机pc1、pc2 实验组网图:无 实验步骤: 1、.启动虚拟机pc1、pc2,将虚拟机pc1和pc2的网卡类型都设为“Host-only”,在实验一的基础上开展实验(配置好IP,使之连通) 2、将server.exe和client.exe程序分别复制到pc1和pc2上;将wireshark安装程序复制到pc2上; 3、安装wireshark,并启动捕获; 运行服务器程序:server 端口号; 运行客户端程序:client 服务器IP 服务器端口; 4、分析捕获的数据,列出此次简单的面向连接tcp数据传送过程,以及tcp控制字段变化情况。

IP协议分析实验报告

计算机网络 实 验 报 告 实验名称: IP协议分析 实验分组号: 实验人:郑微微 班级: 12计算机科学系本四B班学号: 实验指导教师:阮锦新 实验场地:网络实验室706 实验时间: 2014年11月 17号 成绩:

一、实验目的 1、掌握IP协议分析的方法 2、掌握TCP/IP体系结构 3、加深网络层协议的理解 4、学会使用网络分析工具 二、实验要求 1、实验前下载安装Ethereal/Wireshark/Sniffer中的一款网络分析工具软件 2、了解网络分析工具软件的常见功能与常见操作 3、每位学生必须独立完成所有实验环节 三、实验环境 1、操作系统:Windows XP/Windows 7/Windows 2008 2、已安装网络分析工具软件 3、PC机能访问互联网 四、实验内容及原理 1、实验内容 (1)IP头的结构 (2)IP报文分析 2、实验原理 网络之间互连的协议(Internet Protocol,IP)就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。 IP报文由报头和数据两部分组成,如图1所示:

图1 IP报文格式 五、需求分析 IP协议是TCP/IP体系中两个主要的协议之一,而IP地址位于IP数据报的首部,在网络层及以上使用的是IP地址,因此在数据链路层是看不见数据报的IP地址,另外首部的前一部分是固定长度,共20字节。在TCP/IP的标准中,各种数据格式常以32位为单位来描述,通过分析IP数据报的格式就能够知道IP协议都具有哪些功能。 六、实验步骤 1、打开网络分析工具软件 2、抓取浏览器数据包 (1)启动网络分析工具软件,设置抓包过滤条件。 (2)启动浏览器,在地址栏输入要访问的IP地址。 (3)关闭浏览器,停止抓包。 (4)存储所捕获的数据包。 (5)分析数据包。 七、实验分析 1.启动网络分析工具软件,设置抓包过滤条件为“==”

实验二 网络抓包及协议分析实验

实验二网络抓包及协议分析实验 一.实验目的: 1.了解抓包与协议分析软件的简单使用方法。 2.了解并验证网络上数据包的基本结构。 二.实验环境 1.硬件:PC、配备网卡,局域网环境。 2.软件:Windows 2000或者XP操作系统、winpcap、analyzer。 三.实验内容 利用Ethereal软件抓取网络上的数据包,并作相应分析。 四.实验范例 (1)安装 Etheral的安装非常简单,只要按照提示安装即可。 (2)运行 双击桌面的Ethereal,显示“The Ethereal Network Analyzer”的主界面,菜单的功能是:(3)设置规则 这里有两种方式可以设置规则: ●使用interface 1)选择Capture—>interfaces,将显示该主机的所有网络接口和所有流经的数据包,单击“Capture”按钮,及执行捕获。 2)如果要修改捕获过程中的参数,可以单击该接口对应的“Prepare”按钮。在捕获选项对话框中,可以进一步设置捕获条件: ●Interface——确定所选择的网络接口 ●Limit each packet to N bytes——指定所捕获包的字节数。 选择该项是为了节省空间,只捕获包头,在包头中已经拥有要分析的信息。 ●Capture packet in promiscuous mode——设置成混杂模式。 在该模式下,可以记录所有的分组,包括目的地址非本机的分组。 ●Capture Filter——指定过滤规则 有关过滤规则请查阅以下使用Filter方式中的内容。 ●Capture files——指定捕获结果存放位置 ●Update list of packets in real time——实时更新分组

网络协议分析实验报告

课程设计 课程设计题目网络协议分析实验报告学生姓名: 学号: 专业: 2014年 6 月 29日

实验1 基于ICMP的MTU测量方法 实验目的 1)掌握ICMP协议 2)掌握PING程序基本原理 3)掌握socket编程技术 4)掌握MTU测量算法 实验任务 编写一个基于ICMP协议测量网络MTU的程序,程序需要完成的功能: 1)使用目标IP地址或域名作为参数,测量本机到目标主机经过网络的MTU; 2)输出到目标主机经过网络的MTU。 实验环境 1)Linux系统; 2)gcc编译工具,gdb调试工具。 实验步骤 1.首先仔细研读ping.c例程,熟悉linux下socket原始套接字编程模式,为实验做好准备; 2.生成最大数据量的IP数据报(64K),数据部分为ICMP格式,ICMP报文为回送请求报 文,IP首部DF位置为1;由发送线程发送; 3.如果收到报文为目标不可达报文,减少数据长度,再次发送,直到收到回送应答报文。 至此,MTU测量完毕。

ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。[1] 它是TCP/IP协议族的一个子协议,属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。ICMP报文在IP帧结构的首部协议类型字段(Protocol 8bit)的值=1.

ICMP原理 ICMP提供一致易懂的出错报告信息。发送的出错报文返回到发送原数据的设备,因为只有发送设备才是出错报文的逻辑接受者。发送设备随后可根据ICMP报文确定发生错误的类型,并确定如何才能更好地重发失败的数据包。但是ICMP唯一的功能是报告问题而不是纠正错误,纠正错误的任务由发送方完成。 我们在网络中经常会使用到ICMP协议,比如我们经常使用的用于检查网络通不通的Ping命令(Linux和Windows中均有),这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。 ICMP(Internet Control Message,网际控制报文协议)是为网关和目标主机而提供的一种差错控制机制,使它们在遇到差错时能把错误报告给报文源发方.是IP层的一个协议。但是由于差错报告在发送给报文源发方时可能也要经过若干子网,因此牵涉到路由选择等问题,所以ICMP报文需通过IP协议来发送。ICMP数据报的数据发送前需要两级封装:首先添加ICMP 报头形成ICMP报文,再添加IP报头形成IP数据报 通信术语最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。 实验2 基于UDP的traceroute程序 实验目的 1)掌握UDP协议 2)掌握UDP客户机/服务器编程模式 3)掌握socket编程技术 4)掌握traceroute算法

网络协议分析实验总结

实验一IP协议 练习一利用仿真编辑器发送IP数据包 描述:收发IPv4报文,不填上层协议. 问题:①查看捕获到得报文长度是60,和你编辑的报文长度不同,为什么? 最小帧长度为60,当不足60时,在源数据尾部添加0补足。 ②讨论,为什么会捕获到ICMP目的端口不可达差错报文? 差错报文的类型为协议不可达,因为上层协议为0,未定义。 练习二编辑发送IPV6数据包 描述:收发IPv6报文. 问题:①比较IPV4头,IPV6有了那些变化?IPV4的TTL字段在IPV6里对应那个字段? 比较IPv4 和IPv6 的报头,可以看到以下几个特点: ●字段的数量从IPv4 中的13(包括选项)个,降到了IPv6 中的8 个; ●中间路由器必须处理的字段从6 个降到了4 个,这就可以更有效地转发普通的 IPv6 数据包; ●很少使用的字段,如支持拆分的字段,以及IPv4 报头中的选项,被移到了IPv6 报 头的扩展报头中; ●● IPv6 报头的长度是IPv4 最小报头长度(20 字节)的两倍,达到40 字节。 然而,新的IPv6 报头中包含的源地址和目的地址的长度,是IPv4 源地址和目的 地址的4 倍。 对应:跳限制----这个8位字段代替了IPv4中的TTL字段。 练习三:特殊的IP地址 描述:直接广播地址包含一个有效的网络号和一个全“1”的主机号,只有本网络内的主机能够收到广播,受限广播地址是全为1的IP地址;有限广播的数据包里不包含自己的ip 地址,而直接广播地址里包含自身的ip地址 练习四: IP包分段实验 问题:讨论,数据量为多少时正好分两片?1480*2=2960 练习五: netstat命令 描述: C:>netstat –s ;查看本机已经接收和发送的IP报文个数 C:>netstat –s ;查看本机已经接收和发送的IP报文个数 C:>netstat –e ;观察以太网统计信息,

《网络协议分析》实验指导书

网络协议分析 课题名称:网络协议分析 指导教师:赵红敏 专业班级:2014级计算机科学与技术2班学号: 20144591 姓名:孙晓阳

目录 实验一点到点协议PPP (4) 实验目的 (4) 实验环境 (4) 实验步骤 (4) 实验二地址转换协议ARP (10) 实验目的 (10) 实验环境 (10) 实验步骤 (10) 实验三Internet控制报文协议ICMP (16) 实验目的 (16) 实验环境 (16) 实验步骤 (16) 实验四实现”洞”的算法 (20) 实验目的 (20) 实验环境 (20) 实验要求 (20)

实验一点到点协议PPP 实验目的 1.理解PPP协议的工作原理及作用。 2.练习PPP,CHAP的配置。 3.验证PPP,CHAP的工作原理。 实验环境 1.安装windows操作系统的PC计算机。 2.Boson NetSim模拟仿真软件。 实验步骤 1、绘制实验拓扑图 利用Boson Network Designer绘制实验网络拓扑图如图1-1。 本实验选择两台4500型号的路由器。同时,采用Serial串行方式连接两台路由器,并选择点到点类型。其中DCE端可以任意选择,对于DCE端路由器的接口(Serial 0/0)需要配置时钟信号(这里用R1的Serial 0/0作为DCE端)。 2、配置路由器基本参数 绘制完实验拓扑图后,可将其保存并装入Boson NetSim中开始试验配置。配置时点击

Boson NetSim程序工具栏按钮eRouters,选择R1 并按下面的过程进行路由器1的基本参数配置: Router>enable Router#conf t Router(config)#host R1 R1(config)#enable secret c1 R1(config)#line vty 0 4 R1(config-line)#password c2 R1(config-line)#interface serial 0/0 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config-if)#clock rate 64000 R1(config-if)#no shutdown R1(config-if)#end R1#copy running-config startup-config 点击工具栏按钮eRouters,选择R2并按下面过程进行路由器的基本参数配置: Router>enable Router#conf t Router(config)#host R2 R2(config)#enable secret c1

实验2:网络数据包的捕获与协议分析

实验报告 ( 2014 / 2015 学年第二学期) 题目:网络数据包的捕获与协议分析 专业 学生姓名 班级学号 指导教师李鹏 指导单位计算机系统与网络教学中心 日期2015.4.29

实验一:网络数据包的捕获与协议分析 一、实验目的 1、掌握网络协议分析工具Wireshark的使用方法,并用它来分析一些协议; 2、截获数据包并对它们观察和分析,了解协议的运行机制。 二、实验原理和内容 1、tcp/ip协议族中网络层传输层应用层相关重要协议原理 2、网络协议分析工具Wireshark的工作原理和基本使用规则 三、实验环境以及设备 Pc机、双绞线、局域网 四、实验步骤 1.用Wireshark观察ARP协议以及ping命令的工作过程: (1)打开windows命令行,键入“ipconfig -all”命令获得本机的MAC地址和缺省路由器的IP地址;结果如下: (2)用“arp -d”命令清空本机的缓存;结果如下 (3)开始捕获所有属于ARP协议或ICMP协议的,并且源或目的MAC地址是本机的包。(4)执行命令:ping https://www.360docs.net/doc/994622843.html,,观察执行后的结果并记录。

此时,Wireshark所观察到的现象是:(截图表示) 2.设计一个用Wireshark捕获HTTP实现的完整过程,并对捕获的结果进行分析和统计。(截 图加分析) 3.设计一个用Wireshark捕获ICMP实现的完整过程,并对捕获的结果进行分析和统计。要求:给出捕获某一数据包后的屏幕截图。以16进制形式显示其包的内容,并分析该ICMP 报文。(截图加分析) 4. 设计一个用Wireshark捕获IP数据包的过程,并对捕获的结果进行分析和统计(截图加分析) 要求:给出捕获某一数据包后的屏幕截图。以16进制形式显示其包的内容,并分析在该数据包中的内容:版本首部长度、服务类型、总长度、标识、片偏移、寿命、协议、源Ip地址、目的地址 五、实验总结

实验二数据链路层协议分析

实验二以太网链路层帧格式分析一实验目的 1、分析EthernetV2标准规定的MAC层帧结构,了解IEEE802.3标准规定的 MAC层帧结构和TCP/IP的主要协议和协议的层次结构。 2、掌握网络协议分析软件的基本使用方法。 3、掌握网络协议编辑软件的基本使用方法。 二实验内容 1、学习网络协议编辑软件的各组成部分及其功能; 2、学习网络协议分析软件的各组成部分及其功能; 3、学会使用网络协议编辑软件编辑以太网数据包; 4、理解MAC地址的作用; 5、理解MAC首部中的LLC—PDU长度/类型字段的功能; 6、学会观察并分析地址本中的MAC地址。 三实验环境 回2.1- L 四实验流程 小亠| /I J ■ v 开始

结束 图21 2| 五实验原理 在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错。数据链路的建立、拆除、对数据的检错,纠错是数据链路层的基本任务。 局域网(LAN)是在一个小的范围内,将分散的独立计算机系统互联起来,实现资源的共享和数据通信。局域网的技术要素包括了体系结构和标准、传输媒体、拓扑结构、数据编码、媒体访问控制和逻 辑链路控制等,其中主要的技术是传输媒体、拓扑结构和媒体访问控制方法。局域网的主要的特点是:地理分布范围小、数据传输速率高、误码率低和协议简单等。 1、三个主要技术 1)传输媒体:双绞线、同轴电缆、光缆、无线。 2)拓扑结构:总线型拓扑、星型拓扑和环型拓扑。 3)媒体访问控制方法:载波监听多路访问/冲突检测(CSMA/CD技术 2、IEEE 802标准的局域网参考模型 IEEE 802参考模型包括了OSI/RM最低两层(物理层和数据链路层)的功能,OSI/RM 的数据链路层功能,在局域网参考模型中被分成媒体访问控制 MAC(Medium Access Control) 和逻辑链路控制LLC(Logical Link Control)两个子层。由于局域网采用的媒体有多种,对应的媒体访问控制方法也有多种,为

实验二 TCPIP协议分析与验证

实验二TCP/IP协议分析与验证 【实验目的】 通过本实验使学生了解和掌握报文捕获工具Wiresshark(或者EtherDetect)的使用方法和基本特点,通过Wireshark软件捕获并分析基于链路层的协议数据,包括ARP、ICMP、IP、TCP、UDP以及DNS、FTP、HTTP协议的报文格式以及工作过程,促使学生真正了解TCP、UDP、IP等协议的构成。 【实验环境】 (1)联网的PC机,装有Windows操作系统; (2)网络上安装DNS、FTP和HTTP服务器并配置好; (3)Wireshark软件及其使用手册。 【实验原理、方法和手段】 第一部分:包嗅探器工作原理 我们观察执行协议的实体之间如何交换信息的基本工具是包嗅探器(packet sniffer),正如其名,嗅探器在你的电脑发送消息或接收消息时进行协议数据的捕获,同时有选择地显示这些协议数据的内容。 由于以太网在物理上具有广播特性,因此通过包嗅探器可以将经过以太网卡的所有以太网帧捕获,通过分析以太网帧封装的各种报文,可以得到ICMP和ARP报文格式;通过分析报文序列,可以验证ICMP和ARP协议的工作过程。 包嗅探器本身是被动的,电脑所收发的数据包不写明是给包嗅探器的,而是由应用程序发送和接收时产生的,在包嗅探器收到包的同时应用程序数据收发仍是正常进行的。包嗅探器的结构如图2-1所示。 图2-1 嗅探器的结构 包嗅探器的另一个组成部分是包分析器,它显示一个协议消息中所有字段的内容,为了完成这些任务包分析器必须了解所有通过协议交换的消息的结构。 第二部分:学习Wireshark

本实验中将使用Wireshark这种包嗅探器。 1.简介 Wireshark是著名的网络协议分析软件,其前身是Etherreal,该软件可以成为网络嗅探和协议分析功能,广泛用于协议分析和网络研究中。 Wireshark可以分析前期抓取的网络包,即.pcap文件;也可以通过网络接口进行实时抓包分析。如果使用.pcap文件,通过文件菜单,打开指定位置的.pcap文件则显示该文件所存储的网络包信息。如果需要实时分析网络协议,则通过capture菜单选取网络接口,然后启动抓包则进行实时流量捕获,并在各子窗口显示相关信息。通过对过滤器的设置,可以筛选需要分析的网络包。还可以通过capture->option来设置包过滤器,从而决定哪些网络包会被选中,其它则抛弃。Wireshark的主窗口界面如图2-2所示。 图2-2 Wireshark程序主界面 (1)网络包列表 显示当前capture文件中所有网络包的摘要信息,包括:编号、时间戳、源IP地址、目的IP地址、协议等信息。capture文件中的一个网络包对应网络包列表框中的一行,当选中其中一行,则该网络包对应的更详细信息分别显示在下面两个面板内。 (2)选中网络包的头部信息 用一种较为详细的形式显示所选中网络包的信息,包括协议和协议的个字段信息,可以通过点击行首的“+”来展开信息。 (3)选中网络包的内容

计算机网络网络协议分析实验报告

红河学院工学院计算机实验中心实验报告单 专业:计算机科学与技术学号:姓名: 实验日期:2012-10-16 成绩: 课程名称:《计算机网络实验》 实验名称:网络协议分析-以太网及ARP协议 一、实验目的 1、了解以太网协议。 2、了解arp协议的原理。 3、使用Ethereal软件观察以太帧的结构。 4、使用Ethereal软件观察arp地址解析过程。 二、实验内容 1、在Ethereal来观察ping命令中产生的以太数据帧结构。 2、在Ethereal观察arp协议中地址解析过程。 三、实验设备、环境及拓扑图 实验环境: 1、硬件环境:CPU p4 2.0,内存1G,硬盘64G以上; 2、软件环境:VMware虚拟机7.0.1;Windows Server 2003 Enterprise Edition, Ethereal10.10.12. 四、实验步骤 1、主机地址配置 (1)配置主机IP地址及子网掩码。

2、启动Ethereal,设置过滤器,开始捕捉。 (1)在客户机上运行Ethereal。 (2)选择Ethereal菜单“Capture”——“Interface”,选择“本地连接”所在接口。 (3)设置包捕捉过滤器。在捕捉选项设置窗口中,设置过滤器为“host 192.168.34.150”,其余选项不变。

(4)点击“Start”按钮开始捕获数据包。

3、在客户机上用ping命令访问服务器在客户机的命令窗口下输入: Ping 192.168.34.150

4、停止数据包捕捉 点击Ethereal的捕捉窗口中的“Stop”按钮停止数据包捕捉。 5、查看捕获的数据包 (1) 在Ethereal中查看所有的窗口显示内容。 (2)查看以太帧中的目的地址和源地址。 (3)查看捕获的以太帧中“类型”字段有哪些。 (4)保存捕获结果。

计算机网络实验 HTT FT 协议分析

实验二HTTP、FTP协议分析 1. 本次实验包括HTTP、FTP两个协议的分析(详见一、二)。 2. 参考文档所述步骤,完成数据包的捕获并进行分析; 3. 认真撰写实验报告,叙述实验过程要层次分明,对关键的过程或结果截图说明、分析,回答实验文档所提的思考题、问题。 一、超文本传输协议(HTTP)分析 【实验目的】 掌握HTTP协议的原理和报文格式; 了解HTTP协议的工作过程; 了解应用层协议与传输层协议的关系。 【实验内容】 用浏览器打开网页,捕获HTTP报文并进行分析 编辑一个HTTP数据报文并进行发送,并捕获该报文进行分析。 【实验步骤】 步骤一:使用浏览器打开网页,捕获HTTP数据包并分析: (1)在主机上打开协议分析仪,点击工具栏上的“过滤器”,“类型过滤器”的

下拉列表中选择“HTTP协议”,确定后开始进行数据捕获: (2) 使用实验室主机上的浏览器,例如IE,打开一个网页,如URL是 HTTP//https://www.360docs.net/doc/994622843.html, (3) 在协议分析器中找到捕获的数据包,观察HTTP请求报文和响应报文,以及其中所使用的命令: 【思考问题】 结合实验过程中的实验结果,问答下列问题: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据什么把返回的页面正确地显示到相应窗口的?一个主页是否只有一个连接? 2. 请求主页后,返回的浏览器内容的字节长度是多少? 3. 如果请求一个不存在的网页,服务器将会应答什么? 答: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据地址信息把返回的页面正确地显示到相应窗口的,一个主页是只有一个连接。 2. 请求主页后,返回的浏览器内容的字节长度是

实验二 数据链路层协议分析

实验二以太网链路层帧格式分析 一实验目的 1、分析EthernetV2标准规定的MAC层帧结构,了解IEEE802.3 标准规定的 MAC层帧结构和TCP/IP的主要协议和协议的层次结构。 2、掌握网络协议分析软件的基本使用方法。 3、掌握网络协议编辑软件的基本使用方法。 二实验内容 1、学习网络协议编辑软件的各组成部分及其功能; 2、学习网络协议分析软件的各组成部分及其功能; 3、学会使用网络协议编辑软件编辑以太网数据包; 4、理解 MAC 地址的作用; 5、理解 MAC 首部中的 LLC—PDU 长度/类型字段的功能; 6、学会观察并分析地址本中的 MAC 地址。 三实验环境

四实验流程 五实验原理 在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错。数据链路的建立、拆除、对数据的检 错,纠错是数据链路层的基本任务。 局域网(LAN)是在一个小的范围内,将分散的独立计算机系统互联起来,实现资源的共享和数据通信。局域网的技术要素包括了体系结构和标准、传输媒体、拓扑结构、数据编码、媒体访问控制和逻 辑链路控制等,其中主要的技术是传输媒体、拓扑结构和媒体访问控制方法。局域网的主要的特点是:地理分布范围小、数据传输速率高、误码率低和协议简单等。 1、三个主要技术 1) 传输媒体:双绞线、同轴电缆、光缆、无线。 2) 拓扑结构:总线型拓扑、星型拓扑和环型拓扑。 3) 媒体访问控制方法:载波监听多路访问/冲突检测(CSMA/CD)技术。

2、IEEE 802 标准的局域网参考模型 IEEE 802 参考模型包括了 OSI/RM 最低两层(物理层和数据链路层)的功能,OSI/RM 的数据链路层功能,在局域网参考模型中被分成媒体访问控制MAC(Medium Access Control) 和逻辑链路控制LLC(Logical Link Control)两个子层。由于局域网采用的媒体有多种,对应的媒体访问控制方法也有多种,为了使数据帧的传送独立于所采用的物理媒体和媒体访问控制方法,IEEE 802 标准特意把 LLC 独立出来形成单独子层,使 LLC 子层与媒体无关,仅让 MAC 子层依赖于物理媒体和媒体访问控制方法。LLC 子层中规定了无确认无连接、有确认无连接和面向连接三种类型的链路服务。媒体访问控制技术是以太网技术的核心。以太网不提供任何确认收到帧的应答机制,确认必须在高层完成。 3、以太网帧结构 以太网中传输的数据包通常被称为“帧”,以太网的“帧”结构如下: 数据帧校验 目的地址源地址帧类型/长 度 各字段的含义: 目的地址:6 个字节的目的物理地址标识帧的接收结点。 源地址:6 个字节的源物理地址标识帧的发送结点。 帧类型/长度(TYPE/LEN):该字段的值大于或等于 0×0800 时,表示上层数据使用的协议类型。例如 0×0806 表示 ARP 请求或应答,0×0800 表示 IP 协议。该字段的值小于 0×0800 时表示以太网用户数据的长度字段,上层携带LLC-PDU。 数据字段:这是一个可变长度字段,用于携带上层传下来的数据。 帧校验 FCS:以太网采用 32 位 CRC 冗余校验。校验范围是目的地址、源地址、长度/类型、数据字段。 4、 LLC-PDU 部分 该字段的值小于 0×0800 时表示以太网用户数据的长度字段,说明数据字段

(完整)使用wireshark进行协议分析实验报告

1 深圳大学实验报告 实验课程名称:计算机网络 实验项目名称:使用wireshark进行协议分析 学院:计算机与软件学院专业:计算机科学与技术 报告人:邓清津学号:2011150146 班级:2班同组人:无 指导教师:杜文峰 实验时间:2013/6/10 实验报告提交时间:2013/6/10 教务处制

一、实验目的与要求 学习使用网络数据抓包软件.学习使用网络数据抓包软件wireshark,并对一些协议进行分析。 二、实验仪器与材料 Wireshark抓包软件 三、实验内容 使用wireshark分析各层网络协议 1.HTTP协议 2.ARP协议,ICMP协议 3.IP协议 4.EthernetII层数据帧 为了分析这些协议,可以使用一些常见的网络命令。例如,ping等。 四、实验步骤 1、安装Wireshark,简单描述安装步骤: 2、打开wireshark,选择接口选项列表。或单击“Capture”,配置“option” 选项。

3.点击start后,进行分组捕获,所有由选定网卡发送和接收的分组都将被捕获。 4. 开始分组捕获后,会出现如图所示的分组捕获统计窗口。该窗口统计显示各类已捕获分组的数量。在该窗口中有一个“stop”按钮,可以停止分组的捕获。

一、分析HTTP协议 1.在浏览器地址栏中输入某网页的URL,如:https://www.360docs.net/doc/994622843.html,。为显示该网页,浏览器需要连接https://www.360docs.net/doc/994622843.html,的服务器,并与之交换HTTP消息,以下载该网页。包含这些HTTP消息的以太网帧(Frame)将被WireShark捕获。 2. 在显示筛选编辑框中输入“http”,单击“apply”,分组列表窗口将只显示HTTP消息。 3.点击其中一个http协议包

实验二 网络层ICMP协议分析

实验内容2 网络层ICMP协议分析 一、实验目的 1、掌握ping 和tracert 命令的使用方法,了解ICMP 协议报文类型及作用。 二、实验方式 每两位同学为一小组,每小组各自独立完成实验。 三、实验内容 1、ICMP协议分析实验 执行ping 和tracert 命令,分别截获报文,分析截获的ICMP 报文类型和ICMP 报文格式,理解ICMP 协议的作用。 目前网络中常用的基于ICMP 的应用程序主要有ping 命令和tracert 命令。 (1)ping 命令 Ping 命令是调试网络常用的工具之一。它通过发出ICMP Echo 请求报文并监听其回应来检测网络的连通性。图 1 显示了Ethereal 捕获的ICMP Echo 请求报文和应答报文。 图 1 ICMP Echo 请求报文和应答报文 Ping 命令只有在安装了TCP/IP 协议之后才可以使用,其命令格式如下: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] target_name 这里对实验中可能用到的参数解释如下: -t :用户所在主机不断向目标主机发送回送请求报文,直到用户中断; -n count:指定要Ping 多少次,具体次数由后面的count 来指定,缺省值为4; -l size:指定发送到目标主机的数据包的大小,默认为32 字节,最大值是65,527; -w timeout:指定超时间隔,单位为毫秒; target_name:指定要ping 的远程计算机。 (2)Traceroute 命令 Traceroute 命令用来获得从本地计算机到目的主机的路径信息。在MS Windows 中该命 令为Tracert,而UNIX 系统中为Traceroute。 Tracert 先发送TTL 为1 的回显请求报文,并在随后的每次发送过程将TTL 递增1,直到目标响应或TTL 达到最大值,从而确定路由。它所返回的信息要比ping 命令详细得多,它把您送出的到某一站点的请求包,所走的全部路由均告诉您,并且告诉您通过该路由的IP

网络协议分析 实验一

学院计算机学院专业网络工程指导教师黄杰 学生姓名学号实验日期11.6 一、以太帧格式的分析 1.抓取方法描述 先在命令窗口下输入ipconfig查看本地的ip地址,得到的结果如下: 可以得到本地的IP地址为10.66.126.254,默认网关为10.66.64.1,物理地址为3C-77-E6-6E-92-85,然后打开wireshark软件开始抓包,找到可以建立连接的IP地址来进行ping。这里选择的目的ip地址为119.90.37.235,将wireshark之前抓取的包清空重新打开进行抓取。 在命令窗口下输入ping 119.90.37.235. 2.记录抓取的过程 关闭wireshark,在过滤器中输入icmp,可以找到发送并接受的8个icmp协议下的数据包。

选择其中一个数据包对以太帧格式进行分析。 3.抓取数据的内容 抓取数据内容如下: 这里面包括了发送数据包的源MAC地址和接受数据包的目的MAC地址,以太帧类型以及数据内容等等。 4.抓取数据的格式解释(可直接在抓取数据的内容旁边标注) ●源MAC地址:3C-77-E6-6E-92-85 ●目的MAC地址:00-00-54-00-01-02 ●类型:协议类型为ICMP类型 ●长度:IP包总长度为60

●校验和 ●以太帧类型:0x0800 帧内封装的上层协议类型为IP,十六进制码为0800 5.补充说明(如果有需要补充的内容写在这) ICMP的以太帧中数据内容为32字节,这里可以看到里面的内容是:abcdefghijklmn opqrstuvwabcdefg hi 。 二、ARP协议的分析 1.抓取方法描述 首先查看本地的IP地址: 这里是192.168.1.7,目的主机是室友的电脑,IP地址为192.168.1.4。 首先清除arp缓存 2.记录抓取的过程 在wireshark中选择arp过滤,在过滤规则中设置host 192.168.1.4,然后点击开始抓包。接下来在命令窗口中输入ping 192.168.1.4。

实验二 网络抓包及协议分析软件使用说明

实验二网络抓包及协议分析软件使用说明 ?目的及意义:利用网络协议分析工具Ethereal截获网络中传送的数据包,通过观察分析,从而 了解和认识(理解)协议的运行机制。 ?下载与安装:在Windows下安装Ethereal,可从https://www.360docs.net/doc/994622843.html,下载安装软件,然后 执行安装。Ethereal 在0.10.12版本后都内置了Winpcap,如没内置的Winpcap,可先安装 Winpcap。有关Winpcap的详细信息可参考https://www.360docs.net/doc/994622843.html,。 一.实验目的: 1.了解抓包与协议分析软件的简单使用方法。 2.了解并验证网络上数据包的基本结构。 二.实验环境 1.硬件:PC、配备网卡,局域网环境。 2.软件:Windows 2000或者XP操作系统、winpcap、analyzer。 三.实验内容 利用Ethereal软件抓取网络上的数据包,并作相应分析。 四.实验范例 (1)安装 Etheral的安装非常简单,只要按照提示安装即可。 (2)运行 双击桌面的Ethereal,显示“The Ethereal Network Analyzer”的主界面,菜单的功能是: (3)设置规则 这里有两种方式可以设置规则: ●使用interface 1)选择Capture—>interfaces,将显示该主机的所有网络接口和所有流经的数据包,单击“Capture”按钮,及执行捕获。 2)如果要修改捕获过程中的参数,可以单击该接口对应的“Prepare”按钮。在捕获选项对话框中,可以进一步设置捕获条件: ●Interface——确定所选择的网络接口 ●Limit each packet to N bytes——指定所捕获包的字节数。 选择该项是为了节省空间,只捕获包头,在包头中已经拥有要分析的信息。

网络协议 实验三wireshark_分析http

1.你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少? 答:HTTP 1.1 version 4 2. 你的浏览器向服务器指出它能接收何种语言版本的对象? 答:Accept language: zh-CN\r\n 3. 你的计算机的IP地址是多少?服务器https://www.360docs.net/doc/994622843.html,/DatumDownload.aspx 的IP地址是多少? 答:我的IP是:10.127.117.2 服务器:222.197.183.99 4. 从服务器向你的浏览器返回的状态代码是多少? 答:200 OK

5. 你从服务器上所获取的HTML文件的最后修改时间是多少? 答:如图 6.返回到你的浏览器的内容以供多少字节? 答:24370 在浏览器地址栏中如下网址: https://www.360docs.net/doc/994622843.html,/wireshark-labs/HTTP-wireshark-file2.html 8.分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE? 答:没有

9.分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知? 答:有 HTTP/1.1 200 OK(text/html) 10.分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么? 答:仍然没有。如图。 11.服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。 答:状态码和相应状态信息的值为304 NOT Modified,他表示缓存器可以使用该对象。第二次没有返回文件的内容,因为他只是作为对该条件GET的响应,WEB服务器只发送一个响应报文,不包含请求的对象。 12. 你的浏览器一共发出了多少个HTTP GET请求? 答:1个 13. 传输这一个HTTP响应需要多少个TCP报文段? 答:4个。

相关文档
最新文档