首页 > 编程知识 正文

阿里云ipv6脚本,ipv6云服务器

时间:2023-05-06 20:38:51 阅读:12715 作者:4240

「特别注意:阿里云已经提供了 IPV6 的负载均衡,所以尽量直接使用阿里云的服务,避免自己搭建,引发不必要的麻烦」

自从AppStore要求必须支持IPv6之后,国民在受到打击的同时,加速了国内IPv6的普及。 但是,国内的服务器管理业者,例如Alibaba云(AlibabaCloud )几乎不支持IPv6。

本文是博主金亚矮小外套呕血的填穴之旅,可专业测量,完美支持IPv6

关键词:阿里巴巴云、ECS、IPV6、CDN、IPV6隧道

别多嘴,说说我是怎么解决的。

想法:

数据操作层在服务器上建立IPv6隧道

静态CDN需要使用国外的DNS进行CNAME

1 )阿里巴巴云(AlibabaCloud )服务器构成了CentOS 7.3自己的网络(经典网络也没关系) )。

修改配置以编辑vim/etc/modprobe.d/disable _ IPv6.conf文件(需要根权限)

将禁用设置为0

options IPv6 disable=0编辑vim/etc/sys config/network文件(需要根权限)

将NETWORKING_IPV6设置为yes

NETWORKING_IPV6=yes然后执行服务网络重新启动

编辑/etc/sysctl.conf文件(需要根权限)

net.IPv6.conf.all.disable _ IPv6=0net.IPv6.conf.default.disable _ IPv6=0net.IPv6.conf.lo.disable

打开IPv6并使用ip addr检查是否已经有inet6地址,如果有说明,请打开IPv6

[ work @ XXX tmp ] $ IP addr 1: lo : loopback,UP, lower _ up MTU 65536 qdiscnoqueuestateunknownqlen1link/loopback 0033600336000336000336000336000336000336000 brd 00336000336000336000033600000000003 brd 00:000003:000000000 inet 127.0 8 scopehostlovalid _ lftforeverpreferred _ lftforeverinet 6336033601/128 scopehostvalid _ lftforeverpreferrred _ lft forever 上传, lower _ up MTU 1500 qdisc pfifo _ faststateupqlen 1000 link/ether 0033601633603 e :3360336058: E6 br dff 33: ff : ff 3333660 20 brd 172.17.255.255 scopeglobaldynamiceth0valid _ lft 31454018 sec preferred _ lft 31454018 se cinet6Fe 803360336021603 3603 EC 64 如果有lftForever和其他Nginx服务,则必须接收IPv6地址

如下所示,listen [ :3360 ] :80 IPv6 only=on; 可以。 如果不支持,或者nginx版本太低,则表示您可能没有加入ipv6支持,需要重新编译--with-ipv6版本)

服务器{ listen 80; listen [ :3360 ] :80 IPv6 only=on; server_name www.xxx.com; 索引索引. PHP;使用netstat -tuln检查tcp6 :80是否进行了监听,如果有,则表示名称监听成功

这样的

TCP 60 XXX : XXX 33602336011 f 63360336011 f 6336033602336033603360336033603360 * listen TCP 60336033601:25:3360 * listen TCP 60336033603360443360336033603360336033603360336033603360 *如果没有listen netstat,请安装sudo yum install net-tools -y

2. IPv6隧道配置向https://tunnelbroker.net/网站申请tunnel

(qq电子邮件地址表示无法收到验证邮件,因此建议使用Gmail。)

注册步骤不言而喻,注册后需要验证电子邮件地址并登录

要创建Tunnel IPv4 Endpoint,需要服务器的外部网IP地址。 也就是说,使用这个

个IP能访问到你的服务。

查看Tunnel信息


红框里面的 Client IPv6 Address 就是你的IPv6 地址,之后解析域名的时候用的就是它(域名里不用写“/64”)哦~

配置信息

注意这里的 local ip需要写内网IP,下面的NOTE: 已经用英文说明了

然后把这一坨命令直接在服务器上运行就行了(注意需要root权限)

测试 ping6 he.net

[work@chdwg2ze4p8dzdjgu7fh60vqcz tmp]$ ping6 he.netPING he.net(he.net (2001:470:0:76::2)) 56 data bytes64 bytes from he.net (2001:470:0:76::2): icmp_seq=1 ttl=58 time=432 ms64 bytes from he.net (2001:470:0:76::2): icmp_seq=2 ttl=58 time=435 ms64 bytes from he.net (2001:470:0:76::2): icmp_seq=3 ttl=58 time=441 ms64 bytes from he.net (2001:470:0:76::2): icmp_seq=4 ttl=58 time=429 ms^C

能ping通说明已经配置成功。

接下来只需要在DNS解析里面,将域名指向ipv6的地址即可,需要用AAAA记录
AAAA xxxx 2001:xxxxx
解析之后可以用 wget -6 http://xxxxxxx 来验证你的解析是否正确以及IPv6是否ok。如果能获取到网页信息,说明一切正常。(https同理)

3. 配置静态服务

静态服务器一般都有自带的CDN啥的,这些都ok,只是需要一个支持IPv6的域名CNAME到你自己的CDN就行了。
国内的DNS不要想了,基本都没法用,我这里用的国外的 cloudflare免费版
https://www.cloudflare.com

首先先用邮箱注册一个账号。

添加网站

然后添加网站。只需要写 xxx.com就行了,不需要二级域名

点击scan

然后他会有40多秒的时间去扫面此域名的DNS解析,同时会给你播放一个动画片

查看DNS解析

扫描结果页面一般都是空的,直接点 CONTINUE 继续就可以了

这里会让你选平台,当然是免费的

移交 DNS 解析

这里要注意了,是要把域名的DNS解析交接到 Cloudflare上面。

需要到你的域名运营商那里,设置域名的 DNS 【管理】
!!【重要】一旦将 DNS【管理】 修改到 cloudflare上面后,原来域名的所有解析将失效!!
所以不建议用原来的域名,建议新申请个域名来做这个事儿。

设置完解析后,点击CONTINUE
Cloudflare会去尝试接管此域名,
有可能会提示 解析失败,需要点击retry来重新检测

Status:Active 说明解析成功,这时候Cloudflare就可以解析你的DNS域名了

然后你需要在你的CDN服务商建立一个新的域名,然后将Cloudflare添加你自己的域名CNAME到你的新CDN域名即可

使用wget -6 http://xxxxx.png 来测试静态资源是否支持ipv6

ipv6-test

http://ipv6-test.com/validate.php 测试结果如下

备注:
所有的wget -6 需要在支持ipv6的机器上使用,比如你上面配置好的IPv6的服务器。

如果只是为了给苹果审核用,可能需要在代码里针对IPv6地址做特殊处理,比如IPv6地址访问的时候,需要返回IPv6的CDN地址。所以建议在返回的通用方法里统一做一次“替换”,以无缝接入IPv6。

我们是给IPv6单独部署了一台服务器,没有在整体的负载均衡下面,具体的负载均衡下的IPv6设置,暂时还没研究。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。