4.部分二级域名实现cf优选IP
如题,本文将使用华为云的dns的分地域解析功能实现域名优选cf cdn ip.
警告
cf的用户协议中禁止优选IP,请自行判断相关风险.目前仅测试us.kg域名,其他二级域名理论可用.一级域名据说检查whois的ns故可能无法使用.已测试(二级域名修改1天左右后没出现掉有效状态,一级域名未测试)
准备材料:
cf账号一枚
一个域名
开始操作:
1.先把你的域名转入到cf,具体过程不再说明.
2.趁cf不注意再把域名转入到华为云的dns解析(无法实名的可以用国际版),然后海外NS记录解析到cf的ns就行
你就会发现cf的活动状态还是有效,这很正常是吧.
但是未来咋样就不知道了,可能是dns缓存的问题.
温馨提示
华为云的根域名ns记录实际上是个空NS记录,也就是实际上海外还是不能按照cf控制台上的DNS配置来决定最终的解析结果,你需要在华为云的dns记录里面添加记录才行.
如果开启了cf代理就把华为云解析到的地址指向cf的cdn地址即可.
其他的和正常双向解析一样,这边不再赘述.
原理刨析:
域名解析出来啥地址不在于NS,而是在于SOA,也就是**SOA决定你的域名解析结果,NS不是决定的.**你的域名解析出来的啥结果只看SOA给出来的解析结果(比如本文中是华为云)
也就是说解析路径应该是这样的(可能有错,欢迎各位大佬指正):
你->递归DNS服务器->CF的NS服务器(国外)->SOA服务器(返回解析结果)
举个例子:
yyyyt.us.kg解析托管在华为云国际版上.如果你在国内查询应该下面的样子:

国外查询应该是这样的:

发现了没有?外国查询没有SOA记录.
同样的,我们看一下cloudns的免费二级域名:

发现没有,SOA记录不是cf那边的.
而正常的一级域名:

而cloudns那边需要双向解析,我这个操作也需要双向解析.
实际上你去itdog ping会发现你在cf那边设置的解析记录不生效.
这就是双向解析相关的原因.
PS: 有人会想问为啥cf那边NS记录托管到别的dns服务商就能按照正常的解析出来了,例如说我的docs.yyyyt.top就是通过子域名NS记录来托管华为云的,这个我猜测应该是cf那边做了特殊处理,所以可以正常托管,而华为云把SOA权限给锁的比较死,而且没有做特殊处理(或许是二级域名的问题),导致海外ns解析到cf后cf上的记录无法生效.我只能猜测到这里了.