`

用协议分析工具学习TCP/IP

 
阅读更多

用协议分析工具学习

目录

一、前言TCP/IP协议是网络的基础,是TCP/IP协议就没有互联网的今天。目前号称搞网的人非常多,许多人就是从一把夹线钳,一个测线器联网开始接触网络的,如果只是联网玩玩,知道几个TCP/IP协议搞的非常明白。TCP/IP协议的人多有一种感觉,这东西太抽象了,没有什么数据实例,看完不久就忘了。本文将介绍一种直观的学习方法,利用协议分析工具学习

为了初学者更容易理解,本文将搭建一个最简单的网络环境,不包含子网。

1
、网络环境1所示



为了表述方便,下文中192.168.113.208的计算机,192.168.113.1的计算机。

两台机器都为1号机机器作为服务器,安装

3
、协议分析工具Sniffer ProIris以及Iris作为协议分析工具。208号机安装

三、测试过程1号机计算机中的一个文件通过208号机中。IRIS的设置。IRIS具有网络监听的功能,如果网络环境中还有其它的机器将抓很多别的数据包,这样为学习带来诸多不便,为了清楚地看清楚上述例子的传输过程首先将208号机和

1)
用热键IP地址,为了对抓的包看得更清楚不要添主机的名字(,设置好后关闭此窗口。



2
)用热键“IP address”,右栏按下图将

3



按下 开始按钮。在浏览器中输入: ,鼠标右键该文件,在弹出的菜单中选择开始下载,下载完后在 按钮停止抓包。图FTP的整个过程,下面我们将详细分析这个过程。4

ARP协议的包,在arp –d 清除

四、过程分析TCP/IP的基本原理TCP/IP,但要讲明白下面的过程必须简要讲一下

A
.网络是分层的,每一层分别负责不同的通信功能。TCP/IP协议族是一组不同的协议组合在一起构成的协议族。尽管通常称该协议族为TCP1所示。每一层负责不同的功能:



分层的概念说起来非常简单,但在实际的应用中非常的重要,在进行网络设置和排除故障时对网络层次理解得很透,将对工作有很大的帮助。例如:设置路由是网络层MAC地址是链路层Ping命令由

5



当应用程序用6所示。IP的数据单元称作TCP段。IP数据报。(Frame)6自上而下,层层加码;数据接收时是自下而上,层层解码。



c.
逻辑上通讯是在同级完成的

从图

7



为了更好的分析协议,我们先描述一下上述例子数据的传输步骤。如图

1)FTP
客户端请求IP地址建立连接。IP地址发送一份

3)
如果目的主机在本地网络上,那么IP选路函数来确定位于本地网络上的下一站路由器地址,并让它转发IP数据报都是被送到位于本地网络上的一台主机或路由器。32位的48位的以太网地址,该地址也称为IP地址翻译到对应的ARP协议完成的。ARP发送一份称作ARP请求数据帧中包含目的主机的如果你是这个

6)
目的主机的IP地址,于是发送一个ARP应答包含

7)
收到ARP进行请求IP数据包现在就可以传送了。IP数据报到目的主机。



3
、实例分析iris捕获的包来分析一下

·

·

·

iris捕获的包来分析一下.

目录

第一组

1
)下图显示的是2行的数据


2
)解释数据包

在第MAC地址是MAC地址是F换算为二进制就是1的地址就是广播地址。所谓广播就是向本网上的每台网络设备发送信息,电缆上的每个以太网接口都要接收这个数据帧并对它进行处理,这一行反映的是步骤ARP发送一份称作谁是IP地址的拥有者,请将你的硬件地址告诉我

6)的内容。在同一个以太网中的每台机器都会接收到这个报文,但正常状态下除了1号的主机的IP地址,于是发送一个IP地址和2行可以清楚的看出__自己的00:50:FC:22:C7:BE张三张三

3
)头信息分析1数据包包含了两个头信息:以太网(ARP


下表1的特殊地址是广播地址。电缆上的所有以太网接口都要接收广播的数据帧。两个字节长的以太网帧类型表示后面数据的类型。对于08062行中可以看到,尽管ARP应答的目的地址却是00 50 FC 22 C7 BE)。

2

31即表示以太网地址。协议类型字段表示要映射的协议地址类型。它的值为IP地址。它的值与包含1字节的字段,硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度,以字节为单位。对于以太网上ARP请求或应答来说,它们的值分别为4Opoperation),ARP请求、ARP应答、RARP请求和RARP应答,第二行中该字段值为IP地址、目的端的硬件地址和目的端ARP请求数据帧中都有发送端的硬件地址。对于一个

2行为应答,当系统收到一份目的端为本机的2,最后把它发送回去。


第二组

1
)下图显示的是

11



这三行数据是两机建立连接的过程。TCP协议的三次握手。IP协议来传输的。但IP数据报能成功地到达目的地,保证数据的可靠传输是靠我已收到你的信息了。TCP是一个面向连接的协议。无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。建立连接的过程就是三次握手的过程。你好,我是担子你好,我是张三我找你借几本书。

下面来分析一下此例的三次握手过程。208号机发送一个初始序号(987694419

2))
服务器1值为ACK),同时随机产生一个初始序号(1773195208,这两个信号同时发回到请求端消息已收到,让我们的数据流以

3))
请求端SEQ1

以上三步完成了三次握手,双方建立了一条通道,接下来就可以进行数据传输了。TCP头信息就可以看出,在握手过程中

3
)头信息分析12所示,第Ethernet)和TCPARP多了TCP,下面的过程也没有ARP负责的是在众多联网的计算机中找到需要找的计算机,找到工作就完成了。10800,指明该帧类型为

12



IP
5可以看出所有的UDPIGMP数据都以IP协议就像运货的卡车,将一车车的货物运向目的地。主要的货物就是UDP分配给它的。需要特别指出的是I P仅提供最好的传输服务但不保证E_MAIL会不会送到朋友那,其实不用担心,上文提过保证数据正确到达目的地是

如表IP协议的头信息。



45 00—71 014位,例如:0100

4
位版本:表示目前的协议版本号,数值是4,因此IPv432),数值为IP头部长度为

8
位服务类型00,这个3位的优先权子字段,现在已经被忽略,TOS子字段以及0)构成。TOS子字段包含:最小延时、最大吞吐量、最高可靠性以及最小费用构成,这四个1,本例中都为

16
位总长度):总长度字段是指整个00 30,换算为十进制为48字节 +28字节的

16
位标识:标识字段唯一地标识主机发送的每一份数据报。通常每发送一份报文它的值就会加3行为数值为5行为7行为

8
位生存时间(TTLttl的初始值由源主机设置,一旦经过一个处理它的路由器,它的值就减去TTL值判断服务器是什么系统和经过的路由器。本例为128TTL初始值一般为UNIX操作系统初始值为WINDOWS6表示传输层是

16
位首部检验和:当收到一份16 位进行二进制反码的求和。由于接收方在计算过程中包含了发送方存在首部中的检验和,因此,如果首部在传输过程中没有发生任何差错,那么接收方计算的结果应该为全1,即检验和错误,那么

32
位源32位目的IP协议中核心的部分,但介绍这方面的文章非常多,本文搭建的又是一个最简单的网络结构,不涉及路由,本文对此只做简单介绍,相关知识请参阅其它文章。IP地址由一个网络ID组成。本例源C0 A8 71 D0,转换为十进制为:IP地址为192.168.113.1。网络地址为1

TCP
协议头信息5

5 TCP包首部

TCP的头信息是:FTPHTTPTELNETTCP16位,16次方等于00 15,换算成十进制为FTP的默认端口,需要指出的是这是1024的端口,本例为1064。你的电脑中了木马也会开一个服务端口。观察端口非常重要,不但能看出本机提供的正常服务,还能看出不正常的连接。netstatSequence Number),简写为让我们建立联系吧?消息收到,数据流将以这个数开始。TCP连接完全是双向的,即双方的数据流可同时传输。在传输过程中双方数据是独立的,因此每个

32
位确认序号:也称为应答号(ACK。在握手阶段,确认序号将发送方的序号加

4
位首部长度:。这个字段占32位(728字节,等于正常的长度8个字节。,60字节(二进制15=60字节)。

URG
紧急指针,告诉接收

ACK
0的时候表示数据段不包含确认信息,确认号被忽略。1时请求的数据段在接收方得到后就可直接送到应用程序,而不必等到缓冲区满时才传送。1时重建连接。如果接收到

SYN


FIN


3个图分别为TCP协议的头信息,这三行是三次握手的过程,我们看看握手的过程标志位发生了什么?13-1请求端SEQ1号机。标志位113-2服务器ACK)和随机产生一个初始序号(1773195208发回到请求端ACK113-3请求端1号机的信号后,发回信息给ACK置为0。注意此时0

TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端正期望接收的字节。窗口大小是一个65535字节。TCP报文段:TCP数据。这是一个强制性的字段,一定是由发端计算和存储,并由收端进行验证。U R G标志置

选项:图13-213-3没有选项。最常见的可选字段是最长报文大小,又称为13-1可以看出1460字节,1460字节传送的。

上面我们分开讲了三次握手,看着有点散,现在小结一下。 第三组 数据传输 1)显示的是12行的数据2)解释数据包3)头信息分析第四组 终止连接1)显示的是3-5行的数据2)解释数据包3)头信息分析

第三组 1)下图显示的是

14

2)解释数据包

这四行数据是数据传输过程中一个发送一个接收的过程。

前文说过,TCP分割成认为最适合发送的数据块。一般以太网在传送时1460字节。也就是说数据在发送方被分成一块一块的发送,接受端收到这些数据后再将它们组合在一起。

1号机给1514字节大小的数据,注意我们前文讲过数据发送时是层层加协议头的,=14字节以太网头IPTCP 58行显示的应答信号1781514222,这个数是SEQ序号14601号机说明已收到发来的数据。

60行显示的是继续传送数据的过程。

这个过程就像我向张三借书,借给我几本我要说:,他说:

15-1和图57行和

终止连接

93-96行的数据



93-96是两机通讯完关闭的过程。

建立一个连接需要三次握手,而终止一个连接要经过TCP连接是全双工(即数据在两个方向上能同时传递),每个方向必须单独地进行关闭。 164次握手过程。

17-1所示FIN(SEQ)987695574发给 94行数据和图1号机收到1,这样就终止了这个方向的传输。

17-3显示FIN(SEQ)1773196056发给 96行数据和图208号机收到1,至此 3)头信息

ping的实例,测试某台计算机是否通,最常用的命令就是Ping 一台计算机,出现如图19所示界面就是不通,不通有两种情况,一是该计算机不存在或没接网线,二是该计算机安装了防火墙并设置为不允许iris跟踪上述情况。

19

20 21ARP请求没有回应。

如图ping不通,该计算机存在但安装了防火墙的情况。从图可以看出ICMP请求没回应。

从分析可以看出虽然后两种情况的表面现象是一样的,但实质确是截然相反的。通过头信息可以清楚的看出 ICMP协议来完成的,通讯过程是在第三层完成的,没有用到第四层的

20



22

TCP重发、TCP/IP协议族是非常复杂的,但只要理解了还是不难学的。最后向感兴趣的朋友提个问题:分别23端口开放,一台网是通的但TCP扫描判断对方机器是否在线的一种方法。

分享到:
评论

相关推荐

    实训(2)Windows环境下TCP/IP协议的配置,TCP/IP诊断.pdf

    本文主要讲述了在 Windows 环境下 TCP/IP 协议的配置和诊断,包括网络配置、TCP/IP 协议配置、Ping 命令工具的使用、Ipconfig 工具的使用等内容。 一、网络配置 在 Windows 系统中进行网络配置需要了解网络组件的...

    Windows环境下TCP/IP协议的配置,TCP/IP诊断

    (1)懂得在Windows系统中进行网络配置; (2)掌握如何在Windows系统中进行TCP/IP协议配置。 (3)熟悉使用ping命令工具来进行测试; (4)熟悉利用ipconfig工具进行测试

    利用网络协议分析器分析TCP/IP协议.pdf

    TCP/IP协议是互联网的基石,甚至可以说没有TCP/IP协议就没有互联网的今天。...本文拟结合具体的实例,利用协议分析工具,分析具体的数据包,对照学习TCP/IP协议,同时看到实际 的数据传输过程。

    tcp/IP调试工具

    tcp调试工具 , 双向调试。比较简单的tcp/ip协议分析工具

    TCP/IP教程TCP/IP基础

    3.2 TCP/IP的层和协议 21 3.2.1 体系结构 21 3.2.2 传输控制协议 21 3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 ...

    TCP/IP入门经典(第5版)

    《TCP/IP入门经典(第5版)》深入浅出地介绍了TCP/IP协议的...第4部分对TCP/IP中使用的工具进行了讲解;第5部分是与Internet相关的内容;第6部分则介绍了与运行中的TCP/IP相关的内容,比如Web服务、电子邮件、云计算等。

    TCP/IP校验和计算小工具

    用于TCP/IP数据包的校验和,ip头校验和计算小工具,直接运行!!!!!!!!!!!

    tcp/ip配置参数自动查询工具

    能自动查询tcp/ip配置参数,获取ip地址,mac地址等相关信息。

    TCP/IP技术大全

    3.2 TCP/IP的层和协议 21 3.2.1 体系结构 21 3.2.2 传输控制协议 21 3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 ...

    TCP/IP-UDP/IP网络调试工具软件.rar

    TCP/IP-UDP/IP网络调试工具软件.rar 可以作为TCP/IP的客户端与服务端通信,UDP/IP的通信,用于网络的报文接收与发送的调试,非常好用

    TCP/IP网络协议详解

    详细的介绍TCP/IP协议中的个层次协议,协议的原理、协议的层次。

    tcp/ip协议

    tcp/ip工具书。感觉不错三本pdf。很清楚。。

    TCP/IP测试工具

    1、TCP/IP测试工具分别为服务器端(SERVER)和客户端(CLIENT)的二个部分; 2、TCP/IP测试工具用于开发通讯程序时,在服务器端和客户端测试TCP/IP通讯连接以及测试数据的接收与发送情况。 3、操作系统需要安装TCP/IP...

    lis双向通讯(tcp/ip)

    本资源为通过tcp/ip协议实现与仪器设备进行通信,示例为创建服务端,然后等待客户端连接,连接后可自动接收对方发来的数据,可自行回应客户端。类似于tcp/ip调试助手,医疗行业或工业行业可参考本示例。其中还有ASTM...

    VC tcp/ip 协议测试工具源代码

    VC tcp/ip 协议测试工具源代码VC tcp/ip 协议测试工具源代码

    linux tcp/ip协议栈

    上篇九章部侧重于TCP/IP数据收发流程,即OSI模型的IP和TCP层,下篇也是九章,并不属于TCP/IP本身,但是多少和网络有关且常用到,比如LC-trie路由、netfilter包过滤防火、还有一些网络相关的命令行工具等,...

    用协议分析工具学习TCP_IP

    用协议分析工具学习TCP_IP,一个很好的初学者的学习TCP ip的文档。

    OraSQL 是一个 oracle 数据库 的sql 工具, 它通过 TCP/IP 协议直接连接到 oracle 数据库,不需要另外安装 oracle 客户端。

    OraSQL 是一个 oracle 数据库 的sql 工具, 它通过 TCP/IP 协议直接连接到 oracle 数据库,不需要另外安装 oracle 客户端。 OraSQL 完全免费。 主要功能: * Connect to Oracle 连接到 oracle 数据库,不需要...

Global site tag (gtag.js) - Google Analytics