实验二HTTP、FTP协议分析
1. 本次实验包括HTTP、FTP两个协议的分析(详见一、二)。
2. 参考文档所述步骤,完成数据包的捕获并进行分析;
3. 认真撰写实验报告,叙述实验过程要层次分明,对关键的过程或结果截图说明、分析,回答实验文档所提的思考题、问题。
一、超文本传输协议(HTTP)分析
【实验目的】
掌握HTTP协议的原理和报文格式;
了解HTTP协议的工作过程;
了解应用层协议与传输层协议的关系。
【实验内容】
用浏览器打开网页,捕获HTTP报文并进行分析
编辑一个HTTP数据报文并进行发送,并捕获该报文进行分析。
【实验步骤】
步骤一:使用浏览器打开网页,捕获HTTP数据包并分析:
(1)在主机上打开协议分析仪,点击工具栏上的“过滤器”,“类型过滤器”的
下拉列表中选择“HTTP协议”,确定后开始进行数据捕获:
(2) 使用实验室主机上的浏览器,例如IE,打开一个网页,如URL是
HTTP//
(3) 在协议分析器中找到捕获的数据包,观察HTTP请求报文和响应报文,以及其中所使用的命令:
【思考问题】
结合实验过程中的实验结果,问答下列问题:
1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据什么把返回的页面正确地显示到相应窗口的?一个主页是否只有一个连接?
2. 请求主页后,返回的浏览器内容的字节长度是多少?
3. 如果请求一个不存在的网页,服务器将会应答什么?
答:
1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据地址信息把返回的页面正确地显示到相应窗口的,一个主页是只有一个连接。
2. 请求主页后,返回的浏览器内容的字节长度是
3. 如果请求一个不存在的网页,服务器将会应答404错误。
二、FTP协议分析
【实验目的】
1、掌握FTP协议的工作原理;
2、了解FTP协议的常用命令,并领会其链路管理、理解FTP的主动模式和被动模式
3、了解应用层协议与传输层协议的关系;
【实验内容】
1. 登录FTP服务器,并捕获FTP报文进行分析;
2. 了解FTP的使用方法和常用命令,并用PASV模式,观察FTP的两个连接
3. 了解FTP的工作过程;
【实验步骤】
步骤一:登录FTP服务器,捕获数据报文并进行分析(FTP服务器的IP地址:192.168.2.21,用户名:ftp,密码:123)
1、在实验主机上启动网络协议分析器,设置过滤条件并进行数据捕获:在工具栏点击“过滤器”按钮,会弹出“设置&过滤器”对话框,在“过滤器类型”中选择“类型过滤器”,类型值中选择“ftp协议”,点击“设置参数”按钮后“确定”,
然后启动捕获:
2、登录FTP服务器:在命令行提示符下运行:ftp 192.168.2.21 ,即可建立与FTP服务器的连接,按照提示输入账号(ftp),密码(123),便进入了FTP的命令行界面,此时运行FTP的命令dir、get、quit等,从中可以看到FTP的反馈信息,以及FTP服务器的文件内容:
图2-1 运行FTP的命令dir
图2-2 运行FTP的命令get
图2-3 运行FTP的命令quit
3、暂停协议分析器的捕获,可以通过捕获的数据报文看到刚才的交互过程中,FTP客户端和服务器端的工作详细情况, FTP报文的格式和命令的使用,以及服务器端的响应代码。
图3-1 FTP的USER命令及其参数ftp(用户名)
图3-2 PASS命令和密码123:
4、分析FTP会话过程,观察该过程中的源、目的端口号。这个FTP服务器工作在主动模式还是被动模式下?
答:这个FTP服务器工作在被动模式下
步骤二:使用TCP连接工具连接FTP服务器
1、打开协议分析器,准备好进行数据包的捕获,然后打开协议分析仪,点击工具栏中的“TCP”按钮,在弹出的“TCP连接工具”中填写FTP服务器的IP地址(192.168.2.21)及FTP协议控制连接的端口号(21),点击“启动”,从而建立本机与FTP服务器21端口的TCP连接:
在“数据信息”区域显示成功连接的信息:“220-Microsoft FTP Service”,并返回了FTP服务器的名称“测试用FTP”。若不成功,再次尝试进行连接,直到成功。此时,在协议分析仪端,可以看到与FTP服务器建立控制连接的TCP 三次握手过程(右下角):
2、在发送区输入FTP命令,与FTP服务器进行交互:
(1)、在发送的编辑栏里面编辑发送FTP命令USER,参数为FTP帐号:USER ftp,这时服务器返回响应“331 Password required for welcome”,提示输入密码;
(2)、发送命令PASS 123,输入FTP的账号密码,服务器返回“230 User welcome logged in.”,说明验证通过,已经进入FTP服务器,并回送了FTP服务器设置的欢迎词“欢迎使用,这是一个测试用的FTP服务器”:
(3)、发送命令“NOOP”,这是一个空操作,服务器返回“200 NOOP command successful”说明登录用户已经得到服务器的承认:
(4)、发送命令“HELP”,服务器返回相应的帮助信息,即所有命令的列表:
HELP列表1
HELP列表2
(5)、发送命令“STAT”,服务器返回信息为当前的FTP服务状态:211-Microsoft FTP Service status:
Connected to vserver
Logged in as welcome
TYPE: ASCII, FORM: Nonprint; STRUcture: File; transfer MODE: STREAM No data connection
211 End of status.
(6)、使用PASV模式(该窗口为窗口1),体会FTP的两个连接----数据连接和控制连接:【发送命令“PASV”,返回的信息格式应该为: Port
n1,n2,n3,n4,n5,n6 表示client IP address (n1,n2,n3,n4)+port num
( n5x256+n6)】
(7)点击工具栏中的“TCP”按钮,在弹出的“TCP连接工具”中(窗口2)填写FTP服务器的IP地址(192.168.2.21)及FTP协议控制连接的端口号(n5x256+n6):(8)在窗口1中,键入命令“LIST”,观察窗口2中的信息显示;使用命令“QUIT”退出FTP服务。
图8-1 在窗口1中键入命令LIST
图8-2 在窗口2中查看LIST