为了看清楚ARP的运作过程,我们执行telnet命令与无效的服务器连接。
当我们在另一个系统(s u n)上运行带有-e选项的t c p d u m p命令时,显示的是硬件地址(在我们的例子中是48 bit 的以太网地址)。图4 - 4中的t c p d u m p的原始输出如附录A中的图A - 3所示。由于这是本书第一个t c p d u m p 输出例子,你应该去查看附录中的原始输出,看看我们作了哪些修改。
图4-4 TCP连接请求产生的ARP请求和应答
我们删除了t c p d u m p命令输出的最后四行,因为它们是结束连接的信息
在第1行中,源端主机(b s d i)的硬件地址是0 : 0 : c 0 : 6 f : 2 d : 4 0。目的端主机的硬件地址是ff : ff : ff : ff : ff : ff ,这是一个以太网广播地址。电缆上的每个以太网接口都要接收这个数据帧并对它进行处理,如图4 - 2所示。
第1行中紧接着的一个输出字段是a r p,表明帧类型字段的值是0 x 0 8 0 6,说明此数据帧是一个A R P请求或回答。
在每行中,单词a r p或i p后面的值6 0指的是以太网数据帧的长度。由于A R P请求或回答的数据帧长都是4 2字节(2 8字节的A R P数据,1 4字节的以太网帧头),因此,每一帧都必须加入填充字符以达到以太网的最小长度要求:6 0字节。
这个最小长度6 0字节包含1 4字节的以太网帧头,但是不包括4个字节的以太网帧尾。有一些书把最小长度定为6 4字节,它包括以太网的帧尾。我们把最小长度定为4 6字节,是有意不包括1 4字节的帧首部,因为对应的最大长度(1 5 0 0字节)指的是M T U—最大传输单元(见图2 - 5)。我们使用M T U经常是因为它对I P数据报的长度进行限制,但一般与最小长度无关。大多数的设备驱动程序或接口卡自动地用填充字符把以太网数据帧充满到最小长度。第3,4和5行中的I P数据报(包含T C P段)的长度都比最小长度短,因此都必须填充到6 0字节。
第1行中的下一个输出字段arp who-has 表示作为A R P请求的这个数据帧中,目的I P地址是s v r 4的地址,发送端的I P地址是b s d i的地址。t c p d u m p打印出主机名对应的默认I P地址(在4 . 7节中,我们将用-n选项来查看A R P请求中真正的I P地址。) 从第2 行中可以看到,尽管A R P 请求是广播的,但是A R P 应答的目的地址却是b s d i(0 : 0 : c 0 : 6 f : 2 d : 4 0)。A R P应答是直接送到请求端主机的,而是广播的。t c p d u m p打印出arp reply的字样,同时打印出响应者的主机名和硬件地址。第3行是第一个请求建立连接的T C P段。它的目的硬件地址是目的主机(s v r 4)。
在每一行中,行号后面的数字表示t c p d u m p收到分组的时间(以秒为单位)。除第1行外,其他每行在括号中还包含了与上一行的时间差异(以秒为单位)。从这个图可以看出,发送A R P请求与收到A R P回答之间的延时是2.2 ms。而在0.7 ms之后发出第一段T C P报文。在本例中,用A R P进行动态地址解析的时间小于3 ms 。
最后需要指出的一点,在t c p d u m p命令输出中,我们没有看到s v r 4在发出第一段T C P报文(第4行)之前发出的A R P请求。这是因为可能在s v r 4的A R P高速缓存中已经有b s d i的表项。一般情况下,当系统收到A R P请求或发送A R P应答时,都要把请求端的硬件地址和I P地址存入A R P高速缓存。在逻辑上可以假设,如果请求端要发送I P数据报,那么数据报的接收端将很可能会发送一个应答。
分享到:
相关推荐
这些命令包括`ipconfig`, `ping`, `ARP`, `FTP`, `netstat`, `route`, `tftp`, `tracert`, `telnet`, 和 `nslookup`。下面将详细介绍每个命令的功能和使用方法。 1. **ipconfig**: `ipconfig`命令用于显示系统中...
通常,实现这样的TCP Echo服务会涉及以下步骤: 1. **硬件配置**:确保STM32微控制器的以太网接口正确连接到网络,并配置好所需的晶振和PHY芯片。 2. **固件开发**:使用STM32CubeMX或者其他的IDE(如IAR Embedded...
IP协议家族 77 9.1 TCP/IP模型 77 9.1.1 解剖TCP/IP模型 78 ...TCP做什么 83 9.4 理解用户数据报协议(UDP) 85 9.4.1 UDP头结构 85 9.4.2 UDP能做什么 85 9.4.3 TCP和UDP 86 9.5 小结 86 ...
它详细阐述了网络接口层(如以太网)、互联网层(包括IP协议、ICMP协议、ARP协议和RARP协议)、传输层(重点讨论TCP和UDP协议)以及应用层的各种协议(如FTP、Telnet、SMTP等)。通过阅读,读者可以理解网络数据如何...
W5500是一种独立的以太网控制器,内置了硬件TCP/IP协议栈,支持TCP、UDP、IP、ICMP、ARP和PPPoE等多种网络协议。它提供了8个独立的SPI接口,方便与微控制器连接,实现网络通信功能。在STM32与W5500的集成中,用户...
9.3.2 TCP做什么 83 9.4 理解用户数据报协议(UDP) 85 9.4.1 UDP头结构 85 9.4.2 UDP能做什么 85 9.4.3 TCP和UDP 86 9.5 小结 86 第10章 IPv6 87 10.1 IPv6数据报 87 10.1.1 优先级分类 88 10.1.2 流标识 89 10.1.3 ...
telnet 23/tcp smtp 25/tcp pptp 47/ip http 80/tcp ospf 89/ip http 98/tcp poppass 106/tcp pop 109/tcp pop 110/tcp portmap 111/tcp portmap -111/tcp portmap 111/udp portmap 111/udp vrrp 112/...
9.3.2 TCP做什么 83 9.4 理解用户数据报协议(UDP) 85 9.4.1 UDP头结构 85 9.4.2 UDP能做什么 85 9.4.3 TCP和UDP 86 9.5 小结 86 第10章 IPv6 87 10.1 IPv6数据报 87 10.1.1 优先级分类 88 10.1.2 流标识 89 10.1.3 ...
【Wireshark抓包协议解读】...总的来说,通过Wireshark分析网络通信,我们可以深入理解TCP/IP协议的工作原理,识别并防范像ARP攻击这样的网络安全威胁,同时也能更好地管理网络服务和端口,提升网络的安全性和效率。
ARP协议是在局域网(LAN)中运行TCP/IP协议栈的设备之间进行通信的关键组件。它允许网络设备将IP地址解析为物理硬件地址(MAC地址),因为以太网传输数据依赖于MAC地址。当一台主机需要向另一台主机发送数据时,它...
10. **网络实用工具**:讲解网络诊断和测试工具,如ping、traceroute、telnet、netstat等,以及它们的工作原理。 这本书不仅适合初学者,也对有经验的网络工程师有着极高的参考价值。通过阅读,读者可以深入理解...
《TCP/IP详解》第一卷是关于网络通信协议TCP/IP的经典入门教材,由W. Richard Stevens撰写。该书深入浅出地讲解了TCP/IP协议族,是网络工程师和相关技术人员必备的参考资料之一。TCP/IP协议族是现代互联网通信的基础...
第4章 ARP:地址解析协议 38 第5章 RARP:逆地址解析协议 47 第6章 ICMP:Internet控制报文协议 50 第7章 Ping程序 61 第8章 Traceroute程序 71 第9章 IP选路 83 第10章 动态选路协议 95 第11章 UDP:用户数据报协议...
《TCP/IP详解》是网络通信领域的一本经典著作,由W. Richard Stevens撰写,共分为三卷,分别详细解析了TCP/IP协议族的核心概念、实现原理以及应用协议。以下是每卷主要内容的详细解读: 卷一:协议 这本书主要介绍...
本书不仅仅讲述了RFCS的标准协议,而且结合大量实例讲述了TCP/IP协议包的定义原因及在各种不同的操作系统中(如Sunos4.1.3、Soloris2.2、AIX3.2.2)的应用与工作方式,这样可以以动态方式讲述TCP/IP的知识,使读者...
在局域网中,当一个节点想要向另一个节点发送数据时,它需要知道对方的MAC地址,这时就会用到ARP协议。 - **RARP (Reverse Address Resolution Protocol)**:与ARP相反,用于将MAC地址转换为IP地址。虽然现在较少...
"tcp/ip协议实验" tcp/ip协议实验是计算机网络领域中的一项重要实验,旨在让学生和从业者深入了解tcp/ip协议的原理和实现。下面是实验的详细介绍: 实验一 以太网数据帧的构成 以太网数据帧是tcp/ip协议中最基本的...