0708

RARP逆地址解析协议

系统引导的时候, 需要知道本机的IP地址,对于有盘系统,直接从磁盘中读取即可,对于无盘系统,需要通过RARP过程知道IP地址。

RARP过程

从接口卡上面读取唯一的硬件地址,然后发送RARP请求,请求某个主机响应该无盘系统的IP地址。

RARP分组格式

大致与ARP类似,不同点:1.帧类型代码为0x80352.请求时操作代码为3,应答时操作代码为4

ICMPInternet控制报文协议

ICMP属于IP层的一种协议。作用是传递差错报文以及其他需要注意的信息。

ICMP类型的IP数据报格式

IP首部(20字节)

ICMP报文

其中ICMP报文的格式如下:

8位类型

8位代码

16位校验和

 

(不同类型和不同类型代码的内容)

ICMP报文的类型

代码有多种,具体可以分为查询报文与差错报文两个大类。

ICMP地址掩码请求与应答

ICMP地址掩码请求用于无盘系统在引导过程中获取自己的子网掩码。

其请求与应答报文格式如下:

类型(17or18

代码(0

检验和

标识符

序列号

32位子网掩码

标识符和序列号字段由发送端任意选择设定,这些值在应答中将被返回,这样,发送端就可以把应答与请求相匹配。

ICMP时间戳请求与应答

ICMP时间戳请求允许系统向另外一个系统查询当前的时间,返回值是自午夜开始的毫秒数。

ICMP端口不可达差错

UDP数据报的规则之一是,如果收到一份UDP数据报而且目的端口与响应的进程不相符,那么UDP就会返回一个ICMP不可达报文。

其一般格式如下:

类型(0

代码(0~15

检验和

未用(全0

 

IP首部(包括选项)+原始IP数据报中数据的前8个字节

之所以返回前八个字节,是因为TCPUDP的前八个字节是源端口和目的端口。

IP首部中包含了协议字段,使得ICMP知道如何解释后面的8个字节。

Ping程序

Ping程序的目的是测试另一台主机是否可达,如果不能达,那么久不能Telnet或者FTP到那台主机。

Ping程序是使用ICMP报文来实现的。

Ping程序的方式是发送一份ICMP回显请求报告给主机,并且等待返回ICMP回显应答数据报。

                       ICMP回显请求和回显应答报文格式:

类型(0或者8

代码(0

检验和

标识符

序列号

 

 

选项数据

                       标识符字段是发送进程的ID号,序列号从0开始,每发送一次新的回显请求就增加1.

Ping程序写法

局域网(LAN)中:ping 主机名;ping  IP地址

广域网(WAN)中:ping 网址

通过Ping程序可以得到往返的时间以及丢包率等信息。

IP记录路由选项

Ping程序-R选项,可以提供记录路由的功能。这属于IP首部中 选项 字段的一个功能。由于IP首部最大值是60字节,首部固定项是20字节,所以选项字段的大小最大为40字节。

在记录路由时,前三个字节用于确定选项的类型,那么就只有37个字节可以用于存放路由地址,IP地址是4个字节,因而最多只能存放9个路由地址。

IP时间戳选项

与记录路由选项类似

在原来三个字节的后面还有两个字节OFFL

OF用于确定是否装满

FL表示装的内容

原文地址:https://www.cnblogs.com/sslblog/p/5654452.html