- 阐述IP协议的作用,说明IP报文首部结构中各字段的作用
IP协议的主要作用包括寻址与路由和分段与重组。
寻址与路由:
用IP地址来标识Internet的主机:在每个IP数据报中,都会携带源IP地址和目标IP地址来标识该IP数据报的源和目的主机。IP数据报在传输过程中,每个中间节点还需要为其选择从源主机到目的主机的合适的转发路径。IP协议可以根据路由选择协议提供的路由信息对IP数据报进行转发,直至抵达目的主机。
IP地址和MAC地址的匹配,ARP协议。数据链路层使用MAC地址来发送数据帧,因此在实际发送IP报文时,还需要进行IP地址和MAC地址的匹配,由TCP/IP协议簇中的ARP(地址解析协议)完成。
分段与重组:
IP数据报通过不同类型的通信网络发送,IP数据报的大小会受到这些网络所规定的最大传输单元(MTU)的限制,即最大IP报文的长度就只能等于这条路径上所有物理网络的MTU的最小值。所以IP协议把这个报文的数据部分分割成若干个较小的数据片,组成较小的报文,然后放到物理帧中去发送,这个过程就是分段。重组是分段的逆过程,把若干个IP分段重新组合后还原为原来的IP报文。在目的端收到一个IP报文时,可以根据其分段偏移和MF标志位来判断它是否是一个分段。如果MF位是0,并且分段偏移为0,则表明这是一个完整的IP数据报。否则,如果分段偏移不为0,或者MF标志位为1,则表明它是一个分段。这时目的地端需要实行分段重组。
IP报文中头部部分如下图红框部分所示:
- 版本:占4位,指IP协议的版本。
- 首部长度:表示IP包首部长度,最短20字节,最长60字节。
- 区分服务:8位,用于指明要求网络提供的服务,目前主要包括D、T、R等三种,分别代表延迟、吞吐量和可靠性要求。即使如此,依然没有真正使用。
- 总长度:16位,包括了首部长度和数据长度,最长为65535个字节。
- 标识:16位,数据报计数器,用于区分数据报的唯一标识符。在数据报传向目的地址时,如果将数据报被分为多个片段,那么每个片段都有相同的标识符。
- 标志:占3位,但目前只有两位有意义。最低位记为MF。MF=1即表示后面还有“分片”的数据包。MF=0表示这已是若干数据包片中的最后一个。中间位记为DF,意思是”不能分片“。只有当DF=0时才允许分片。
- 片偏移:12位,表示分片后,该片在原分组中的相对位置。片偏移以8个字节为偏移单位。
- 生存时间:8位,一般记为TTL,用来表示数据报在网络中可通过的路由器数的最大值。若超出最大值,则丢弃数据包,并返回“目标不可达”。
- 协议:8位,指出此数据报使用何种协议,以便目的主机的IP层将数据部分上交给哪个处理过程。
- 首部检验和:16位,只检验数据报首部,不检验数据部分。
- 源地址:32位,发送端主机IP地址。
- 目的地址:32位,接收端主机IP地址。
- IP地址有什么作用?什么是保留地址?指出A、B、C三类IP地址各有哪些保留地址?
IP地址有什么作用?
IP地址最主要用来标识一个Internet的主机,在ARP协议中还可以被用来进行IP地址和MAC地址的匹配。
什么是保留地址?
保留的IP地址段不会在互联网上使用,因此与广域网相连的路由器在处理保留IP地址时,只是将该数据包丢弃处理,而不会路由到广域网上去,从而将保留IP地址产生的数据隔离在局域网内部,因此保留地址也被称为私有地址。
A、B、C三类IP地址各有哪些保留地址?
A、B、C三类IP地址各有哪些保留地址
A类:10.0.0.0 (1个网络)
B类:172.16.0.0—172.31.0.0(16个网络)
C类:192.168.0.0—192.168.255.0(256个网络)
- 某公司有一个C类地址:192.16.12.0,请根据如下要求进行网络规划。
因为每个子网可容纳11台主机,所以需要4位来表示主机,7个子网需要3位来表示。
所以可以分配为:
192.16.12.32,192.16.12.64,192.16.12.96,192.16.12.128,
192.16.12.160,192.16.12.192,192.16.12.224
- 已知IP地址:192.168.23.35/21,请说明其所属网络前缀,并给出该网络前缀所在CIDR地址块的范围
网络前缀:192.168.16.0
该网络前缀所在CIDR地址块的范围:192.168.16.0——192.168.23.255
5.阐述ICMP协议的作用和及其报文结构
ICMP协议的作用:
主要是进行检测网络通信故障和实现链路追踪,如在IP包无法传输时提供报告,这些差错报告可以帮助发送方了解网络中发生了什么问题,以确定应用程序后续操作。
报文结构:
类型 | 代码 | 检验和 |
长度可变部分 取决于ICMP的类型 |
- 类型:占1字节,标识ICMP报文的类型,从类型值来看ICMP报文可以分为两大类。第一类是取值为1~127的差错报文,第2类是取值128以上的信息报文。
- 代码:占1字节,标识对应ICMP报文的代码。它与类型字段一起共同标识了ICMP报文的详细类型。
- 校验和:占2字节,这是对包括ICMP报文数据部分在内的整个ICMP数据报的校验和,以检验报文在传输过程中是否出现了差错。
- 内容部分长度可变,其长度取决于ICMP的类型。
- 在Windows中,实用tracert可以实现路由追踪目的。请说明tracert程序是获得路由的原理,以及说明tracert是如何知道发出的探测报文到达目的主机的。
tracert程序是获得路由的原理:
tracert首先发送一个ICMP报文,其中的TTL为1,报文还包括源地址与目的地址,而后该报文经过路径上的首个路由器,TTL值会自动减一,此时TTL为0,该路由器就会将此数据包丢弃,向源地址返回一个ICMP超时通知,其中宝库数据包的源地址、路由器的IP地址。tracert收到该数据包,也就得到了该路径上的首个路由器地址。而后它在发送TTL为2的报文,第一个路由器会将此数据包转发给第二个路由器,TTL又变为0,重复之前的步骤,直到到达目的地或者确定目标主机不可到达为止。这样就可以达到路由追踪的目的。
tracert是如何知道发出的探测报文到达目的主机的:
当重复之前的步骤直到到达目的主机后,目标主机会返回一个ICMPport unreachable(端口不可达)的消息,当tracert收到这个消息后,就知道目的地到达了。
- IP地址与MAC地址有什么区别?
地址长度的不同
- MAC地址的长度为48位,通常表示为12个16进制数,每2个16进制数之间用冒号隔开。
- IP地址为32位,由用点分隔开的4个8八位组构成,如192.168.0.1就是一个IP地址,这种写法叫点分十进制格式。
寻址协议层上的不同
- MAC地址应用在即数据链路层。数据链路层协议可以使数据通过MAC地址从一个节点传递到相同链路的另一个节点上。
- IP地址应用于网络层。网络层协议使数据可以从一个网络传递到另一个网络上,如ARP协议根据目的IP地址,找到中间节点的MAC地址,通过中间节点传送,从而最终到达目的网络。
分配依据不同
- MAC地址的分配是基于制造商。MAC地址由网络设备制造商生产时写在硬件内部。
- IP地址的分配是基于网络拓朴。IP地址由网络地址和主机地址两部分组成,分配给这两部分的位数随地址类(A类、B类、C类等)的不同而不同。
8. 阐述ARP协议的作用及其报文结构
ARP协议的作用
将IP地址解析为物理地址。在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供该节点的MAC地址。
报文结构
- 硬件类型:发送方硬件接口类型,1为以太网。
- 协议类型:发送方请求解析的协议地址类型,0x0800为IP协议地址。
- 硬件地址长度:发送方硬件地址长度,以太网地址为48。
- 协议地址长度:请求解析的协议地址长度,IP地址为32。
- 操作类型:表示本报文的类型,1为ARP请求,2为ARP响应,3为RARP请求,4为RARP响应。
- 发送方硬件地址:发送方硬件地址的前4个字节和后2个字节分别在不同字段中表达。
- 发送方IP地址:发送方IP地址的前2个字节和后2个字节分别在不同字段中表达。
- 接收方硬件地址:发送方硬件地址的前2个字节和后4个字节分别在不同字段中表达。
- 接收方IP地址:接收发IP地址。
9. 禁用主机的ARP协议后,最直观的现象是什么?为什么?
最直观的现象是该主机将无法连接互联网,而且还不能与其他电脑连接。造成这种现象的原因是因为ARP协议具有将IP地址解析为物理地址的功能,而如果禁用该协议,那么对于IP地址就不能找到其对应的物理地址,也就无法完成与互联网或是其它电脑的连接。
10. 免费ARP有什么作用?
用于检查重复的IP地址
在正常情况下传播的免费ARP将不能收到对应的回应,因为它使用自己的IP地址作为目标地址,但如果发送ARP请求收到回应,则表明本网络中存在与自身IP地址重复的地址,需要进行处理。
用于通告一个新的MAC地址
如果发送方换了网卡,MAC地址会发生改变,发送方就可以发送一个免费ARP,便能够在ARP表项老化前就通告所有主机新的MAC地址。