关于 IPv6 你需要知道的 10 件事

本文介绍了IPv6的十大关键特性,包括地址格式、地址识别、地址缩写、环回地址、DNS支持等内容,帮助读者更好地理解IPv6与IPv4的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在过去的几年里,IPv6已经逐渐慢慢地成为主流,但许多IT专业人士在面临IPv6时还手足无措,的确,IPv6和IPv4存在很大的不同,本文为此而写,希望能帮助你消除IPv6恐惧症。

1、IPv6地址是128位十六进制数

IPv4地址是有4个数字位组(总共32位)组成的,IPv6地址的长度时128位,而且是由16进制字符组成的。在IPv4中,每个位组由0-255的十进制数字组成,位组之间由英文的句号隔开,IPv6地址由8个为组组成,每个位组由4个字符的16进制数字组成。

2、很容易识别链路本地单播地址

IPv6为不同的地址类型保留了特殊的地址头,最明显的一个例子就是链路本地单播地址都是以PE80开头的,多播地址都是以FF0x开头,这里的x是一个占位符,可以用数字1-8替换它。

3、支持地址缩写

因为IPv6的地址比较长,往往会包含很多0,如果某个位组的字符全部是0,则这些0可以缩写为一个0,例如,下面的地址:

FE80:CD00:0000:0CDE:1257:0000:211E:729C

可以缩写为

FE80:CD00:0:CDE:1257:0:211E:729C

4、可省略连续的0

如果连续多个位组的字符全部是0,则可以省略掉所有得0,例如,下面的地址:

FE80:CD00:0000:0000:0000:0000:211E:729C

除了可以按第3条介绍的方法缩写外,还可以直接省略掉连续的0,用两个英文冒号代替,操作系统看到这样的IPv6地址后,自然会知道它们之间的字符全是0。因此上面的地址可以简写为

FE80:CD00::211E:729C

5、IPv6的环回地址

在IPv4中,我们知道环回地址是指向本机的一个特殊地址,即我们熟悉的127.0.0.1,IPv6也不例外,同样设计了环回地址,如下:

0000:0000:0000:0000:0000:0000:0000:0001

参考第4条的省略写法,IPv6的环回地址就成了

::1

这看上去是不是不像是一个有效的IP地址啊。

6、不需要传统的子网掩码

在IPv4中,每个IP地址必须要搭配一个子网掩码才能使用,IPv6也使用了子网的概念,但子网ID是直接嵌入到地址中的。在IPv6中,前48 位表示网络前缀,紧接着的16位是子网ID,最后64位才是接口标识,即接口ID或设备ID。如果需要的话,预留给设备ID的位可以借用来表示额外的子网 掩码,但通常是不需要的,因为16位子网和64位设备ID可以提供多达65536个子网。

7、IPv6仍然需要DNS

在IPv4中,主机记录(即A记录)将IP地址映射到主机名,IPv6仍然要使用DNS技术,但IPv6不再使用主机记录,相反,IPv6使用AAAA资源记录,ip6.arpa用于反向主机名的解析。

8、可以跨IPv4网络实现IPv6隧道通信

导致IPv6迟迟得不到有效推进的一个原因就是和IPv4不完全兼容,因此出现了在IPv4网络上走IPv6通信的隧道技术,一个是Teredo, 另一个是6to4,虽然它们的工作方法有点不一样,但基本思想都是将IPv6数据包封装成IPv4数据包进行传输,但通信的两端都需要具有封包和解包的能 力。

9、你可能已经在使用IPv6了

从Windows Vista开始,微软默认就安装了IPv6驱动,并默认启用了IPv6协议,因为这一切都是自动配置的,你可能还不知情,但只有操作系统支持IPv6还不 够,所有交换机和路由器都必须支持,此外,还有一些设计得很差的应用程序将IPv4地址硬编码到程序中了,它们都是阻碍IPv6普及的绊脚石。

10、Windows并没有完整支持IPv6

虽然微软在支持IPv6上表现得很积极,但Windows却并没有完整地支持IPv6,例如,在Windows中,我们以往可以使用UNC(通用命 名约定)访问网络共享文件夹(如//127.0.0.1/C$),但现在却不能使用IPv6这样做,因为Windows看到IPv6地址中的冒号时,它会 把它当做驱动器盘符对待。

为了解决这个问题,微软为IPv6地址转换建立了一个特殊的域,如果你在UNC路径中使用IPv6地址,你必须使用破折号代替冒号,并在地址的末尾 加上.ipv6.literal.net后缀,例如FE80-AB00–200D-617B.ipv6.literal.net。

转自:http://www.oschina.net/bbs/thread/13034


本文是使用 B3log Solo简约设计の艺术 进行同步发布的
<think>好的,我现在要解决用户的问题:在使用SLAAC配置IPv6地址时,是否需要启用IPv6功能,也就是是否需要使用`ipv6 enable`命令。 首先,我需要回忆SLAAC的基本原理。SLAAC是IPv6的无状态地址自动配置,允许设备通过接收路由器发送的RA(路由器通告)消息来自动配置IPv6地址。用户提供的引用中,R1和R2作为IPv6路由器,在接口上启用了`ipv6 enable`,而客户端则通过`ipv6 address autoconfig`来获取地址。这说明客户端接口也需要IPv6功能支持。 接下来,我需要确认`ipv6 enable`的作用。根据引用[1]和[2],这个命令用于在接口上启用IPv6功能。如果接口没有启用IPv6,即使配置了SLAAC,设备也无法处理IPv6数据包,包括接收RA消息。例如,引用[2]中的配置在接口上同时启用了IPv6并设置了自动获取地址。 然后,考虑用户的配置场景。用户提到客户端使用`ipv6 address autoconfig default`,这属于SLAAC配置。根据配置要求,接口必须先启用IPv6,否则自动配置无法进行。因此,`ipv6 enable`是必须的步骤。 可能存在的疑问是,是否有些设备默认启用IPv6,不需要显式配置?但根据引用中的示例,如R1和R2都手动启用了该功能,客户端也明确配置了`ipv6 enable`,所以为了确保兼容性和正确性,显式启用是必要的。 总结:使用SLAAC时必须先在接口上执行`ipv6 enable`,以激活IPv6处理能力,否则无法进行地址自动配置。</think>在使用SLAAC(无状态地址自动配置)时,必须要在接口上启用IPv6功能。以下是关键要点: 1. **基础配置要求** 接口必须通过`ipv6 enable`命令激活IPv6处理能力,否则无法收发IPv6协议报文。例如引用[1]中客户端配置了`ipv6 enable`才能执行`ipv6 address autoconfig`[^1]。 2. **功能依赖关系** SLAAC的地址自动配置依赖于路由器通告(RA)报文,而接收RA报文需要接口具备IPv6通信能力。如引用[2]所示,`ipv6 enable`是执行`ipv6 address auto global`等自动配置命令的前提[^2]。 3. **典型配置结构** ```cisco interface Ethernet0/0 no ip address ipv6 enable # 必须的IPv6功能激活 ipv6 address autoconfig # 基于RA的地址自动配置 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值