互联网下的隐藏"坐标":IP 地址到底是什么?
哈喽,大家好呀,我是呼噜噜,当我们与远方的友人发消息沟通,用手机远程控制家中空调开关机,快递柜精准识地别出我们手机里的取件码...
这些我们习以为常的生活日常,隐藏这一个个无形的"地址"
,在背后默默地支持这些跨越空间的联系。这些地址在网络中就是IP 地址,本文我们介绍一下什么是 IP
地址
什么是 IP 地址?
IP 地址
(Internet Protocol Address)是分配给网络设备
的唯一标识符,用于在网络中识别、定位设备
并实现通信。我们可以把 IP 地址比作一个门牌号
或者邮政编码
,每家每户都会有一个门牌号、邮政编码
,而且是唯一的,只有地址唯一,邮递员才能准确地把我们的"包裹"送到
所以当一台设备(比如你的电脑、手机、服务器、打印机等)连接到网络时,它都会被分配一个唯一的 IP 地址 ,在全球范围内都是独一无二的。设备只有接入网络后,其IP地址才是唯一的
IP 地址的作用,主要有以下3个方面:
标识网络中的设备, 区分网络上不同的设备
定位设备,提供设备在网络拓扑中的位置信息
协助路由器进行网络数据包转发,IP地址可以帮助路由器,找到正确的目的地,确保信息能准确地从源头传送到目标设备
IP 地址的类型:IPv4 和 IPv6
目前广泛使用的 IP 地址有两个版本:IPv4
和 IPv6
,接下来我们来分别了解一下
IPv4
IPv4
是目前最广泛使用的 IP 地址版本 ,其地址格式:由 32 位
二进制数组成,通常分为 4 组,每组8位(1个字节),比如IP地址11000000.10101000.00000001.00000001
但是你有没有发现问题,这些长串的二进制数,对于计算机来说不是问题,因为计算机的底层就是二进制,但是对于人类来说就很不友好了,非常像一串"乱码"
所以在1982年提出Ipv4时,为了利于人类阅读,会将其进一步转化成点分十进制;也就是将每组转换为一个0到255之间的十进制数
,并用点.
分隔。
那么11000000.10101000.00000001.00000001
对应的点分十进制就是192.168.1.1
因为8位二进制的最大值是 255
,所以IPv4
它由四个 0 到 255
之间的数字组成,每个数字之间用点(.
)分隔
另一方面由于IPv4 地址,是32位
的。那就意味着最大的地址2^32
个,大约是 43
亿个地址。尽管 43 亿听起来很多,但是上世纪80年代后期,随着互联网的飞速发展,网络设备数量的激增
和** ipv4地址段分配不均**(欧美国家IP地址多到泛滥,但发展中国家则少的可怜),导致IPv4地址在2010年代初期就已基本耗尽!
虽然后来技术的发展(如子网、NAT
)在一定程度上缓解了问题,但未能解决根源问题。
这就是为什么我们需要 IPv6
的主要原因!
IPv6
为了彻底解决 IPv4 地址枯竭问题,而设计的下一代 IP 地址: IPv6
, 它使用更多的数字和字母组合,能够提供几乎无限的地址
其地址格式的表示形式:由 128 位
二进制数组成,分为 8
组,每组 4
位十六进制数
,用冒号分隔
,即 “冒分十六进制”。例如:2001:0db8:85a3:0000:0000:8a2e:0370:7334
。这个已经不是人类能记得住的了~
它有一套简化规则,每组前导零可省略,如 0000 可简写为 0
、连续的全零组可替换为 :: 但只能一次
,比如2001:0db8:85a3:0000:0000:8a2e:0370:7334
可以简化成2001:0db8::8a2e:0370:7334
。
由于 IPv6 地址是 128 位
的二进制数字。这意味着它有2^128
个可能的地址,大约 340 涧(亿亿亿亿)
个。这是一个极其庞大的数字,远超地球上的沙粒数量!
我们基本上,可以说 IPv6 地址是取之不竭,用之不尽的。除了数量巨大之外,IPv6 还带来了一些其他改进,比如更高效的路由、更好的安全性以及对移动设备的支持。
本文初步介绍了 IP 地址的基本概念,以及 IPv4 和 IPv6 的核心特点。作为网络通信的基础,IP 协议背后还有诸多值得深挖的技术细节,后面我们会逐步深入地讲解IP协议,每周都会更新干货,不想错过就点个关注吧!
作者:小牛呼噜噜
本文到这里就结束啦,感谢阅读,关注同名公众号:小牛呼噜噜,防失联+获取更多技术干货