前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在腾讯云将网站开启 IPv6 的三种方式

在腾讯云将网站开启 IPv6 的三种方式

原创
作者头像
SRE扫地僧
发布2021-12-10 20:45:51
8.3K5
发布2021-12-10 20:45:51
举报
文章被收录于专栏:k8s_istio

从传统二进制部署的 Nginx,到云原生部署的 K8S、Istio,分别介绍网站开启 IPv6 的三种方式。

IPv6 网站开启检测
IPv6 网站开启检测

1.Nginx 如何开启 IPv6

前置条件

1.1 启动监听 IPv6 地址的 Nginx

默认 Nginx 的配置文件(/etc/nginx/nginx.conf)已经开启 IPv6 访问,启动 Nginx。

代码语言:javascript
复制
    server {
        listen       80;
        listen       [::]:80;  ## 监听 IPv6 的 80 端口
        ...
    }    

可以看到 Ngnix 同时监听在 IPv4 和 IPv6 地址上。

代码语言:javascript
复制
# netstat -ntlp | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      138362/nginx: maste
tcp6       0      0 :::80                   :::*                    LISTEN      138362/nginx: maste

1.2 服务器验证 IPv6 访问

在服务器上通过 curl 命令可以验证 IPv6 访问情况

代码语言:javascript
复制
# curl -g http://[2402:4e00:1013:e500:0:940e:29d7:3443] -I
HTTP/1.1 200 OK
Server: nginx/1.20.1
Date: Sat, 04 Dec 2021 13:58:37 GMT
Content-Type: text/html
Content-Length: 4833
Last-Modified: Fri, 16 May 2014 15:12:48 GMT
Connection: keep-alive
ETag: "53762af0-12e1"
Accept-Ranges: bytes

1.3 安全组对 IPv6 来源地址授权访问

接下来在 安全组 中对 监听在 IPv6 地址上的 80 端口授权访问。

IPv6 安全组
IPv6 安全组

1.4 本地电脑验证 IPv6 访问

如果 本地网络已开启 IPv6访问,接下来参照 浏览器访问 IPv6 地址,在本地电脑通过浏览器可以验证 IPv6 访问。

1.5 域名添加 IPv6 地址解析

给域名添加 IPv6 解析记录(AAAA),添加完后可以通过 IPv6 在线域名解析工具 对其解析验证。

IPv6 DNS 解析
IPv6 DNS 解析

同一个主机名可以同时解析 IPv4(A 记录) 和 IPv6(AAAA 记录),本地浏览器一般 IPv6 优先访问。

1.6 IPv6 网站开启验证

通过 网站IPv6开启验证工具 来验证 IPv6 是否开启成功。

IPv6 网站检测
IPv6 网站检测

2. K8S 如何开启 IPv6

在 K8S 中对 Web 服务来说,一般通过 Ingress 对用户提供流量访问,所以 K8S 中开启 IPv6,就是 Ingress 支持 IPv6。

此处以 腾讯云容器服务为例,介绍如何开启 IPv6。

参照文章 腾讯云 cvm 开启 IPv6 ,提交 IPv6 内测申请。

2.1 创建 IPv6 NAT64 版本的 Ingress

创建 IPv6 NAT64 版本的 Ingress。

IPv6 NAT64:用户与 IPv6 NAT64 的 LB 之间是 IPv6 访问,IPv6 NAT64 的 LB 与后端 Service、Pod 通信是 IPv4。 优点:业务程序无需改造网络,可支持 IPv6 网络访问。 缺点: 无法获取客户端真实 IPv6 地址。

IPv6 Ingress
IPv6 Ingress

接下来参照上文,对该 Ingress 背后的负载均衡器添加对来源 IPv6 地址访问的安全组策略即可。

2.2 验证 IPv6 网站是否开启

验证方法同上,此处不再赘述。

3. Istio 服务网格如何开启 IPv6

服务网格 istio,比 K8S 原生的 Ingress 管理流量更方便,如果你使用了服务网格,就不需要对 K8S 的 ingress 开启 IPv6 访问,直接在服务网格中开启 IPv6 访问。

3.1 创建 IPv6 边缘代理网关

创建边缘代理网关时,选择提前创建好 IPv6 LB。

IPv6 服务网格
IPv6 服务网格

3.2 创建 IPv6 Gateway

创建 IPv6 Gateway 时,关联刚创建的 IPv6 边缘代理网关。

创建 IPv6 Gateway
创建 IPv6 Gateway

如果开启 HTTPS 访问,则添加好证书即可。

isito https ipv6
isito https ipv6

3.3 创建 IPv6 Virtual Service

创建 IPv6 Virtual Service,挂载上面创建的 IPv6 Gateway。

3.4 验证 IPv6 网站是否开启

验证方法同上,此处不再赘述。

IPv6 大势所趋,广大站长赶紧行动吧。

参考文章

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.Nginx 如何开启 IPv6
    • 前置条件
      • 1.1 启动监听 IPv6 地址的 Nginx
        • 1.2 服务器验证 IPv6 访问
          • 1.3 安全组对 IPv6 来源地址授权访问
            • 1.4 本地电脑验证 IPv6 访问
              • 1.5 域名添加 IPv6 地址解析
                • 1.6 IPv6 网站开启验证
                • 2. K8S 如何开启 IPv6
                  • 2.1 创建 IPv6 NAT64 版本的 Ingress
                    • 2.2 验证 IPv6 网站是否开启
                    • 3. Istio 服务网格如何开启 IPv6
                      • 3.1 创建 IPv6 边缘代理网关
                        • 3.2 创建 IPv6 Gateway
                          • 3.3 创建 IPv6 Virtual Service
                            • 3.4 验证 IPv6 网站是否开启
                            相关产品与服务
                            云服务器
                            云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                            领券
                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档