IP协议的相关特性

IP协议的报文结构

如图:


上述的IP协议是ipv4的版本,如上述图中的4位版本号。

现当今的世界仅有两个版本分为ipv4和ipv6。

在这里我以ipv4来介绍IP协议。

IP协议的报头最长为60个字节,最短为20个字节。


如图8个服务类型

这里不做过多的介绍,咱们程序员不需要关注这个。


16位总长度:

整个IP数据包的长度就是报头加载荷,

IP自身实现了拆包组包这样的功能,如果携带的载荷超出了长度上线,IP就会自动拆分成多个数据包每个数据包携带一部分,发送对方后再拼好。

16位这里其实就是64kb,不能超出这个上限。

如果超出上限,如图:


那么如何进行组包的呢?

如图:


8位生存时间:IP数据包要在网络上转发,限制一个数据包在网络上转发的最大次数。

8位协议:这里就描述了载荷部分是哪种协议的数据包。

16位校验和:只针对IP的首部进行校验,载荷部分不关心。


32位源IP地址和32位目的IP地址

这两个是最核心的部分,一个IP地址其实就是一个32位的整数,用点分十进制来表示,表示范围0~42亿9000万。

随着社会的发展,这些数慢慢的就不够用了。在这里呢,我们怎么解决上述的问题呢?

有两种方案:

1)动态分配IP。

2)NAT网络地址转换。


1)动态分配IP

这种方案相对第二种方案来说,是非常简单的,相对的实际的效果也没有第二种方案明显。

其实就是,上网就分配IP,不上网就不分配。

这种机制只能缓解问题,并没有从根本上解决IP地址变多的问题。


2)网络地址转换

首先呢,把IP地址分为两大类。

a)内网ip/私网ip

这里以 10* 或 172.16 - 172.31.* 或 192.168.* 开头的全是私网ip。

b)外网ip/公网ip

除了内网其他的都是。


这里的外网ip必须不能重复,而内网ip在同一个局域网不能重复,不同的局域网下可以重复。

内网访问外网,NAT机制存在以下几种情况:

如图:


接下来呢,我以自己的电脑访问,cctalk客户端为例子,来解释,NAT机制。

开始,我自己的电脑会发送一个ip数据包,里面包含源IP地址(自己电脑的IP地址),源端口(自己的应用程序的端口号),还有目的IP和目的端口(都是cctalk)服务器的,在中间发送的过程中,NAT会进行转换,将源IP改变。发送给cctalk。

如图解:

和运营商的路由器会进行转换,返回的响应也是一样。

如图:

最后返回给我自己的电脑。

相关推荐
发光小北6 小时前
Modbus TCP 转 Profinet 主站网关如何应用?
网络·网络协议·tcp/ip
wanhengidc8 小时前
云手机 高振畅玩不踩坑
运维·服务器·安全·web安全·智能手机
有谁看见我的剑了?8 小时前
linux 添加硬盘后系统识别不到硬盘处理
linux·运维·服务器
易连EDI—EasyLink9 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist1239 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio9 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch10 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
金色光环11 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
数智化精益手记局11 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程