????声明: 1. 本文为我的个人复习总结, 并非那种从零基础开始普及知识?内容详细全面, 言辞官方的文章 ??????????????2. 由于是个人总结, 所以用最精简的话语来写文章 ??????????????3. 若有错误不当之处, 请指出
IP基础知识
点分十进制 五类网络地址:
主机号全为 1 指定某个网络下的所有主机,?于?播
主机号全为 0 指定某个网络
子网掩码:
掩盖掉主机号,剩余的就是?络号
将主机地址分为两个部分:???络地址和??主机地址
-
判断是否能进行广播(网络号相同) -
更细粒度地划分子网
无分类地址 CIDR:
a.b.c.d/x ,其中 /x 表示前 x 位属于?络号, x 的范围是 0 ~ 32
IP 地址与路由控制
路由控制表中记录着?络地址与下?步应该发送?路由器的地址
127.0.0.1 : 本机回环地址, 本机内的应用程序发生网络通信
0.0.0.0: 代表一个集合, 所有不明的ip地址都可以用0.0.0.0来通配指代, 比如DHCP时, 初始客户端没有自己的ip地址, 源地址就可以使用0.0.0.0来指代
IPv6 相? IPv4 的?部改进:
-
取消了?部校验和字段。 因为在数据链路层和传输层都会校验,因此 IPv6 直接取消了 IP 的校验。 -
取消了分?**/**重新组装相关字段。 分?与?组是耗时的过程,IPv6 不允许在中间路由器进?分?与?组,这 种操作只能在源与?标主机,这将??提?了路由器转发的速度。 -
取消选项字段。 选项字段不再是标准 IP ?部的?部分了,但它并没有消失,?是可能出现在 IPv6 ?部中的 「下?个?部」指出的位置上。删除该选项字段使的 IPv6 的?部成为固定?度的 40 字节。
路由器和交换机的区别?
路由器 工作在网络层, 功能是识别IP地址并根据IP地址转发数据包
交换机 工作在数据链路层, 功能是识别MAC地址并根据MAC地址转发数据帧
IP相关协议
ARP:
ip -> MAC
流程:
- 查询缓存表
- 广播询问, 等待收到应答
- 如果是新的映射, 则加入缓存
RARP:
MAC -> ip
DHCP:
基于UDP
流程:
-
客户端?先发起 DHCP 发现报?(DHCP DISCOVER) 的 IP 数据报,由于客户端没有 IP 地址,也不知道 DHCP 服务器的地址,所以使?的是 UDP ?播通信,其使?的?播?的地址是 255.255.255.255(端? 67) 并且使? 0.0.0.0(端? 68) 作为源 IP 地址。DHCP 客户端将该 IP 数据报传递给链路层,链路层然后 将帧?播到所有的?络中设备。 -
DHCP 服务器收到 DHCP 发现报?时,? DHCP 提供报?(DHCP OFFER) 向客户端做出响应。该报?仍 然使? IP ?播地址 255.255.255.255,该报?信息携带服务器提供可租约的 IP 地址、??掩码、默认?关、 DNS 服务器以及 IP 地址租?期。 -
客户端收到?个或多个服务器的 DHCP 提供报?后,从中选择?个服务器,并向选中的服务器发送 DHCP 请 求报?(****DHCP REQUEST进?响应,回显配置的参数。 -
最后,服务端? DHCP ACK 报?对 DHCP 请求报?进?响应,应答所要求的参数
如果租约的 DHCP IP 地址快期后,客户端会向服务器发送 DHCP 请求报?:
-
服务器如果同意继续租?,则? DHCP ACK 报?进?应答,客户端就会延?租期。 -
服务器如果不同意继续租?,则? DHCP NACK 报?,客户端就要停?使?租约的 IP 地址。
中继代理:
如果 DHCP 服务器和客户端不是在同?个局域?内 路由器?不会转发?播包,那不是每个?络都要配?个 DHCP 服务器?
所以有了DHCP 中继代理, ,对不同?段的 IP 地址分配也可以由?个** DHCP 服务器统?进?管理。
NAT:
把私有 IP 地址转换成公有 IP 地址,
但并不能缓解IPV4地址缺少的压力, 所以有了 NATP , ip不再是唯一网络地址字段, 而是将ip与port结合作为唯一网络地址字段
ICMP:
互联?控制报?协议
功能:
确认 IP 包是否成功送达?标地址、
报告发送过程中 IP 包被废弃的原因和改善?络设置等
类别:
-
「查询报?类型」 ?于诊断的查询消息
-
ping查询目标主机是否可到达 -
询问目标主机的时间戳 -
「差错报?类型」 通知出错原因的错误消息
ICMP实际应用
ping —— 查询报?类型的使?
? 每发出?个请求数据包,序号会?动加 1 。为了能够计算往返时间 RTT ,它会在报?的数据部分插?发送时间。
? 源主机会检查,?当前时刻减去该数据包最初从源主机上发出的时刻,就是 ICMP 数据包的时间延迟
使?了 ICMP ??的 ECHO REQUEST**(类型为** 8 ) 和 ECHO REPLY(类型为 0)。
traceroute —— 差错报?类型的使?
原理:
-
故意设置特殊的 TTL**,来追踪去往?的地时沿途经过的路由器,将 TTL 设置 为 1 ,则遇到第?个路由器,就牺牲了,接着返回 ICMP 差错报??络包,类型是时间超时 。 -
接下来将 TTL 设置为 2 ,第?个路由器过了,遇到第?个路由器也牺牲了,也同时返回了 ICMP 差错报?数据 包,如此往复,直到到达?的主机
发送?如何知道发出的 UDP 包是否到达了?的主机呢?
traceroute 在发送 UDP 包时,会填??个不可能的端?号值作为 UDP ?标端?号(?于 3000 )。当?的主
机,收到 UDP 包后,会返回 ICMP 差错报?消息,但这个差错报?消息的类型是「端?不可达」。
当差错报?类型是端?不可 达时,说明发送?发出的UDP包到达了?的主机
|