惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
Cisco Talos Blog
Cisco Talos Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
D
Docker
S
SegmentFault 最新的问题
博客园 - 聂微东
美团技术团队
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
GbyAI
GbyAI
L
LangChain Blog
Vercel News
Vercel News
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
T
Threat Research - Cisco Blogs
T
Threatpost
Scott Helme
Scott Helme
T
Tailwind CSS Blog
Latest news
Latest news
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
The Register - Security
The Register - Security
罗磊的独立博客
P
Proofpoint News Feed
腾讯CDC
S
Schneier on Security
雷峰网
雷峰网
A
About on SuperTechFans
T
Tenable Blog
F
Full Disclosure
Cyberwarzone
Cyberwarzone
博客园_首页
有赞技术团队
有赞技术团队
K
Kaspersky official blog

文章列表

阿里云部署ZeroTier Moon节点踩坑记录 新NAS到货啦!飞牛联名NAS开箱! 飞牛0day漏洞,请立即升级 128G系统盘克隆至1T盘全攻略 解决个人开发者多端体验难题,一个PWA搞定 视频直播虚拟设备配置指南 文件类型判断的三重层次 每日幸福😍No.25 忙完这一阵…
IPv6到底咋个事儿?
dadamelon · 2026-01-01 · via

最近公司搬了新办公区,为相应号召,抛弃ipv4全面拥抱ipv6,于是简单研究了一番,发现一些有趣的事。

IPv4 地址长度为 32 位,总数约为 43 亿个。

IPv6 地址的长度是 128 位,地址总数有 2128 个,数值展开后约等于 34 万亿亿亿亿 个。

IPv6 地址总数是 IPv4 的足足 296 倍,这个数量足以给地球上每一粒沙子分配数万亿个独立的 IPv6 地址。

IPv4 和 IPv6 是两套并行的网络协议,一台设备可以同时配置 IPv4 和 IPv6 地址(双栈模式),但这两个地址之间没有内在关联,只是同时绑定在同一个网络接口上。

为了解决 IPv4 和 IPv6 网络互通的问题,人们设计了一些过渡技术,实现了 “伪映射”,但这不是协议本身的对应关系:

IPv4 映射的 IPv6 地址:一种特殊的 IPv6 地址格式,格式为::ffff:w.x.y.z,其中w.x.y.z 是 IPv4 地址。例如 IPv4 地址 192.168.1.1 对应的映射 IPv6 地址是 ::ffff:192.168.1.1。这种地址仅用于双栈主机内部的协议转换,并非全局有效的 IPv6 地址。

NAT64/DNS64:通过网关设备将 IPv6 网络的流量转换为 IPv4 流量,实现 IPv6 主机访问 IPv4 资源,但这是网关层面的地址转换,不是地址本身的对应。

(二)IPv6地址的格式

IPv6 标准格式为 8 组 16 位十六进制数,组间用 : 分隔,例如

fe80:0000:0000:0000:0000:0000:0000:0001

由于这种地址规律,为了简化地址记忆,可以使用零压缩语法连续≥1 组全零段可用 :: 替代,且整个地址仅能使用一次 ::(避免歧义,确保能还原为 8 组)

例如:

  • 原始地址:fe80:0000:0000:0000:0000:0000:0000:0001

  • 前导零省略后:fe80:0:0:0:0:0:0:1

  • 零压缩后:fe80::1(最简洁写法)

为什么不沿用 IPv4 的点号(.)?

点号的用途早已被占满:它已经被赋予了三层含义:

  1. 十进制计数法标识

  2. IPv4 字节段的边界分隔符

  3. DNS 域名层级分隔符(例如 example.com

使用点号,可能会引起歧义。

为什么不用逗号(,)?

逗号是列表分隔符,而非结构化分隔符:

  • 编程语言中:a, b, c(用于分隔多个独立元素)

  • 配置文件中:用于标记值列表

  • 逗号分隔值文件(CSV)的核心分隔符

除此之外,逗号还有几个致命问题:

  • 容易被人眼忽略

  • 常被解析程序过滤剔除

  • 存在地域使用差异(在许多国家,逗号是十进制小数点

为什么偏偏是冒号(:)?

早在 IPv6 诞生之前,冒号就有了广泛应用:

  • MAC 地址:aa:bb:cc:dd:ee:ff

  • 时间格式:时:分:秒(HH:MM:SS)

  • 比例与命名空间标识也会用到冒号

符合使用惯例,是有历史和技术原因的,而非拍脑袋定的。

(三)过渡与阵痛

IPv6作为相对较新的标准,各大操作系统为了兼容 IPv6 均采用过一些过渡措施或临时适配方案,核心都是在不彻底重构旧系统的前提下,解决 IPv6 与 IPv4 共存、格式冲突、协议互通等问题。

微软UNC为适配IPv6推出临时机制

UNC(通用命名约定)是 Windows 系统中访问局域网共享资源的标准路径格式。

核心语法为:\\服务器名或IP\共享文件夹\子文件

比如访问局域网内 IP 为 192.168.1.1 的共享文件夹 Docs,路径就是 :\\192.168.1.1\Docs

问题就出在:UNC 路径的语法规则里,不允许出现冒号(:—— 冒号在 Windows 中有特殊用途,比如用于区分驱动器盘符(C:\)、端口号等。

微软的解决方案是做一层地址转换映射,创建了 ipv6-literal.net 这个特殊的伪域名后缀,专门用来兼容 IPv6 地址的 UNC 路径访问。

把 IPv6 地址中的冒号(:)全部替换成连字符(-),再加上后缀 .ipv6-literal.net。示例:IPv6 地址 fe80::1 → 转换后为 fe80--1.ipv6-literal.net