【网络层】DHCP协议(应用层)、ICMP、IPv6详解

简介: 【网络层】DHCP协议(应用层)、ICMP、IPv6详解

注:最后有面试挑战,看看自己掌握了吗


🌸I could be bounded in a nutshell and count myself a king of infinite space.

特别鸣谢:木芯工作室 、Ivan from Russia


DHCP------DHCP服务器来动态分配IP--------应用层协议----允许地址重用

获得IP的方法------静态配置、动态配置-----------DHCP服务器

即插即用联网服务-------允许地址重用----------支持移动用户加入网络-----------支持在用地址续租

主机发送DHCP发现报文----------DHCP服务器广播DHCP提供报文----------------主机广播DHCP请求报文-----------DHCP服务器广播确认报文

要广播------------同时告知其他服务器

ICMP字段----差错报文、询问报文

差错报文-----终点不可达无法交付--------源点抑制、拥塞丢数据(现在废弃)-------时间超过--------参数问题首部字段出问题------改变路由重定向、

ICMP差错报告报文数据字段-----把IP数据报的前面部分截出来-----然后加上ICMP的前八字节-------装个IP的首部-----变成IP数据报去传输

不发送ICMP差错报文----不对ICMP的差错报告--------对第一个分片报告-----对组播的数据包不发------特殊地址不发

ICMP询问报文------回送请求和回答报文–PING----时间戳请求和回答报文-------Traceroute-----跟踪一个分组从源点到终点的路径-------使用了ICMP时间超过差错报告报文-----用不断增加的TTL来做

traceroute工作原理及详细过程

traceroute是用来侦测主机到目的主机之间所经路由情况的重要工具,也是最便利的工具。尽管ping工具也可以进行侦测,但是,因为ip头的限制,ping不能完全的记录下所经过的路由器,所以traceroute正好就填补了这个缺憾。traceroute的原理是非常非常的有意思,它收到目的主机的IP后,首先给目的主机发送一个TTL=1的UDP数据包,而经过的第一个路由器收到这个数据包以后,就自动把TTL减1,而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生

一个主机不可达的ICMP数据报给主机。主机收到这个数据报以后再发一个TTL=2的UDP数据报给目的主机,然后刺激第二个路由器给主机发ICMP数据报。如此往复直到到达目的主机。这样,traceroute就拿到了所有的路由器ip。从而避开了ip头只能记录有限路由IP的问题。有人要问,我怎么知道UDP到没到达目的主机呢?这就涉及一个技巧的问题,TCP和UDP协议有一个端口号定义,而普通的网络程序只监控少数的几个号码较小的端口,比如说80,比如说23,等等。而traceroute发送的是端口号大于30000(真变态)的UDP报,所以到达目的主机的时候,目的主机只能发送一个端口不可达的ICMP数据报给主机。主机接到这个报告以后就知道,主机到了,所以,说traceroute是一个骗子一点也不为过😃。其详细过程如下:

将传递到目的IP地址的ICMP Echo消息的TTL值被设置为1,该消息报经过第一个路由器时,其TTL值减去1,此时新产生的TTL值为0。

由于TTL值被设置为0,路由器判断此时不应该尝试继续转发数据报,而是直接抛弃该数据报。由于数据报的生存周期(TTL值)已经到期,这个路由器会发送一个一个ICMP时间超时,即TTL值过期信息返回到客户端计算机。

此时,发出traceroute命令的客户端计算机将显示该路由器的名称,之后可以再发送一个ICMP Echo消息并把TTL值设置为2。

第1个路由器仍然对这个TTL值减1,然后,如果可能的话,将这个数据报转发到传输路径上的下一跳。当数据报抵达第2个路由器,TTL值会再被减去1,成为0值。

第2个路由器会像第1个路由器一样,抛弃这个数据包,并像第1个路由器那样返回一个ICMP消息。

该过程会一直持续,traceroute命令不停递增TTL值,而传输路径上的路由器不断递减该值,直到数据报最终抵达预期的目的地。

当目的计算机接收到ICMP Echo消息时,会回传一个ICMP Echo Reply消息。 ————————————————

版权声明:本文为CSDN博主「ghostwritten」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/xixihahalelehehe/article/details/104407443

桥梁作用------差错报告、网络探寻

IPv6----CIDR、NAT治标不治本-----根本上解决地址耗尽----改进首部格式------支持QoS解决延迟和阻塞问题–快速处理转发数据报

IPv6数据报格式-----基本首部40B+(扩展首部+数据)------源地址目的地址都是128位------版本6-----流标签—一组数据报就是一个流的------一系列数据报有相同流标签------有效载荷长度------下一个首部-扩展首部在哪------像个链表指向下一个首部位置---------条数限制TTL

IPV6特点详解-----表示形式、冒号16进制记法------压缩形式有连续0、前面的0都可以删掉------零压缩------连续的0一对冒号取代

地址16B

移除校验和---------------减少每一跳处理时间

即插即用-------------不用DHCP

首部长度必须是8B整数倍----------IPV4是4B整数倍

IPv6只能在主机处分片---------IPV4可以在路由器和主机处分片

附加报文类型-----------分组过大

支持资源与分配---------支持实时影像等要求--------保证一定的带宽和时延

取消了协议字段----------改成下一个首部字段---------放到数据部分

取消总长度字段---------只有有效载荷字段

取消了服务类型字段

IPv6基本地址类型-------单播1:1------多播1:N---------任播1:多中的一个

IPV6过度向IPV4策略

双栈协议------同时启用两者-------如果是路由器,就可以实现V6和V4地址转换---------主机,可同时用

隧道技术--------不同协议数据帧、包---------重新封装通过隧道发送

相关文章
|
3天前
|
算法 安全 Shell
SSH:加密安全访问网络的革命性协议
SSH:加密安全访问网络的革命性协议
33 9
|
2天前
|
网络协议 Linux Android开发
计算机网络:MAC地址 & IP地址 & ARP协议
计算机网络:MAC地址 & IP地址 & ARP协议
26 7
|
2天前
|
算法
计算机网络:CSMA/CA协议
计算机网络:CSMA/CA协议
14 9
|
2天前
|
缓存 算法
计算机网络:CSMA/CD协议
计算机网络:CSMA/CD协议
9 0
|
2天前
|
缓存 编解码 Go
计算机网络:可靠传输协议
计算机网络:可靠传输协议
10 1
|
2天前
|
算法 网络架构
计算机网络:点对点协议PPP
计算机网络:点对点协议PPP
11 0
|
2天前
|
网络协议 程序员 网络性能优化
【网络原理】TCP 协议中比较重要的一些特性(三)
【网络原理】TCP 协议中比较重要的一些特性(三)
9 0
|
2天前
|
缓存 网络协议
【网络原理】TCP 协议中比较重要的一些特性(二)
【网络原理】TCP 协议中比较重要的一些特性(二)
10 0
|
2天前
|
网络协议
【网络原理】TCP 协议中比较重要的一些特性(一)
【网络原理】TCP 协议中比较重要的一些特性(一)
7 0
|
2天前
|
负载均衡 网络协议 安全
【计算机网络】虚拟路由冗余(VRRP)协议原理与配置
【计算机网络】虚拟路由冗余(VRRP)协议原理与配置
8 0