目录

1. IP协议概述

1.1. 定义

1.2. 功能

1.3. IP网络的结构

1.4. IP头格式

2. IP地址和地址映射

3. IP包转发

4. 其他相关协议介绍


1. IP协议概述

1.1. 定义

IP协议:IP协议是网际互连协议;

工作层次:网络层;

封装:IP头部封装;

特点:不关心、不保证、不维护;不可靠的、无连接的;

TCP/IP协议栈(协议堆叠):ARP、RARP、ICMP、IGMP;

1.2. 功能

1)标识节点和链路-[标记]:分配全局唯一的网络号;

链路-网段;节点-主机;

2)寻址和转发-[确定]:路径;

3)适应各种数据链路-[传递]

MTU(Maximum Transfer Unit,最大传输单元):最大的IP报文,分片、重组;

三层的地址到二层地址的映射

例子:地图、学校找人

1.3. IP网络的结构

“网段==范围”

路由器直连PC机

浪费资源,路由器每个接口都是不同的网段;

1.4. IP头格式

1、长度

20~60个字节不等;

固定+可变;

字节

位(bit):是计算机存储的最小单位,”0100-4位”;

位数:计算机能一次处理数据的大小,32位、64位;Windows命令:dxdiag

字节:计量单位,存储容量,1字节等于8位;例如,字母B;

2、Versrion | IHL | Type of Service | Total Length

Versrion:版本号,4或6;(“ipconfig”);

IHL:头部长度;

Type of Service(Tos):优先级,0~63,数字越大,优先级越高;

场景:广域中的QoS用于流量控制、限制,发送先后顺序、传输率、带宽的大小;

Total Length:总长度(IP头+数据);

3、Identification | Flags | Fragment Offest

Identification:标识符,标识分片来自哪一个数据包;

Flags:标志位;(0是关闭,1是开启)

1:保留;2:标识数据包是否禁止分片;3:标识数据包是否为最后一个分片;

Fragment Offset(片偏移):标识某个分片在整个数据包所处的位置或顺序;收发顺序的重组

补充:

数据包的分片:一个数据包切分成小数据包,进行分散、重组;传输层,网络层;

MTU:最大传输单元;接口收发数据支持的单个包的最大长度;

场景:以太网默认接口MTU1500B;PPPoE默认接口MTU1492B;

为什么要有MTU?

数据传输双方之间的协同同步

4、Time to Live | Protocol | Header Checksum

Time to Live(生存时间):标识数据包还能再经过几个路由器就已经到达生命的尽头;备注:每经过一个路由器进行减1处理,避免产生环路。(“ping”)

Protocol(标识上层协议):封装与解封装,封装传输层头部,IP头部拆掉后是给谁?

Header Checksum:头部校验和,数据包的差错检测;

5、Source Address | Destination Address

源地址、目的地址;

6、Options | Padding

Options:可选项;

Padding(填充项):是4字节的倍数,若不是4的倍数,填充0,达到4个字节的倍数;例如1197就不行

2. IP地址和地址映射

1、背景引入

IP地址==门牌号

IP地址 → 全球唯一 → 专门的机构管理(互联网数字分配机构IANA);

资源紧缺:ip地址43亿 → 2001年耗尽 → 2022年285亿设备 → 2022年人口80亿;

2、IP地址的概述

功能:IP寻址,数据包发送给谁?工作在网络层,逻辑地址;

格式:32位长度,点分十进制(十进制取值范围:0~9)

组成:网络位+主机位;

“网络位长度和数字完全一致的地址属于同一网段”,例如192.168.1.1 和 192.168.1.2

3、IP地址分类

A类:大型全国或国际性企业;例如国际物流公司DHL

B类:大型中型企业,6~65万个主机共享;例如苹果公司

C类:小型组织、家庭用户、学校;例如机房教室;

D类:媒体平台;例如直播平台;

E类:不公开,留给科研机构使用;

目的:是划分不同的网络规模;

二分法思维:网络位越长,主机位越短;

4、特殊的IP地址

① 127.X.X.X

定义:本地环回地址,用于标识本机;

作用:测试本机操作系统中的TCP/IP协议工作是否正常;

场景:127.0.0.1/无网卡

② 主机位全为0的地址

定义:是网络地址,用于标识网段;

例如:

192.168.1.0是网络地址;

172.168.1.0不是网络地址;

③ 主机位全1的地址(二进制的1)

定义:本网段广播地址,标识广播范围;

单播(1对1)、组播(1对多)、多播(1对所有)

④ 全网广播:255.255.255.255

全网广播地址,全部网段的所有人;

⑤ 通配地址:0.0.0.0

通配地址,任意IP地址,条件匹配,可以代表任何一个地址;

例子:斗地主的癞子;

5、公网和私网地址

公网地址:可以在互联网上寻址的地址,全球唯一,需要运营商分配(ISP),付费;

私网地址:局域网内,本地随意使用,无法在互联网上寻址;

自动私有地址:169.254.X.X;用于网段内部通信,无法出网段;

补充说明:电脑网卡,IP地址模式设置自动获取,无DHCP服务器,自动寻址失败,产生169.254.X.X;

3. IP包转发

1、ARP协议

定义:地址解析协议,把IP地址解析为MAC地址;

问题:IP数据包通过以太网发送时,链路层不能识别IP地址;

网络层(32位IP地址)—链路层(48位MAC地址)

工作机制

① 主机A广播请求发送ARP,询问主机B的IP对应的MAC地址;

② 主机B以单播响应回复A主机本机MAC地址;

③ A主机把B主机的IP地址和MAC地址的映射关系写入ARP缓存表;

场景:arp -a

2、IP数据转发原理

知识1:封装,完成3层封装后,进行第2层封装;

知识2:网关(Geteway):本网段出口的IP地址;

知识3:路由器:连接不同网段;交换机:数据发送给PC机;

工作机制:

① 检查本机IP和目的IP是否一致;

② 处理:

如果目的IP和本机IP属于同一网段,会直接查询目的IP的Mac地址,进行封装;

如果目的IP和本机IP不属于同一网段,会查询网关IP地址的Mac地址,由路由器将IP包转发给目的主机,进行封装;

补充:

不同网段之间,能直接用ARP请求吗?

不能,广播不能过路由器,路由器会隔离广播域;

如果路由器不隔离广播,电脑能上网,所有机器都能收到,广播风暴。

4. 其他相关协议介绍

1、RARP协议

逆向ARP:逆向地址解析协议;

根据本机的MAC地址,查询本机的IP地址;

场景:早期的网吧 → 无盘工作站

2、ICMP

定义:互联网控制消息协议

ping命令:测试网络连通性;

tracert命令:路由跟踪;”tracert www.baidu.com”

3、代理ARP

定义:允许一个设备代理另一个设备响应 ARP 请求,常用于在不同的子网之间转发数据包

场景:路由器转发数据包、负载均衡、网络安全;