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

推荐订阅源

F
Fortinet All Blogs
MyScale Blog
MyScale Blog
Microsoft Security Blog
Microsoft Security Blog
量子位
B
Blog
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
The GitHub Blog
The GitHub Blog
T
The Exploit Database - CXSecurity.com
N
News | PayPal Newsroom
Cloudbric
Cloudbric
A
About on SuperTechFans
AI
AI
Hacker News: Ask HN
Hacker News: Ask HN
S
Schneier on Security
Recent Commits to openclaw:main
Recent Commits to openclaw:main
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LINUX DO - 最新话题
T
The Blog of Author Tim Ferriss
Simon Willison's Weblog
Simon Willison's Weblog
有赞技术团队
有赞技术团队
H
Heimdal Security Blog
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏
D
Docker
Security Archives - TechRepublic
Security Archives - TechRepublic
N
News and Events Feed by Topic
IT之家
IT之家
Know Your Adversary
Know Your Adversary
N
Netflix TechBlog - Medium
T
Tailwind CSS Blog
B
Blog RSS Feed
C
Cybersecurity and Infrastructure Security Agency CISA
C
Cisco Blogs
博客园 - 叶小钗
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LangChain Blog
The Hacker News
The Hacker News
Y
Y Combinator Blog
I
Intezer
The Register - Security
The Register - Security
F
Full Disclosure
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler

郭泽宇的博客 (@ZE3kr)

Hertz 租车被讨债总结,我起诉讨债公司的经历 | ZE3kr 在 iPad 上运行 macOS? (with Jump Desktop) Vision Pro 首发体验 | ZE3kr 低价冷数据存储方案 - Lightsail + S3 + Nextcloud 实现 $1/TB/月 谈一谈阿里云香港的宕机 | ZE3kr 云服务推荐及选择指南 | ZE3kr 从零开始建立自己的域名和企业邮箱 | ZE3kr 本站改版后的架构与优化——Hexo,分区解析,CDN,图像压缩等 | ZE3kr 毫米波 5G 有多快? 2000Mbps! 快来看看你的 iPhone 是否支持毫米波 Mac mini 有什么用?组建家庭服务器! | ZE3kr Magic Keyboard (妙控键盘) for iPad Pro 使用体验 自建 PowerDNS 进阶:分区解析,dnsdist,Lua 记录 | ZE3kr SSD U盘、Windows To Go 与 Mac WordPress 5.0 更新现已发布,全新编辑器,全新主题 | ZE3kr Azure DNS、NS1、Constellix,三家海外 GeoDNS 服务商对比 | ZE3kr Mac 上一些精致实用的软件推荐 | ZE3kr 谈谈数据备份 | ZE3kr DNSSEC 简介,签名的工作原理 | ZE3kr Cloudflare Argo 与 Railgun 对比测试,CDN 加速的黑科技 几个免费的服务器监控服务推荐 | ZE3kr 国内外几家全站 CDN 对比 | ZE3kr 2017 年,再看 SSL 和 HTTPS 关于建站和服务选购的一些建议 | ZE3kr DNS 域名解析系统详解——基础篇 | ZE3kr 修复 WordPress 2017 主题中奇怪字形的 Bug 使用 AMP 构建超快的移动页面 | ZE3kr 利用 GCE 建立一个 Anycast 网络,超快的香港节点,Google Cloud CDN Cloudflare 的全新功能体验——Load Balancing、Rate Limiting | ZE3kr Google Compute Engine 新手教程及使用体验 | ZE3kr 用回 WordPress 自带评论系统 | ZE3kr 使用免费 Let's Encrypt 实现 ECDSA/RSA 双证书 自建 PowerDNS 智能解析服务器 | ZE3kr 在自己服务器上安装 GitLab,代替 GitHub! | ZE3kr 几个 WordPress 的加速建议 | ZE3kr CloudXNS、Route 53、阿里云解析等 DNS 服务的全面对比 | ZE3kr 从沙州中学到家 | ZE3kr 从家到沙州中学 | ZE3kr 谈谈视频在互联网上的流播 | ZE3kr 佳能发布新 APS-C 机型 EOS 80D,强悍视频录制、全新的对焦系统和 CMOS WordPress 上的几个推荐安装的插件 | ZE3kr Matomo 与 WordPress 配合使用,建立强大统计系统 | ZE3kr TL-PA500 电力猫,部署无线局域网集群 | ZE3kr 为何要使用一个 CDN 服务? | ZE3kr 静态网页的优与劣 | ZE3kr 全面 HTTPS 时代即将到来 | ZE3kr Withings Activité Pop 智能手表推荐,睡眠跟踪、运动记录、智能闹钟 | ZE3kr DELL P2415Q 4K 显示器推荐 | ZE3kr 好搜所做的恶心事 | ZE3kr 使用 srcset + sizes 属性与 w 标识符解决一切响应式图片问题 Eyefi Mobi 立刻让你的相机支持 Wi-Fi | ZE3kr 移动优先 – 速度 | ZE3kr MacID 让 iPhone 指纹解锁苹果电脑 | ZE3kr ProCamera – iPhone 照相软件推荐 | ZE3kr 移动优先 – 起源 | ZE3kr
如何配置以实现纯 IPv6-Only 网络访问 | ZE3kr
2016-08-09 · via 郭泽宇的博客 (@ZE3kr)

在今年 5 月 4 日,Apple 就开始要求新的应用程序支持 IPv6 DNS64/NAT64 网络,这意味着苹果开始力推 IPv6 网络,在苹果的官网上就有介绍一些 IPv6 的优势,主要来说就是对移动网络更加友好,并能提高一些性能,减少一些传输上的开销。 最近,我也将我的所有服务器全面部署 IPv6,完全支持 IPv6-Only 网络。

什么是 IPv6-Only 网络 严格上来讲,IPv6-Only 网络下只能连接上 IPv6 地址,这也就意味着 DNS 缓存服务器也必须是 IPv6 地址,只能连接上支持 IPv6 的服务器。如果要解析一个域名,这个域名本身及其所属的根域名的 DNS 服务器也必须统统支持 IPv6。总之,在整个过程中不存在 IPv4。所以想要支持 IPv6-Only 网络,几乎需要在所有的环节下功夫。

使用支持 IPv6 的根域名和 DNS 服务器

为了支持 IPv6,首先你所使用的根域名必须支持 IPv6,好在大多数根域名都支持 IPv6 了。从这里可以看到已经有 98% 的根域名都支持了 IPv6。 一般大家还是喜欢使用第三方的 DNS 而不是去自建,那么这就需要给自己使用支持 IPv6 的 DNS 服务器。好在也有不少 DNS 服务器支持 IPv6 了,比如 CloudFlare、OVH、Vultr、DNSimple、Rage4 等等大多数国外 DNS 解析,哦,除了 Route53;国内目前就见到了百度云加速、sDNS 的 DNS 解析支持,其他常用的 CloudXNS、DNSPod、阿里云等等都不支持。 检测根域名或者是某个域名所使用的 DNS 服务器是否支持 IPv6,只需要执行指令,替换其中的 <domain> 为根域名(如 com)或者任意一级域名(如 example.com):

1
$ dig -t AAAA `dig <domain> ns +short` +short

然后查看输出的 IP 中是否全是 IPv6 地址,如果什么也没有输出,说明 DNS 服务器不支持 IPv6。 正确配置 IPv6 的例子:

根域名 com 和一级域名 example.com 都正确配置了支持 IPv6 的 DNS 服务器
根域名 com 和一级域名 example.com 都正确配置了支持 IPv6 的 DNS 服务器

如果想要自建 DNS 服务器,可以参考自建 PowerDNS 方法。 如果你的根域名不支持 IPv6,那么你可以联系根域名那里让他们去支持,或者换一个根域名。如果你的一级域名不支持 IPv6,那就联系 DNS 解析商让他们支持,或者直接换走。

让网站、API 等服务器支持 IPv6

方案一,直接配置 IPv6

也就是让你自己的服务器支持 IPv6,这需要联系你的服务器提供商,让他们给你分配一个 IPv6 地址,如果还是不支持 IPv6,那么可以使用 IPv6 Tunnel Broker,比如 Hurricane Electric 的免费 Tunnel Broker,这样通常没有服务商给你的原生的 IPv6 好,但是在服务商支持原生 IPv6 之前只能先用着。Tunnel Broker 相当于建立在网络层(第三层)上的代理,需要你的服务器的操作系统支持,而且服务器必须要有一个固定的 IPv4 地址。为了使用它你需要在系统里重新配置网卡(所以共享主机就没戏了),然后就能按照正常方法使用 IPv6 了,简直零成本支持 IPv6。注意,主机到 Tunnel Broker 传输是明文,不过只要应用程序都使用安全的协议(如 HTTPS、SMB、SFTP、SSH),这不是问题。

很可惜,我目前的两个服务器暂时都没有原生的 IPv6 可以用,于是只能用 Tunnel Broker 了,使用后发现虽然是免费的,但是效果也不错:下载时似乎没有限速,我 100M 的独享带宽在原生的 IPv4 上下载速度为 12Mbyte/s,在 IPv6 上还几乎是这个速度。Ping 延迟还是会有一些增加的,主要是因为 Tunnel Broker 的服务器连接到你的服务器会有一些延迟,它相当于一个代理,所以创建时一定要选择离你服务器最近的 Tunnel Broker(延迟最短的),而不是里用户最近的 Tunnel Broker。

注意,强烈不建议国内主机使用 HE 的 Tunnel Broker,原因是中国连接 HE 都会绕道美国,最终会给 IPv6 增加 500ms 的 Ping 延迟,1000ms 以上的 TCP 延迟和好几秒的 HTTPS 延迟。建议国内主机使用方案二。

在服务器支持了 IPv6 后,确保域名上也新设置了 AAAA 记录解析到了 IPv6 地址上。

方案二,上 CDN/HTTP Proxy

刚才所介绍的方案是直接支持,或者使用 Tunnel Broker 建立在网络层的代理。当然还有另一种代理的方式,那就是建立在应用层(第七层)上的,建立在第七层上的其实就是 HTTP Proxy,不过大多数提供 HTTP Proxy 功能的地方都能够缓存静态内容,所以也就是 CDN。 最佳解决方案是直接使用免费的 CloudFlare,然后开启 CDN 功能,这需要更换 DNS 服务器,甚至还可以配置 IPv4 回源,仅使用 IPv6 CDN),不过这样的话连 DNS 在内的所有服务都能支持 IPv6 了,类似的还有 Akamai,它们在代理了之后都能给你 IPv6 支持。 但是如果使用这种方案,原先收集用户真实 IP 的功能就会失效,包括防火墙和 Web 应用程序在内。但只需要配置稍作一些修改,就又能收集访客 IP 了。


在做好了这些配置之后,网站就能够被 IPv6-Only 的网络访问了。然而这只是其中一步,别忘了网站上的 CDN 和域名上的邮件服务还没支持 IPv6 哦,最后,我来列一下:

一些支持 IPv6 的服务列表

CDN

  • CloudFlare
  • Akamai

VPS

  • Vultr
  • Linode
  • DigitalOcean
  • OVH

DNS

注:CDN、VPS 中列出的那几家服务自己都提供了支持 IPv6 的 DNS,在此不再列出(其中 Linode 和 DigitalOcean 所提供的 DNS 服务实际上也是 CloudFlare 的)

  • Rage4
  • Hurricane Electric DNS
  • Route 53
  • Google Cloud DNS

Tunnel Broker

  • Hurricane Electric Tunnel Broker

邮件服务

  • Gmail / G Suit (Gmail for Work)

当你配置好后,你可以在 IPv6 Test 上测试你的网站

测试截图
测试截图

直至现在,支持 IPv6-Only 网络访问在生产中仍然不是必须的,因为实际上很少存在 IPv6-Only 的网络,一般都兼容 IPv4,很多大网站也完全不支持 IPv6。苹果所说的要求支持 IPv6-Only,只是程序内部要使用 IPv6 通信,程序中不能有 IPv4 地址,能够在只分配了 IPv6 地址的运营商使用(然而实际上这些运营商还是支持 IPv4 的)。