问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

IPv6简明指南:从基础概念到实际应用

创作时间:
作者:
@小白创作中心

IPv6简明指南:从基础概念到实际应用

引用
CSDN
1.
https://blog.csdn.net/yihaitao2008/article/details/144105558

IPv6是下一代互联网协议,相比IPv4具有更大的地址空间和更强的网络功能。本文将从IPv6地址的构成开始,介绍如何快速获取IPv6地址及其应用场景,帮助读者全面了解IPv6的基础知识。

从IPv6地址构成开始理解

概览

本文档主要讲解IPv6的一些基础知识,对家用来说,已经足够了。为了让更多普通中文用户看懂,我们将尽可能使用中文来解释某些专用名词,并隐藏一些的技术细节。阅读本文档大约耗时10分钟。主要内容:理解IPv6地址的一些概念,诸如前缀,子网,接口。如果您具备一定关于IPv4的网络知识,那么相信您阅读本文档将能更快理解IPv6。

IPv6带来了什么

如果把IPv6和IPv4做个类比,那您可以这样理解:IPv4就相当于功能机时代,而IPv6就相当于进入了智能手机的时代。在功能机时代,大家相互联系一般靠手机号码,而智能手机的时代,二维码大行其道,我们有非常多的办法保持相互的联系,不再依赖手机号码。IPv6大抵如此,您一定听说过,IPv6的地址空间足够给地球上的每粒沙子都分配一个IPv6地址。这正是它对于普通用户的最大意义。

IPv6地址的结构

IPv6地址的完整结构是这样的:

0000:0000:0000:0000:0000:0000:0000:0000

它是一个128位(bit)长度的数据。在书写时,由8段16进制组成的数字加上一个冒号组成。第一次接触IPv6地址会有一点奇怪,因为IPv4地址是32位(bit)的数据,以每8位加一个点隔离开,因此它通常是以10进制来表示,比如1.2.4.8。但是IPv6地址是16进制的,所以如果以10进制来表示会非常长,没有人会那么做。没关系,很快就会习惯。

看着如此长的IPv6地址,确实有理由相信IPv6可以给每一粒沙子分配一个地址。不过,这么长的IPv6地址,在实际传输时,可能会占用更多的带宽。为了解决这个问题,IPv6地址的结构可以被缩短。

让我们来看看YouTube的IPv6地址:

2404:6800:4004:801::200e

这个YouTube的IPv6地址明显比开头的更短!因为这个地址已经被缩短了,如果要把它扩展为完整的IPv6地址,那么应该是这样:

2404:6800:4004:0801:0000:0000:0000:200e

一个IPv6地址中间可能包含很长的一段0,可以把连续的一段0压缩为::。但为保证地址解析的唯一性,地址中::只能出现一次。另外,每个冒号之间的数据,如果前面是0,那么可以省略,比如:801:的完整表示是:0801:。当全部是0时,则可以只用一个0表示,比如:0000:可以表示位:0:

前缀

IPv6地址很长,可以存储很多部分,为了方便规划功能,设计者将IPv6地址划分成了两个部分,分别是前缀和后缀。现在我们先来看看前缀。

IPv6地址的前缀是前48位(也就是前3段)的部分,拿YouTube的IPv6地址来说,前缀就是2404:6800:4004

前缀的功能是用来区分不同的网络,比如网络A和网络B,网络A的前缀是2404:6800:4004,网络B的前缀是2404:6800:4005。通常这是运营商网络负责的领域。

另外,前缀也称为站点前缀,它有点像是IPv4时代的公网IP地址,尽管这么比喻并不恰当。为什么这么说呢,由于IPv4只有32位,所以IP数据包中用于标记IP地址预留的空间到此处2404:6800就已经用完了,没有更多的空间用于标记到具体设备。这一问题在IPv6中不再存在,因为IPv6预留了更多的空间。

子网

前缀之后的那一段16位的数据,用于标记子网ID。子网ID通常是您家庭网络的部分(家庭网络的ID号,如果以此为界最多可以分配65535个家庭使用)。

在IPv4的时代,这就是您家庭路由器的网络的部分,通常已经进入到了NAT的部分,您家中的其它网络设备都只能在一个公共的IP下活动,可悲的是这个公共的IP可能还不是公网IP,可能只是运营商内部的内网IP。

NAT的缺点这里就不多谈了,大家应该深有体会。在IPv4时代,受限于协议这是无法避免的问题,而在IPv6的年代,就不存在这个问题了。毕竟每个设备都能分到唯一的公网IP地址。

接口

整个IPv6地址的长度一共128位,前64位通常用于IPv6地址的前缀和子网,而后64位则通常作为接口。通俗的讲,这用于标记到底是哪个设备,比如您的家庭网络的路由器,还是您的手机,又或者是电脑。

总结

一张图来总结IPv6地址的常规套路。总的来说,IPv6的地址大概就是,把IPv4时代IP+家庭局域网专用子网+设备MAC全部揉到一起,以便于一次性全部传输完。可以理解到,IPv6本质上是IPv4的升级版,为了解决地址空间不够的问题,规划了充足的空间。

在这张图中,笔者的IPv6地址是:

240e:414:b00:5af5:dd21:505a:a881:6a7

请同学们根据上节课的内容,分析一下这个IPv6地址。其站点前缀是240e:414:b00,子网ID是5af5。在后面的则是接口地址dd21:505a:a881:6a7。是不是很令人意外,IPv6就在身边。

1分钟获得你的首个IPv6地址,及其应用

获取IPv6地址的最有效方式

尽管IPv6目前在中国已经大面积铺开应用,不过家用有线宽带部署情况不是很乐观,具体原因下一章节解释。出人意料的,移动蜂窝网络已经基本完成了IPv6的部署,因此目前最简单,最快速的获取IPv6地址的方式,就是用您的手机开个热点。当您的电脑连上手机的热点后,您可以在任务管理器(win10以上系统)看到分配到了IPv6地址。

在这张图中,笔者的IPv6地址是:

240e:414:b00:5af5:dd21:505a:a881:6a7

请同学们根据上节课的内容,分析一下这个IPv6地址。其站点前缀是240e:414:b00,子网ID是5af5。在后面的则是接口地址dd21:505a:a881:6a7。是不是很令人意外,IPv6就在身边。

IPv6网络如何运行

上个章节讲到,家用有线宽带的部署情况不是很乐观,这里有一个比较通俗易懂的解释。如果把网络之间互相连接电路比作高速公路,那么IPv4数据包和IPv6数据包则分别是小型箱车与大型卡车。在互联网建设早期,由于只有IPv4数据包传输,因此为了支持其数据包的传输,各个网络节点都建设了支持小型箱车的装卸平台(协议支持),这些网络节点可能是路由器,也可能是您的电脑。但是,IPv6大卡车来了之后,尽管它可以上路,但是在某些网络节点由于缺乏装卸平台(协议支持),它无法抵达下一个网络节点。因此,如果要使整个网络都能完整支持IPv6,情况则变得复杂许多。最大的阻碍在于老旧设备无法通过软件升级去支持IPv6,只能更换,耗资巨大。家庭网络除了要更换连接各个家庭的汇集设备,还要挨个更新支持IPv6协议的猫。如果用户家里还有单独的路由器,则要求这些路由器支持IPv6。阻力重重。在现阶段,最好的办法仍然是IPv4网络和IPv6网络同时运行,以实现最大兼容。因此运营商目前的策略是旧的线路不管,新线路则支持IPv6。

IPv6地址是怎么分配的

思绪回到刚刚到手的IPv6地址,现在可以玩了。赶紧到ipv6-test.com测试一下网络能不能用。嗯。看样子是没问题。这里重点讲一下SLAAC这个标签。在IPv6时代,IPv6地址的分配方式主要是两种:

  • 有状态分配。即传统的分配方案,与IPv4时代的路由器内网地址类似,这是由路由器生成一个地址给设备,有时间限制。甚至可以理解为动态IP地址。
  • 无状态分配,通常就是指SLAAC。SLAAC是一种很简单好用的配置方式:由于在IPv6地址中,前缀和子网都是确定好的,如果路由器支持无状态分配,。通常情况下的分配方式是,系统会使用设备的MAC地址(物理地址)来作为其IPv6接口的一部分。

IPv6的应用场景

看样子一切都准备就绪,可以起飞了。更快的BT速度,更好的联机体验!然而。在稍早前的章节说到,为了保持最佳兼容性,目前现阶段的互联网IPv6和IPv4这两个网络是同时运行,并且互相连接。因此并不是说有了IPv6就万事无忧了。举个例子:玩P2P游戏,虽然您已经连接到了IPv6网络,但是如果您的队友在IPv4网络,尽管您们通过IPv4-IPv6间的桥接转换能勉强互联,但是就又回到了有NAT的时代。IPv6等于没用。究其原因,首先,在各个系统上运行的应用程序,很多早期开发完成的应用程序并不支持IPv6,直接的结果就是无法在IPv6网络下工作。此外,由于网络架构发生了改变,要支持到IPv6,甚至是需要额外开发专门的模块来支持,比如Linux上的防火墙,是单独的一个ip6tables在负责管理。似乎一切都变得复杂了很多。因此就实用性而言,目前IPv6的实用性还没办法与IPv4对等。作为普通用户,我们期待的是能完全取代IPv4,不去做任何额外的工作。希望能等到那天的到来。同时接入IPv4和IPv6的感觉就像家里拉了电信联通,以为是双倍的带宽,双倍的快乐。结果,只有一条线路能干活。这种感觉您有过吗。😂。

IPv6子网

子网是什么

本章节内容会稍微复杂一些,不过我们仍然努力隐藏技术细节,保证普通用户能读懂这些内容。请记住,您不需要了解技术细节。在过去的年代,如果您要寄送一封信件(物理)给某人,有时候,信使无法直接将信件寄到收件人手上,因为收件地址可能是在某个单位或企业,信件只能抵达门卫处,然后再由其他人转交给您,或者您自己去取。这就是子网。对于互联网,各个设备都是通过物理链路连接的,数据需要通过层层子网进行传输。

子网

其实无论是IPv6还是IPv4,网络地址的组成都是基本一样的,其原理都是由大至小,呈现出树形结构。用这两张图来帮助理解。家庭中的各路设备,通过路由器(WiFi或者电缆)相互连接到一起,形成一个子网。

然后,各路家庭网络再通过光纤或者电缆,连接到电信运营商在每个临近区域部署的路由器上,再形成一个子网。各个电信运营商的路由器,再相互连接,接入到每个省份的省级运营商的路由器上,再形成一个子网。并同时,与其它运营商(电信,联通,移动,balabala)的路由器相互连接,形成互联网。圆环套圆环,编织成了现在您正在使用的互联网。

IPv4与IPv6的子网处理方案

如果某个设备的数据需要发送给另外一个设备,那么必需要知道其目的地,也就是目标IP地址。它想要收到目标设备的回信,也需要把自己的IP地址带上,这样目标设备才能知道给谁回信。在IPv4时代,由于网络地址的规划长度有限,在电子设备日益增长的时代,没有办法给每个设备都分配一个唯一的地址。这就相当于,您想要在信封上填写收件人的地址时,发现写不满。聪明的工程师发明了一种方式,将有限的空间重新组合,使得这有限的IPv4地址得以服务于现阶段全球数以亿计的设备。那就是:网络地址转换和子网掩码。网络地址转换和子网掩码可以让不具备公网IP地址的设备,正常与互联网上的设备通信。即便目标设备也不具备公网IP地址。不过,即便有这两种技术加持,也无法解决日益增长的设备数量对网络地址的需求。因此IPv6的应用总算开始推进了。在IPv6中,由于充足的网络地址规划,不再需要网络地址转换和子网掩码。

进阶:IPv4和IPv6的子网

进阶内容不可避免地使用一些专业术语,可选阅读。部分属于在文中如果没有解释,请您自行搜索,对于理解内容来说是必要的。

IPv4

我们都知道IPv4的地址长度是32位,在IPv4互联网结构中,会有一个网关,子网掩码,IP地址三大要素,一起组成了子网。子网掩码子网掩码与IPv4地址的长度一样,都是32位(很多初学者会混淆,不知其所以然,以为是IPv4地址),需要与IPv4地址互相组合使用,单独存在时没有意义。它的用途主要是辅助计算子网范围。简单的说就是一个切糕刀子,在32位长度的IPv4地址中切一刀,左边是网络号(类似于IPv6中的前缀),右边就是子网。公网下的子网通过子网掩码,有限的地址空间下,被规划成了多个类型的网络,每个类型的网络都通过子网掩码来确定网络的规模(子网数量和主机数量)。网络规模越大,主机数量越多,而网络规模越小,主机数量则越少。总而言之就是挺复杂的,还是别想太多了。家庭或企业下的子网,以及网络地址转换由于公网IPv4地址有限,无法为每一台设备都提供公网IPv4地址,但是通信又需要IPv4地址,因此互联网地址管理机构将一部分IPv4地址划分出来,作为内部网络的专用地址。这可能会减少了一些可用的公网IPv4地址,但是通过网络地址转换技术(NAT),可以支持更多的设备接入到互联网。比如192.168.1.1/24这个子网。这是家庭常用的子网地址范围。一般路由器作为网关占用了192.168.1.1这个IP,其余的IP分配给了路由器的网关下的设备。这个子网可以支撑254个设备接入到网络。这种方式虽然暂时解决了IPv4地址不够用的问题,但是增加了互联网的复杂度,降低了效率,增加了管理成本,属于治标不治本。

IPv6

有不少用户在初次接触IPv6时会有一些不习惯,因为在网络管理配置界面中,您只能看到一个IPv6地址(或者还有一个临时IPv6地址),没有子网掩码的概念。这并不是说就没有子网了,该切还是要切,只不过不用子网掩码来切,而是用前缀+子网ID来切。IPv6切割子网用CIDR格式来表示,比如2001:db8::/32。大多数情况下,您的家庭网络一般会分到/64/56的子网。这些信息由系统与IPv6路由器自动协商管理,您不需要自己去管理。CIDR(无类别域间路由)遵循CIDR规则的地址在尾部有一个以斜线分割的数字,以表明前缀长度(以位为单位)。CIDR有一个很好理解的方法。比如2001:1db8::/32这个子网,就是从前往后数8个字符(不包括冒号),之后的地址范围都是属于2001:1db8::下的子网。比如2001:1db8::1234是属于2001:1db8::/32这个网络下的IPv6地址。由于子网内的每个设备都有了公网IPv6地址,不再需要做网络地址转换,大大降低了管理难度。不需要借助任何额外的手段。

总结

简单来说,就是进步和舒适。在IPv6中,很多配置都自动化了,不需要自己管理(对于普通用户来说)。IPv6很好的解决了IPv4的诸多问题,子网也能够更好的支持更多的设备,更好的管理互联网。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号