TCP.IP课程实验报告

合集下载

tcpip实验报告

tcpip实验报告

网络协议分析实验一、实验目的通过使用协议分析软件,对通信系统的通信过程进行监控、分析,以了解通信协议的工作过程。

二、实验内容利用协议分析软件(如:Wireshark)跟踪局域网报文(如条件允许也可跟踪多种局域网协议报文),实验内容如下:将安装协议分析软件的PC接入以太网中,跟踪PC之间的报文,并存入文件以备重新查。

设置过滤器过滤网络报文以检测特定数据流。

利用协议分析软件的统计工具显示网络报文的各种统计信息。

三、实验步骤1、在PC中安装协议分析软件(如:Wireshark)。

具体安装过程详见附录:Wireshark用户指南。

2、启动Wireshark协议分析软件,选择抓包菜单项启动实时监视器,开始实时跟踪显示网络数据报文。

可根据系统提示修改显示方式,详见附录:Wireshark用户指南。

3、调出跟踪存储的历史报文,选择有代表性的ETHERNET,IEEE802.3,IP,ICMP,TCP,UDP报文,对照有关协议逐个分析报文各字段的含义及内容。

EHERNET报文格式IEEE802.3报文格式IP报文格式4、设置过滤器属性,如目的地址,源地址,协议类型等。

如过滤不需要的网络报文,过滤器允许设置第二层,第三层或第四层的协议字段。

过滤器有两种工作方式:1)捕获前过滤:协议分析软件用过滤器匹配网络上的数据报文,仅当匹配通过时才捕获报文。

2)捕获后过滤:协议分析软件捕获所有报文,但仅显示匹配符合过滤条件的报文。

选择统计菜单项可以显示网络中各种流量的统计信息,如:关于字节数,广播中报文数,出错数等。

UDP 客户/服务器实验一、实验目的本实验目的是使用因特网提供的UDP 传输协议,实现一个简单的UDP 客户/服务器程序,以了解传输层所提供的UDP 服务的特点,应用层和传输层之间的软件接口风格,熟悉socket 机制和UDP 客户端/服务器方式程序的结构。

二、实验内容本实验为UDP 客户/服务器实验。

实验内容:UDP echo 客户/服务器程序的设计与实现。

TCP(IP)组网技术实验报告模板5个

TCP(IP)组网技术实验报告模板5个

郑州轻工业学院TCP/IP组网技术实验报告学生姓名:宋苗苗专业班级: 3G软件13-02班学号: 541313140237 指导教师: 程立辉实验时间: 2016年4月21日至2016年6月9日成绩:目录实验一配置动态路由RIP (3)实验二配置静态路由 (7)实验三 Cisco VTP (13)试验四 PPP数据链路层协议 (21)实验五 Cisco EIGRP内部网关路由协议 (25)题目一配置动态路由RIP 一:实验目的1.了解掌握动态路由的相关知识;2.掌握了解RIP协议相关知识及应用;3.掌握如何用RIP协议实现动态路由的配置。

二:实验拓扑配置前拓扑图:配置后拓扑图:三:实验过程3.1路由器的基本配置3.1.1 路由器Router0的基本配置3.1.2 路由器Router1的基本配置3.1.3 路由器Router2的基本配置3.2 RIP路由协议配置3.2.1 路由器Router0的RIP路由协议配置3.2.2 路由器Router1的RIP路由协议配置3.2.3 路由器Router2的RIP路由协议配置3.3 RIP路由协议启用第二版3.4配置PC端的IP地址,如下:3.5 查看各路由器的路由表信息3.5.1 查看Router0路由表信息3.5.2 查看Router1路由表信息四:实验结果使用ping检查计算机不同网段互通情况五:实验总结通过本次实验,我了解了配置动态路由器方法和相关配置命令;掌握了路由器的RIP协议的配置方法;理解路由器连接不同类型网络的原理,而且在配置过程在需要特别注意各个路由器之间的连通性,确保其的正常联通。

遇到问题:动态路由器配置过程中对于网络IP的互通问题不是很清楚,通过查找资料,最终实现了动态路由配置。

题目二配置静态路由一:实验目的1.了解掌握静态路由的相关知识;2.掌握了解静态路由通信原理;3.掌握如何用实现静态路由的配置。

二:实验拓扑配置前拓扑图:配置后拓扑图:三:实验过程3.1路由器的基本配置3.1.1Router0的基本配置3.1.2 Router1的基本配置3.1.3 Router2的基本配置3.2为每个路由器配置静态路由3.2.1为路由器Router0配置到路由器Router1通信的静态路由3.2.2配置路由器Router1配置到路由器Router0的返回路径其余配置同上。

tcpip实验报告

tcpip实验报告

实验一Linux内核通用链表的使用一、实验目的学习Linux内核通用链表的设计原理,熟练掌握Linux内核通用链表的使用。

二、实验内容1、掌握Linux通用链表的创建2、掌握通用链表添加元素、删除元素和遍历链表的方法3、掌握通用链表的查找方法三、实现原理Linux的内核源文件list.h提供了所有的链表定义,以及各类链表的操作接口和实现。

其中创建链表的方法如下:LIST_HEAD(my_list);在指定的head后插入新节点,常用于堆栈数据结构的实现list_add(structlist_head *new, structlist_head *head);在指定的head前插入新节点,常用于队列数据结构的实现list_add_tail(structlist_head *new, structlist_head *head);从链表中删除一个指定节点list_del(structlist_head *entry);根据当前链表节点指针ptr获得宿主节点指针list_entry(ptr, type, member);遍历链表list_for_each(pos, head);四、实现代码和运行结果#include <stdio.h>#include <malloc.h>#include "list.h"struct user{int id;structlist_head list;};int main(void){struct user *p;LIST_HEAD(user_queue);for (inti = 0; i< 10; i++){p = (struct user *)malloc(sizeof(struct user));p->id = i;list_add_tail(&p->list, &user_queue);}structlist_head *q;list_for_each(q, &user_queue){p = list_entry(q, struct user, list);printf("%d\n", p->id);}return 0;}#include <stdio.h>#include <malloc.h>#include "list.h"struct user{char username[20];int id;structlist_head list;};int main(void){struct user *p;LIST_HEAD(head);for (inti; i< 10; i++){p = (struct user *)malloc(sizeof(struct user)); p->id = i + 1;printf("user %2d, Please input username: ", i+1); scanf("%s", p->username);list_add_tail(&(p->list), &head);}structlist_head *tmp;list_for_each(tmp, &head){p = list_entry(tmp, struct user, list);printf("%d\t%s\n", p->id, p->username);}list_for_each(tmp, &head){p = list_entry(tmp, struct user, list);if (p->id == 5)printf("%s\n", p->username);}return 0;}实验二Linux内核通用哈希链表的使用一、实验目的学习Linux内核通用哈希链表的设计原理,熟练掌握Linux内核通用哈希链表的使用。

TCPIP实验报告

TCPIP实验报告
(4)分析HTTP协议应答报文格式。响应报文:观察该请求消息发送主机与目的主机IP地址,和自己机器的主机IP地址比较,该消息谁发给谁的。观察该消息使用的TCP端口,是否是HTTP(80)。打开并分析该消息的HTTP头部信息内容
(5)从Analyze菜单中选择“ Follow TCP Stream”,显示整个数据流。
Response: 250 Directorychanged to /
9
pwd
Response: 257 "/" is current directory.
表3-2
序号
客户端->服务器
服务器->客户端
1
Response: 220 Serv-U FTP Server v6.0 for WinSock ready...
有:If-Modified-Since: Fri,13 May 2011 01:41:12
GMT\r\n
10.服务器对第二个HTTP GET请求的响应消息中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。
304 没有 通过状态码来对应操作文件命令 进而找到文件
11.你的浏览器一共发出了多少个HTTP GET请求?
实验四DNS实验
一.实验目的
1.熟悉并掌握WireShark的基本操作,了解网络协议实体间的交互以及报文交换。
2.分析DNS协议
二.实验内容
借助于网络分析议WireShark捕获HTTP、TCP、DNS报文, 分析DNS报文头结构,理解其具体意义。
实验内容1:在浏览器的地址栏中输入:
需要回答的问题
1.定位到DNS查询消息和查询响应报文,这两种报文的发送是基于2.UDP还是基于TCP的?

tcpip实验报告二(排错工具ping和trace)

tcpip实验报告二(排错工具ping和trace)

电子科技大学实验报告学生姓名:学号:指导教师:日期:年月日实验项目名称:报告评分:教师签字:一、实验原理“PING”这个名字源于声纳定位操作。

PING程序的目的是测试另一台主机是否可达,它发送ICMP回送请求报文给被测主机,并等待返回的ICMP回送应答或差错报告报文。

ICMP协议(RFC 792)是IP协议的辅助协议,提供差错报告和查询机制。

一台主机的可达性不仅取决于IP层是否可达,还取决于使用的高层协议及端口号。

仅当被测主机可达时,PING程序才能收到返回的ICMP回送应答报文,并能测出到该主机的往返时间。

如果被测主机不可达,PING程序会收到一些ICMP差错报告报文,甚至收不到任何返回信息。

根据ICMP差错报告报文的类型可粗略判定主机不可达的原因。

不同的物理网络具有不同的最大传送单元(MTU)值,因此可能需要对IP分组进行分片操作使其能够通过这些物理网络。

当IP分组被分片时,需要修改分组头中的标志、分片偏移和总长度值,其余各字段将被复制到所有分片中。

已经分片的IP分组在遇到具有更小MTU的网络时还会被再次分片。

TTL字段是由发送端初始设置在IP分组首部中的一个8 bit字段,不同操作系统上的不同应用程序指定的TTL初始值不同。

路由器在转发每个IP分组时需要将该分组的TTL值减1或减去该分组在路由器中停留的秒数。

由于大多数路由器转发IP分组的时延都小于1秒钟,因此TTL最终成为一个跳站计数器,即分组每经过一台路由器其TTL值被减1。

TTL字段的目的是为了防止分组在选路时被无休止的转发。

当路由器收到一份需转发的IP分组时,如果该分组的TTL值为1,路由器则丢弃该分组,并向分组源发送一份ICMP的TTL超时报文。

TRACE程序使用IP分组首部的TTL字段(生存时间)和ICMP报文,让使用者可以看到IP分组从一台主机传到另一台主机所经过的路由。

TRACE程序首先发送一份TTL值为1的IP分组给目的主机,处理该IP分组的第1个路由器即会返回一份以自己的IP地址为源的携带有ICMP超时报文的IP分组,这样TRACE程序就得到了该路径中第1个路由器的IP地址。

TCP IP实验报告

TCP IP实验报告

《TCP/IP协议》实验报告学院:机械与电子信息学院专业:计算机网络技术学号:姓名:指导教师:2018年 6 月实验一Packet Tracer 6.0的使用一、实验目的通过在Packet Tracer 6.0 添加网络设备,熟悉不同的物理设备及其连接方式,掌握使用Packet Tracer 6.0构建网络的方法,掌握捕获、查看通信信息的方法。

二、实验步骤步骤1、打开Packet Tracer 6.0,添加以下网络节点:1841路由器3台,2950-24 交换机1台,PC三台,服务器1台。

步骤2、选择合适的连接线把设备连接起来。

以太网连线时,交换机与计算机或路由器等设备之间连接用直通线,交叉线用于同种设备(路由器与路由器,交换机与交换机)之间相连或计算机与路由器之间相连。

用直通线吧PC0、PC1、Router0与Switch0的任意端口连接,Router0、Router1和Router2之间需要用交叉线连接,Server0与Router2也要用交叉线连接。

如果连线类型正确,则PC与交换机之间连线上的绿灯马上会点亮。

特别的,为配置路由器,可以用控制台连线把PC2和Router1的Console 端口连接起来,也可以连接到Router1的Auxiliary端口上,但使用方法与连接到控制口时不同。

步骤3、配置设备。

PC的配置可以直接在Packet Tracer 6.0的逻辑拓补图上单击PC图标,打开设备配置窗口,单击Desktop选项卡中的IP Configuration,完成默认网关和ID地址的设置。

依次设置3台PC和服务器0的IP地址,PC0和PC1的默认网关设为192.168.1.1,服务器0的默认网关设为192.168.4.1。

单击需要配置的路由器图标,打开设备配置窗口,单击CLI选项卡,按Enter键出现命令行提示符,然后使用如下命令配置静态路由。

Router>enable #进入特权模式Router#configure terminal #全局配置Router(config)#int f0/0 #配置接口f0/0 Router(config-if)#no shutdown #开启接口Router(config-if)#ip address 192.168.1.1 255.255.255.0随着借口no shutdown 命令的输入,接口连线上的绿灯随时变亮。

实验三 TCPIP网络配置及连通性测试实验

实验三    TCPIP网络配置及连通性测试实验

实验三TCP/IP网络配置及连通性测试实验一、实验目的1.理解TCP/IP,掌握IP地址的两种配置方式。

2.掌握IP网络连通性测试方法。

二、实验相关理论接入Internet中的每一台计算机都必须有一个唯一的IP地址,IP地址的配置有指定和自动获取两种方式。

IP地址由网络地址和网内主机地址组成,同一网络中的主机可以直接通信,不同网络中的主机则需要通过三层交换设备或路由器才能通信。

三、实验内容:1.指定IP地址,验证同一网络和不同网络中主机的连通性。

2.自动获取IP地址,验证连通网络主机的连通性。

3.指定IP地址,同时安装IPX协议,验证同一网络和不同网络中主机的连通性。

四、实验步骤(一)指定IP地址,连通网络1.察看网络组件是否完整,若无则添加。

2.删除除TCP/IP/协议以外的其它协议。

3.设置IP地址在保留专用IP地址范围中(192.168.x.y),任选IP地址指定给主机,选取原则是:x 为实验分组中的组别码,y值是1~254之间的任意数值。

注意:同一实验分组的主机IP地址的网络ID应相同,主机ID应不同,子网掩码需相同。

4.标识计算机在“系统属性”对话框中,单击“计算机名”,将显示“计算机名”与“工作组”名。

同一实验组的计算机应有相同的“工作组”和不同的“计算机名”。

5.测试网络连通性(1)用PING命令PING127.0.0.1,检测本机网卡连通性,记录并分析显示结果。

(2)用PING命令PING localhost,观察、记录显示结果,并与(1)中的结果进行对比。

(3)用PING命令PING <主机名>,这里的主机名是第(2)步运行结果中显示的主机名,观察、记录显示结果。

(4)用PING命令PING <网关>,运行结果中显示的主机名,观察、记录显示结果。

(5)用PING命令PING <外网>,运行结果中显示的主机名,观察、记录显示结果。

思考与前面观察内容的不同之处。

实验二TCP_IP实用程序的使用实验报告资料

实验二TCP_IP实用程序的使用实验报告资料

实验二TCP_IP实用程序的使用实验报告资料《TCP/IP实用程序的使用》实验报告计科12112171105景元合2015.5.19TCP/IP实用程序的使用一、实验目的1.使用Ping实用程序来测试计算机上的TCP/IP配置及测试本计算机与计算机的连接性能,确保可以在网络上通信;2.使用Hostname实用程序来标识计算机的名称;3.使用Ipconfig实用程序来验证计算机上的TCP/IP配置选项,包括MAC地址、IP地址、子网掩码和缺省网关等多项配置信息;4.考察操作系统为Windows2000的计算机的TCP/IP配置。

二、实验设备及仪器联网计算机一台三、TCP/IP实用程序原理TCP/IP协议组包括许多实用程序,它们允许用户访问网络上的信息。

Microsoft的TCP/IP协议组提供了基本的TCP/IP实用程序,允许运行windows2000的计算机访问网络上广泛的信息。

Windows2000包括三种类型的基于TCP/IP的实用程序:诊断工具、连接工具和基于服务器的软件。

诊断实用程序包括Arp,Hostname,Ipcogfig,Ping,Tracfert等。

1. 诊断实用程序:诊断实用程序允许用户检测和解决网络中的问题。

一些通用的诊断实用程序包括:Arp:该实用程序显示和修改地址解析协议(ARP)缓存。

Hostname:该实用程序显示计算机的名称。

Ipconfig:该实用程序显示和更新当前TCP/IP配置,包括IP地址。

Ping:该实用程序验证配置、测试两台计算机之间的IP连接。

Ping从源计算机上发送ICMP 请求,目的计算机用一个ICMP回答作为回应。

Tracert:该实用程序跟踪数据包到达目的地的路径。

2. 通用实用程序示例:Hostname、Ipconfig和Ping是三个通用的TCP/IP实用程序。

因为经常使用它们,因此应掌握它们的使用。

Hostname:使用该实用程序的语法为hostname。

TCPIP协议分析_实验3_分析IPv4和IPv6数据包

TCPIP协议分析_实验3_分析IPv4和IPv6数据包

《TCP/IP协议分析》实验报告实验序号:3 实验项目名称:分析IPv4和IPv6 数据包20网工学号姓名专业、班实验地点指导教师实验时间2022-9-14 一、实验目的及要求,步骤和结果动手项目3-1:使用Wireshark软件查看IPv4数据包首部所需时间: 20 分钟。

项目目标:学习使用Wireshark软件查看IPv4数据包的首部。

过程描述:本项目介绍如何捕获网络上的一个数据包,选择一个特定的数据包,查看该数据包的IPv4首部。

你可以捕获自己的数据进行分析,或启动Wireshark 软件,打开从本书配套网站上下载的文件IPv4Fields.pcap,直接跳到第(8)步。

(1)启动Wireshark软件(单击“开始”,指向“所有程序”,然后单击Wireshark。

也可以单击“开始”,在“运行”对话框中输入"Wireshark", 然后单击“确定”按钮)。

(2)单击Capture菜单,然后单击Interfaces 菜单项,出现Capture Interfaces 窗口。

(3)可能会显示有多个网卡,选定一个在Packets栏显示了实时数据包的网卡,然后单击Start 按钮,出现Capturing窗口。

(4)打开一个命令提示符窗口(单击“开始”按钮,在“运行”对话框中输入cmd,然后单击“确定”按钮)。

(5) ping 本地网络中的计算机IPv4地址。

(6)在命令提示符窗口中输入exit命令并按Enter键,关闭命令提示符窗口。

(7)在Wireshark软件中,单击菜单栏上的Capture,然后单击Stop (或者单击工具栏上的Stop 图标)。

(8)在数据包列表面板(上部面板)中选择一个TCP数据包(9)在数据包详细内容面板(中部面板),展开Internet Protocol Version4, 如图所示。

(10)查看Version和Header lenght字段的值。

(11)展开Differentiated Services Field, 查看Total Length和ldentification字段的值,然后再收起它。

TCPIP协议分析_实验6_DHCP协议分析

TCPIP协议分析_实验6_DHCP协议分析

《TCP/IP协议分析》实验报告实验序号:6 实验项目名称:DHCP协议分析20网工班学号姓名专业、班实验地点指导教师实验时间2022-10-12 一、实验目的及要求动手项目7-1:查看DHCP启动序列项目目标:查看Windows客户端计算机上的DHCP启动序列。

过程描述:本项目介绍当客户端从DHCP服务器请求一个IP地址时,提供和请求的不同选项。

此外,还探讨在客户端与DHCP服务器之间交换的不同信息。

(1)启动Wireshark软件。

(2)单击菜单栏的File,然后单击Open按钮,打开ch07_Hands-on_Project_trace_file_DHCPboot.pcapng文件,并单击Open按钮。

(3)单击Packet#1打开解码窗口。

回答下述问题:a.客户端标识符字段中包含了什么值?答:长度、硬件类型、客户端MAC地址Length:1Hardware type:Ethernet(以太网)0x01Client MAC address:Lite-OnU_30:c8:db (00:a0:cc:30:c8:db)b.如何验证客户端标识符的值是否与客户端的硬件地址相同?答:看Option(61)下的Client MAC address和客户端MAC地址是否一致,client hardware address padding是否全0。

c.主机名是什么?答:UTBPOPKId.客户端在启动过程中能够接收单播应答吗?答:能e.列出使用在这个DHCP数据包中的选项码。

答:53:DHCP消息类型61:客户端标识符50:所请求的IP地址12:主机名称55:参数请求列表1:子网掩码值3:路由器地址6:DNS服务器地址15:DNS域名44:NetBIOS名称服务器46:NetBIOS结点类型47:NetBIOS范围57:DHCP最大消息长度255:结束(4)在摘要窗口中单击每一个数据包,直到找到DHCP提供、请求,以及确认数据包为止。

TCPIP实验报告

TCPIP实验报告

tcp/ip实验报告一.实验目的二.实验内容2.1实验原理如图1所示。

计算机(ie )服务器(web 服务器: apache, microsoft iis) 计算机(netscape)三、实验步骤(1)清空高速缓存中的网页(图2):在ie浏览器中,选择“工具”——“internet选项”——“常规”标签——“删除文件”按钮图2 清除ie缓存(2)清空dns高速缓存(图3):在桌面上选择“开始”——“程序”——“附件”——“命令提示符”;——输入命令行“ipconfig/flushdns”——按“回车键”执行命令。

图3 清除dns域名解析缓存(5)从analyze菜单中选择“ follow tcp stream”,显示整个数据流。

其中,web浏览器发送的数据显示为一种颜色;所有由web服务器发送的数据显示为另一种颜色。

实验报告小组成员:组长:田廷魁组员:周霄晗周深立周斌杰田力陈童张鼎撰写人:田廷魁学号:201227920316 班级:网工1201班一、实验目的二、实验学时2 学时三、实验类型验证型实验四、实验步骤该实验采用网络结构一说明:ip 地址分配规则为主机使用原有 ip,保证所有主机在同一网段内。

按照拓扑结构图连接网络,使用拓扑验证检查连接的正确性。

本试验将主机 a 和 b 作为一组,主机 c 和d 作为一组,主机e 和f 作为一组。

现仅以主机 a 和 b 为例,说明实验步骤。

练习一:页面访问1. 主机 a 清空 ie 缓存。

------------------------------------------------------------------------------------------------------- *概要* 源主机: ip地址: 192.168.0.29 目的主机: ip地址: 192.168.0.251------------------------------------------------------------------------------------------------------- *命令交互过程*------------------------------------------------------------------------------------------------------- 端口: 80 端口: 1418 【问题】b) 根据本练习的报文内容,填写下表。

TCP-IP实习报告

TCP-IP实习报告

1 教学实习的目地本阶段实践目的是在结束了《计算机网络与TCP/IP》课程的学习之后,综合利用所学知识完成一个综合设计题目。

本阶段实践的主要任务是通过解决实际问题,巩固和加深《计算机网络与TCP/IP》课程中所学的理论知识和实际应用能力,通过实践教学的训练,基本掌握分析问题、解决问题的基本技能和技巧,包括问题描述、分析、设计、实现、测试等;熟悉网络项目设计、实现的规范和培养团体协作精神,获得初步的网络应用经验,为以后从事生产和科研工作打下一定的基础。

2 教学实习的内容实施实验网络系统集成,具体包括需求分析,构建网络环境,系统配置,应用集成,系统测试与调整。

3教学实习设计介绍3.1 设计题目《教室、办公、管理三个子网环境的设计》3.2 设计目标采用100/1000Mbps交换网络实现校区内部高速互联,连接主楼和二号教学楼,增加信息点若干个。

将学校的各种PC机、服务器、终端设备和局域网连接起来,整合现有的网络资源,改善与Internet/Cernet相连的网络性能。

构建一个以计算机多层交换网络为框架,以网络基本应用、网络管理、计算机多媒体辅助教学、电子化图书馆、教学管理办公自动化为平台的校园网,并逐步形成数字化校园网络。

3.3系统的主要功能3.3.1办公自动化基于Web综合管理信息系统,提供行政、人事、学籍、教学、后勤、财务管理、公文收发管理、教师档案管理、学生档案管理、科技档案管理等,使学校日常办公无纸化,减少办公开支,提高办公效率。

3.3.2网络多媒体教学将计算机多媒体视听引入课堂教学,使声音、图像、动画的普遍采用可以大大提高教学效果,使每一节课都能够得到有效的作用。

3.3.3学生自主学习针对不同的学生,提供不同的教学内容,采取不同的教学手段。

主要采用基于VOD、WEB及FTP的课件、光盘软件、Internet资源,学生可以根据自己的需要自由选择所需内容。

3.3.4电子图书馆基于Web的图书音像资料供学生随时阅读,并与Internet连接,使图书馆得到进一步拓展,使学生能够得到近乎无限的网上资源。

TCPIP协议分析_实验4_分析ARP缓冲区、IPv4和IPv6的路由表和路由协议

TCPIP协议分析_实验4_分析ARP缓冲区、IPv4和IPv6的路由表和路由协议

《TCP/IP协议分析》实验报告实验序号:4 实验项目名称:分析ARP缓冲区、IPv4和IPv6的路由表和路由协议20网工学号姓名专业、班实验地点指导教师实验时间2022-09-28 一、实验目的、步骤和结果动手项目4-1:管理本地ARP缓冲区项目目标:学习如何管理本地ARP的内容。

(1)单击Start(开始)按钮,单击Run(运行),在Open(打开)文本框中输入cmd,单击OK(确定)按钮。

屏幕上显示一个命令提示符窗口。

(2)在命令提示符下,输入arp -a命令,按Enter 键,浏览本地ARP缓冲区的内容。

记录出现在ARP缓冲区中的任何项。

(3)输入arp -d命令,按Enter键,删除本地ARP缓冲区的内容。

(4)输入arp -a命令,按Enter键,再次浏览ARP缓冲区。

记录出现在你的ARP缓冲区中的新项。

此时缓冲区应该为空。

(5)输入ping ip_address命令,其中ip_address 本地网络中的一台IP主机,然后按Enter键。

(6)在ping命令运行结束后,输入arp -a命令并按Enter 键,再次查看ARP缓冲区的内容,记录出现的新项。

此时的ARP缓冲区应只有ping之后的项了,如图所示。

动手项目4-2:读取本地IPv4路由表项目描述:学习如何查看本地计算机IPv4网卡路由表。

(1)单击Start(开始)按钮,单击Run(运行)按钮,在Open(打开)文本框中输入cmd,单击OK(确定)按钮。

屏幕上显示一个命令提示符窗口。

(2)在命令提示符下,输入netsh命令,并按Enter键。

(3)在netsh提示符后面,输入interface ipv4命令,然后按Enter 键。

(4)在命令提示符下,输入show route 命令,并按Enter键,查看本地IPv4路由表,如图所示。

(5)输入exit命令并按Enter 键,然后再输入exit命令并按Enter键,关闭命令提示符窗口。

实习四 TCP 、IP网络协议配置 实习报告

实习四 TCP 、IP网络协议配置 实习报告

实习四 TCP/IP网络协议配置一、实习目的1.了解网络基本配置中包含的协议、服务、客户端,以及基本参数,并了解各种协议的作用,以及安装方法;2.掌握Windows 2000 Server支持的网络协议及参数设置方法;3.练习并掌握简单网络命令的使用。

二、实习内容1.查看所在机器的主机名称和网络属性,包括网络基本配置中包含的协议、服务、客户端,以及有关的基本参数;2.修改网络配置参数,建立小组内的局域网;3.网络协议、服务、客户端等组件的安装和卸载方法;4.常用网络命令的使用。

三、预备知识1.TCP/IP协议和IP地址的有关知识;2.Windows命令方式的有关知识。

四、实习步骤实习开始时,由任课教师将学生每10人划分为一个网络小组,并分配IP地址,练习网络参数配置,建立小组内的局域网,完成如下实习内容:1.查看所在机器的主机名称和网络参数,了解网络基本配置中包含的协议、服务和基本参数。

查看本机主机名称和工作组查看本机网络配置参数2.常用网络命令的使用(1)IPConfig(2) ping命令3.共享资源访问4.修改网络配置参数,建立小组内的局域网修改本机所属工作组修改本机网络配置参数5.添加和删除网络协议、服务、客户端组件五、实习要求1.按照实习步骤进行操作,记录操作的参数。

2.根据实习内容和实习过程的具体操作,书写实习报告。

要求写出实习内容及操作设置的具体参数,操作结果,存在的问题等内容。

六、思考问题1、在网络设置中应注意哪些问题?首先要确定网络硬件完好与齐全,即网卡要能正常工作。

启用后,要指定IP地址以免造成内部网络冲突。

2、安装网络协议共分几部分,安装时应注意的问题是什么?当我们在电脑中插上网卡后,启动Windows系统,它会自动安装上网卡的驱动程序和相关的协议。

在“网上邻居的“属性”中,打开“网络和拨号连接”窗口。

在“本地连接”上单击鼠标右键,选择“属性”。

屏幕上出现本地网络的设置窗口,上面的这一栏是当前使用网卡的型号。

TCPIP协议分析与编程实验报告

TCPIP协议分析与编程实验报告

至诚学院实验报告课程名称:TCP/IP协议编程实践姓名:XXX学号:211xxxxxx系别:计算机工程系专业:软件工程年级:2012级年月日实验一系统时间同步程序【设计目的】设计简单的客户/服务器程序实现客户系统时间和服务器系统时间同步【设计要求】TCP :客户:(1)客户创建流套接字,向服务器发起TCP连接。

(2)连接创建成功后,接收服务器返回的时间,更新客户系统时间。

(3)断开与服务器的连接。

服务器:(1)服务器创建监听套接字,监听客户TCP连接请求。

(2)当收到一个客户TCP连接请求,创建连接套接字同意与其创建连接。

(3)获取系统时间,通过连接套接字返回给客户。

UDP :客户:(1)客户创建数据报套接字,通过该套接字向服务器发出”time”命令获取服务器系统时间。

(2)接收服务器返回的时间,更新客户系统时间。

(3)断开与服务器的连接。

服务器:(1)服务器创建数据报套接字,等待接收客户数据。

(2)接收客户发来的“time”命令,获取系统时间,通过套接字返回给客户。

【开发环境】1、操作系统: Windows 7 操作系统2、Winpcap开放代码函数库3、语言:C++4、整个程序的核心就是利用Windows Socket 进行网络设计实现,使用C/S结构【背景知识】时间协议(TIME protocol)是一个在RFC 868内定义的网络协议。

它用作提供机器可读的日期时间资讯。

时间协议可以在TCP或UDP上使用。

在TCP上,主机会连接支援时间协议的服务器的TCP埠 37。

服务器会传送32位二进制数字然后断开连接,数字表示由格林威治时间1900年1月1日午夜0时0分0秒至当时的总秒数。

主机在接收到时间后断开连接。

在UDP上,客户端会每送一个(通常为空的)数据包到UDP埠 37。

服务器会把包含时间的数据包传回。

在过程中没有进行连线。

TCP 协议为终端设备提供了面向连接的、可靠的网络服务,UDP 协议为终端设备提供了无连接的、不可靠的数据报服务。

TCP实验报告

TCP实验报告

TCP实验报告“TCP/IP技术与应⽤”实验报告实验⼀HTTP报⽂分析⼀、实验⽬的◆熟悉HTTP的报⽂格式◆熟练Ethereal的使⽤⽅法⼆、实验环境◆Windows操作系统◆Ethereal协议分析仪三、试验要求1. Basic HTTP GET/response interactionOpen and examine the Ethereal captured packet file http-ethereal-trace-1, and then a nswer the following questions.1)Is your browser running HTTP version 1.0 or 1.1? What version of HTTP is the server running? HTTP/1.1,HTTP/1.12)What languages (if any) does your browser indicate that it can accept to the server?Answer:3)What is the IP address of your computer? Of the /doc/db718f6a25c52cc58bd6be0a.html server? Answer:192.168.1.102 63.240.76.194)What is the status code returned from the server to your browser?Answer:200 HTTP/1.1 200 OK(text/html)404 HTTP/1.1 404 Not Found(text/html)5)When was the HTML file that you are retrieving last modified at the server?Answer:6)How many bytes of content are being returned to your browser?Answer:7)By inspecting the raw data in the packet content window, do you see any headers within the datathat are not displayed in the packet-listing window? If so, name one.Answer:Yes2. The HTTP CONDITIONAL GET/response interactionOpen and examine the Ethereal captured packet file http-ethereal-trace-2, and then a nswer the following questions. 8)Inspect the contents of the first HTTP GET request from your browser to the server. Do you see an“IF-MODIFIED-SINCE” line in the HTTP GET?Answer:No9)Inspect the contents of the server response. Did the server explicitly return the contents of the file?How can you tell?Answer:Yes,10)10. Now inspect the contents of the second HTTP GET request from your browser to the server.Do you see an “IF-MODIFIED-SINCE:” line in the HTTP GET? If so, what information follows the “IF-MODIFIED-SINCE:”header?Answer:Yes. Date after Tue,23 Sep 2003 05:35:00 GMT11)What is the HTTP status code and phrase returned from the server in response to this second HTTPGET? Did the server explicitly return the contents of the file? Explain.Answer:NO,因为第⼀次访问后已经返回,第⼆次申请时未变3. Retrieving Long DocumentsOpen and examine the Ethereal captured packet file http-ethereal-trace-3, and then a nswer the following questions. 12)How many HTTP GET request messages were sent by your browser?Answer:113)How many data-containing TCP segments were needed to carry the single HTTP response?Answer:414)What is the status code and phrase associated with the response to the HTTP GET request?Answer:15)Are there any HTTP status lines in the transmitted data associated with a TCP induced“Continuation”?Answer:NO4. HTML Documents with Embedded ObjectsOpen and examine the Ethereal captured packet file http-ethereal-trace-4, and then a nswer the following questions.16)How many HTTP GET request messages were sent by your browser? To which Internetaddresses were these GET requests sent?Answer:3,17)Can you tell whether your browser downloaded the two images serially, or whether they weredownloaded from the two web sites in parallel? Explain.Answer:Parallel,因为第⼀次请求图⽚,未等到回复就继续第⼆次申请试验⼆TCP 报⽂分析⼀、实验⽬的◆熟悉TCP的报⽂格式◆熟练Ethereal的使⽤⽅法⼆、实验环境◆Windows操作系统◆Ethereal协议分析仪三、试验要求Open and examine the Ethereal captured packet file tcp-ethereal-trace-1, and then a nswer the following questions.1. What is the IP address and TCP port number used by the client computer (source) that is transferring the file to/doc/db718f6a25c52cc58bd6be0a.html ?Answer:2. What is the IP address of /doc/db718f6a25c52cc58bd6be0a.html ? On what port number is it sending and receiving TCP segments for this connection?Answer:3. What is the sequence number of the TCP SYN segment that is used to initiate the TCP connection between the client computer and /doc/db718f6a25c52cc58bd6be0a.html ? What is it in the segment that identifies the segment as a SYN segment?Answer:0,Flags中SYN为14. What is the sequence number of the SYNACK segment sent by/doc/db718f6a25c52cc58bd6be0a.html to the clientcomputer in reply to the SYN? What is the value of the ACKnowledgement field in the SYNACK segment?How did/doc/db718f6a25c52cc58bd6be0a.html determine that value? What is it in the segment that identifies the segment as a SYNACK segment?Answer:因为上⼀次seq=0 由Flags中SYN与ACK位为15. What is the sequence number of the TCP segment containing the HTTP POST command?Answer:6. Consider the TCP segment containing the HTTP POST as the first segment in the TCP connection. What are the sequence numbers of the first six segments in the TCP connection (including the segment containing the HTTP POST)? At what time was each segment sent? When was the ACK for each segment received?Answer:编号(相对)序列号发送时间确认时间TCP报⽂长度1 1 0.026477 5852 566 14803 2026 14804 3486 14805 4946 14806 6406 14807. What is the length of each of the first six TCP segments?Answer:585 1480 1480 1480 1480 14808. What is the minimum amount of available buffer space advertised at the received for the entire trace?Answer:58409. How much data does the receiver typically acknowledge in an ACK? Can you identify cases where the receiver is ACKing every other received segmentAnswer:2个.能10. What is the throughput (bytes transferred per unit time) for the TCP connection? Explain how you calculated this value?Answer:163411/(5.297341-0.041737)实验三TCP/IP报⽂综合分析⼀、实验⽬的◆熟悉TCP的报⽂格式◆熟练Ethereal的使⽤⽅法⼆、实验环境◆Windows操作系统◆Ethereal协议分析仪三、实验内容及要求⽤Ethereal打开⽂件http-ethereal-trace-1,分析12号分组的原始数据,并回答以下问题:(注:有X栏不⽤填写)1、Ethernet报⽂字段名起⽌字节地址内容(⼗六进制)意义Ethernet报头00-0d X XSource MAC 06-0b 源物理地址Dest. MAC 00-05 ⽬标物理地址Type0c-0d 0800 协议为IP2、IP报⽂字段名起⽌字节地址内容(⼗六进制)意义IP报头0e-21 X XProtocol 17-17 06 协议为TCP3、TCP报⽂字段名起⽌字节地址内容(⼗六进制)意义TCP报头22-35 X XWindows size 30-31 1920 接收窗⼝6432字节4、HTTP报⽂字段名起⽌字节地址内容(⼗六进制)意义Status line 36-46 版本http/1.1状态吗200短语ok Head lines 47-16b X XEntity body 16e-1b6 X X5、该分组到达⽬标机后,执⾏什么操作?产⽣的效果是什么?Answer:实验四Socket编程及应⽤⼀、试验⽬的●了解Socket编程⽅法。

TCP-IP课程实验报告

TCP-IP课程实验报告

图 2-1 ARP 将网络层的逻辑地址解析为本地的硬件地址
2.1 ARP 概述
ARP 是像以太网和令牌环这样的访问共享、基于广播的网络技术所使用的协议。该协 议将节点的转发 IP 地址解析成对应的 MAC (Media Access Control——媒介访问控制) 地址。 MAC 地址也称为物理地址、硬件地址或网卡地址。解析后的 MAC 地址成为以太网或令牌 环报头中的目标 MAC 地址,IP 数据报在媒介上发送时寻到该地址。 ARP 将因特网层地址 (IP 地址)解析成网络接口层地址(MAC 地址) 。 转发 IP 地址不必与 IP 数据报的目标 IP 地址相同,每个发出的 IP 数据报经路由处理后 都变成一个接口和转发 IP 地址。对于直接在同一子网上传送的目标节点,转发 IP 地址是数 据报的目标 IP 地址。对于间接传送到远程目标节点,转发 IP 地址是转发主机所在子网上的 路由器的 IP 地址。 IP 独立于任何特定的网络接口层技术。因此,从转发的 IP 地址判断不出目的地的网络 接口层地址。例如,以太网和令牌环 MAC 地址的长度是 6 字节,IP 地址的长度是 4 字节。 MAC 地址在网卡的制造过程中就已分配好了,而 IP 地址是由网络管理员分配的。对某个具 体的 IP 节点而言,这两种地址的指定方式之间没有任何关系,因此不可能从一个地址判断 出另一个地址。ARP 是一种基于广播的请求答复协议,提供了将正在转发的 IP 地址映射为 它们相应的 MAC 地址的动态解析能力。
TCP
UDP
图 1-3 数据结构
第二章
地址解析协议(ARP)——链路层
由于不同层和驻留于这些层上的地址的复杂性, 因此必须有一种解析不同的计算机编址 策略间差异的方法。 地址解析就起了这样的作用, 并且使得端设备可以动态地找到本地的硬 件地址以便向远端主机传输数据, 或者取得必要的逻辑 IP 地址和配置参数以便加入到网络。 如果没有某种类型的地址解析方法,远端主机间就不能通信。在 IP 界,地址解析指的是将 一个协议地址转换成一个相应的物理地址或反之,例如将一个 IP 地址转换成一个以太网地

TCP_IP实验报告

TCP_IP实验报告
| Internet Protocol & ICMP | Gateway Level
+-------------------------------+
|
+---------------------------+
| Local Network Protocol | Network Level
+---------------------------+
while(true){
printf("请输入要登陆的IP:");
scanf("%s",&servername);
to.sin_addr.s_addr = inet_addr(servername);
printf("正在连接...\n");
result = connect(client,(struct sockaddr *)&to,sizeof(to));
if(SOCKET_ERROR==result)
{
//连接失败
printf("对不起,无法连接到目标主机!\n");
WSACleanup();
return 0;
} else{
cansend=false;
recv(client,receive,sizeof(receive),0);
printf("*******欢迎消息消息*******\n");
server = socket(AF_INET,SOCK_STREAM,0);
if(server==INVALID_SOCKET )
{
printf("无法创建套接字!\n");
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

TCP/IP协议族分析课程设计目录第一章TCP/IP 概述 (3)1.1 TCP/IP协议族定义 (3)1.2 TCP/IP协议族的特点 (3)1.3 TCP/IP协议族的分层 (3)1.4 TCP/IP协议族的结构 (4)第二章地址解析协议(ARP)——链路层 (5)2.1 ARP概述 (6)2.2 ARP的组成 (6)2.3 ARP工作原理 (7)2.4 ARP帧结构 (7)第三章因特网控制消息协议(ICMP)——网络层 (13)3.1 ICMP协议简介 (13)3.2 ICMP消息结构 (14)3.3 Echo Request和Echo Reply查询消息 (14)3.4 ICMP各字段分析 (15)第四章传输控制协议(TCP)——运输层 (18)4.1 TCP协议简介 (18)4.2 TCP数据包结构 (19)4.3 TCP数据包分析 (20)4.4 TCP三次“握手” (25)第五章普通文件传输协议(TFTP)——应用层 (27)5.1 TFTP数据传输模式 (27)5.2 TFTP会话实例 (28)总结 (31)参考文献 (31)第一章 TCP/IP 协议族概述1.1 TCP/IP协议族定义TCP/IP协议族是指一整套数据通信协议, 其名字是由这些协议中的两个协议组成的,即传输控制协议(Transmission Control Protocol ——TCP)和网间协议(Internet Protocol——IP)。

虽然还有很多其他协议,但是TCP和IP显然是两个最重要的协议。

1.2 TCP/IP协议族的特点TCP/IP协议族有一些重要的特点,以确保在特定的时刻能满足一种重要的需求,即世界范围内的数据通信。

其特点包括:●开放式协议标准。

可免费使用,且与具体的计算机硬件或操作系统无关。

由于它受到如此广泛的支持,因而即使不通过Internet 通信,利用TCP/IP来统一不同的硬件和软件也是很理想的。

●与物理网络硬件无关。

这就允许TCP/IP可以将很多不同类型的网络集成在一起,它可以适用于以太网、令牌环网、拨号线、X.25网络以及任何其它类型的物理传输介质。

●通用的寻址方案。

该方案允许任何TCP/IP设备唯一的寻址整个网络中的任何其他设备,该网络甚至可以像全球Internet那样大。

●各种标准化的高级协议。

可广泛而持续地提供多种用户服务。

1.3 TCP/IP协议族的分层图1-1 TCP/IP协议族中不同层次的协议1.3.1. 链路层有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。

它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。

1.3.2. 网络层有时也称作互连网层,处理分组在网络中的活动,例如分组的路由选择。

在TCP/IP协议族组件中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互连网控制报文协议),以及IGMP协议(Internet组管理协议)。

1.3.3. 运输层主要为两台主机上的应用程序提供端到端的通信。

在TCP/IP协议族组件中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。

TCP为两台主机提供高可靠性的数据通信。

它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。

由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。

而另一方面,UDP则为应用层提供一种非常简单的服务。

它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。

任何必需的可靠性必须由应用层来提供。

这两种运输层协议分别在不同的应用程序中有不同的用途。

1.3.4. 应用层负责处理特定的应用程序细节。

几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:●Telnet:远程登录。

●FTP:文件传输协议。

●SMTP:用于电子邮件的简单邮件传输协议。

●SNMP:简单网络管理协议。

●TFTP:普通文件传输协议1.4 TCP/IP协议族的结构在描述TCP/IP时,一般只定义如图1-2所示的4层模型:应用层、主机对主机传输层(即运输层)、网间层和网络访问层(即链路层)。

图1-2 TCP/IP 协议族结构中的各层在TCP 的应用层中,将数据称为“数据流(stream )”;而在用户数据报协议(UDP )的应用层中,则将数据称为 “报文(message )”。

TCP 将它的数据结构称作“段(segment )”。

而UDP 将它的数据结构称作“分组(packet )”,网间层则将所有数据看作是一个块,称为“数据报(datagram )”。

TCP/IP 使用很多种不同类型的底层网络,每一种都用不同的术语定义它传输的数据,大多数网络将传输的数据称为“分组”或“帧(frame )”。

图1-3 数据结构第二章 地址解析协议(ARP )——链路层由于不同层和驻留于这些层上的地址的复杂性,因此必须有一种解析不同的计算机编址策略间差异的方法。

地址解析就起了这样的作用,并且使得端设备可以动态地找到本地的硬件地址以便向远端主机传输数据,或者取得必要的逻辑IP 地址和配置参数以便加入到网络。

如果没有某种类型的地址解析方法,远端主机间就不能通信。

在IP 界,地址解析指的是将一个协议地址转换成一个相应的物理地址或反之,例如将一个IP地址转换成一个以太网地址。

可以用四种地址解析的方法:●ARP(地址解析协议)●RARP(反向地址解析协议)●BOOTP(引导协议)●DHCP(动态主机配置协议)在这四种地址解析协议中,ARP是唯一的一个将网络层地址解析为硬件地址的协议,而RARP、BOOTP和DHCP协议则都是允许一个端设备可以动态地将其硬件地址解析为网络层的逻辑地址。

图2-1 ARP将网络层的逻辑地址解析为本地的硬件地址2.1 ARP概述ARP是像以太网和令牌环这样的访问共享、基于广播的网络技术所使用的协议。

该协议将节点的转发IP地址解析成对应的MAC(Media Access Control——媒介访问控制)地址。

MAC地址也称为物理地址、硬件地址或网卡地址。

解析后的MAC地址成为以太网或令牌环报头中的目标MAC地址,IP数据报在媒介上发送时寻到该地址。

ARP将因特网层地址(IP地址)解析成网络接口层地址(MAC地址)。

转发IP地址不必与IP数据报的目标IP地址相同,每个发出的IP数据报经路由处理后都变成一个接口和转发IP地址。

对于直接在同一子网上传送的目标节点,转发IP地址是数据报的目标IP地址。

对于间接传送到远程目标节点,转发IP地址是转发主机所在子网上的路由器的IP地址。

IP独立于任何特定的网络接口层技术。

因此,从转发的IP地址判断不出目的地的网络接口层地址。

例如,以太网和令牌环MAC地址的长度是6字节,IP地址的长度是4字节。

MAC地址在网卡的制造过程中就已分配好了,而IP地址是由网络管理员分配的。

对某个具体的IP节点而言,这两种地址的指定方式之间没有任何关系,因此不可能从一个地址判断出另一个地址。

ARP是一种基于广播的请求答复协议,提供了将正在转发的IP地址映射为它们相应的MAC地址的动态解析能力。

2.2 ARP的组成ARP主要由下面两类信息组成:●转发节点使用ARP请求信息请求某个转发IP的地址的MAC地址。

ARP请求信息是一个MAC级广播帧,旨在到达发送ARP请求信息的接口所连接的物理网段上的所有节点。

发送ARP请求信息的节点称为ARP请求端。

●用ARP答复信息答复ARP请求端。

IP地址与ARP请求信息所请求的IP地址相同的节点发送ARP答复信息。

ARP答复信息是一个单播的MAC帧,发送到ARP请求端的目标MAC地址。

发送ARP答复信息的节点称为ARP答复端。

由于ARP请求信息是一个MAC级广播包,所有要被解析的转发IP地址都必须能直接从发送ARP请求信息的接口到达(位于同一个子网上)。

对于正确的路由表项始终都是这样。

如果一个路由表项包含的转发IP地址无效,从接口无法直接到达该地址,ARP将不能解析这个转发的IP地址。

同一广播域内的所有节点都收到ARP请求信息。

广播域是传播广播帧的网络的一部分。

集线器、网桥以及Layer 2交换机传播ARP请求信息。

但是,IP路由器或Layer 3交换机不传播ARP帧。

2.3 ARP工作原理ARP协议主要负责把IP地址转换成网卡硬件地址。

ARP完成的这个任务过程是:发送一个广播,这个广播包含了一个指定的IP地址,要求正在使用这个IP地址的主机响应它的硬件地址。

使用这个IP的主机侦听到这个广播(局域网中其他的设备也会侦听到),就会给源端反馈一个ARP响应。

这个响应不再是网络上的广播,而是直接发送给那个发出请求的主机。

ARP包直接与数据链路层通信,这和IP包是一样的,但是ARP包和IP包是完全独立的,ARP协议ID是0806,而IP使用的是0800,ARP和IP都是直接位于数据链路层的上层,在数据链路层中有个TYPE字段,指明上层协议的类型,ARP为0x0806,IP为0x0800.ARP包含几个字段,但是其中只有5个字段是用来提供ARP的整体功能:源端的硬件地址,源端的IP地址,目标的硬件地址,目标的IP地址和一个“消息类型”字段,这个消息类型字段用来表明当前ARP包是一个请求还是对请求的一个响应。

当一个设备发送ARP请求时,它要填充4个与地址相关的字段中的3个,即提供自身的硬件地址和IP地址,还提供目标的IP地址(因为目标的硬件地址是不知道的,所以这个字段填充为0)。

另外,它会设置消息类型字段来表明当前包是一个ARP包,在局域网上广播这个请求,使得所有设备都能侦听到。

一旦主机侦听到针对自己的请求(在ARP请求的IP地址字段中表明),就生成一个响应报文并反馈给请求主机。

响应报文包含本地设备的IP 地址和硬件地址,还包含源发送系统的IP地址和硬件地址,这个响应报文会通过消息类型字段来表明当前的报文是一个ARP响应报文,新的ARP响应报文不再是广播发送,会直接传输给源端请求者。

2.4 ARP帧结构图2-2 广域网技术的ARP帧结构ARP报文由9个字段组成,包的总大小根据本地网络媒介上使用的网络地址的大小变表2-1 ARP报文中的字段根据上面的字段,下面用实际截获的ARP报文来逐个分析ARP报文中的字段。

2.4.1. 硬件类型(Hardware Type)一个2字节的字段,指出数据链路层所使用的硬件类型。

表2-2列出了一些常用的ARP 硬件类型值。

一收到ARP帧,IP节点就验证ARP帧的硬件类型是否与接收该ARP帧的接口的硬件类型相匹配。

如果不匹配,帧就被默默地扔掉。

相关文档
最新文档