知用网
第二套高阶模板 · 更大气的阅读体验

网络层协议栈中IP是什么(进阶教程)

发布时间:2026-01-11 18:10:30 阅读:42 次

网络协议IP是什么

在日常上网过程中,无论是刷网页、看视频还是远程办公,背后都离不开网络通信。而在这套复杂的通信机制里,网络层是承上启下的关键一环,其中最核心的成员就是IP——也就是我们常说的“IP地址”所归属的协议。

IP,全称Internet Protocol,中文叫网际协议,它是网络层协议栈中最基础、最关键的协议之一。它的主要任务是为数据包提供寻址和路由功能,确保数据能从源设备准确送达目标设备。你可以把它理解成快递系统中的“地址填写规则”:发一个包裹(数据包),必须写清楚寄件人和收件人的完整地址(IP地址),中间的各个分拣中心(路由器)才能一步步把包裹转送到正确的地方。

IP在协议栈中的位置

在网络五层模型中,IP位于第三层——网络层。它上接传输层(比如TCP、UDP),下连数据链路层(比如以太网)。当应用数据经过传输层封装后,交给网络层处理,IP就会给这些数据加上自己的头部信息,形成IP数据报。

这个头部里包含的关键信息有:源IP地址、目标IP地址、TTL(生存时间)、协议类型等。这些信息决定了数据该往哪走、还能“活”多久、以及到了目的地后交给哪个上层协议处理。

IP地址的作用

IP地址就像是每台联网设备的身份证号码。IPv4地址目前最常见的格式是四个0~255之间的数字组成,比如192.168.1.100。每一台连接到网络的设备,只要需要与其他设备通信,就必须有一个唯一的IP地址(在局域网或NAT环境下可能有例外,但逻辑上仍需可识别)。

举个例子:你在公司内网用电脑访问官网,你的电脑会先通过DHCP获取一个内网IP,比如192.168.1.100。当你输入网址按下回车,系统会把请求打包,填上目标服务器的公网IP和你自己的源IP,然后交给路由器转发。沿途的每一个网络设备都会读取这个IP头,决定下一跳怎么走。

常见IP版本:IPv4与IPv6

目前广泛使用的还是IPv4,但它只有约42亿个地址,早已不够分配。于是IPv6应运而生,采用128位地址长度,数量级达到了惊人的3.4×10³⁸个,彻底解决了地址枯竭问题。

IPv6地址长这样:2001:0db8:85a3:0000:0000:8a2e:0370:7334,虽然看起来复杂,但支持缩写,比如可以简写成2001:db8:85a3::8a2e:370:7334。现在很多运营商已经默认开启IPv6支持,手机连Wi-Fi时经常同时获取两个地址,就是这个原因。

IP的数据封装示例

下面是一个典型的IPv4数据报头部结构(简化版):

版本  : 4(表示IPv4)
首部长度: 20字节
服务类型: 0x00
总长度  : 数据报总长度(字节)
标识   : 分片标识
标志+片偏移: 用于分片重组
TTL    : 比如64
协议   : 6(TCP)、17(UDP)等
首部校验和: 校验IP头是否出错
源IP地址 : 192.168.1.100
目的IP地址: 203.0.113.45

当数据到达路由器时,路由器会根据目的IP地址查找路由表,决定从哪个接口转发出去。如果目标在本地子网,就直接通过ARP获取MAC地址发送;如果在远端,则交给下一跳网关。

值得注意的是,IP本身是无连接、不可靠的协议。它不保证数据一定能送达,也不负责重传。这些工作交给上层的TCP去完成。IP只管尽力而为地传递数据包,这也是为什么我们说它是“尽力而为”的服务。

在实际运维中,排查网络问题经常会用到pingtraceroute命令,它们底层依赖的正是IP协议和ICMP协议。比如ping 8.8.8.8其实是发送一个ICMP Echo Request数据包,目标机器收到后返回Reply,整个过程全程依赖IP寻址完成端到端传输。