如何 实现 A/B 域名 A CName B 时,B 隐藏
如题 cloudflare cname 后
进行 ping 测试时 突然 有一个想法:
需求:
最终实现 A Cname B 之后 ping 测试时 看不到 B 域名
而直接显示 B 的 A 记录 IP
比如
A 域名
方式
B 域名
目标 IP
a.com
cname
b.com
8.8.8.8
最后实现:
正在 Ping a.com [8.8.8.8] 具有 32 字节的数据:
而不是
正在 Ping b.com [8.8.8.8] 具有 32 字节的数据:
修改 ping 的源代码
2333 请不要抖机灵
因为 B 的 IP 变动是不可预测的
所以需要这样 能够时刻检测对方 IP 是否改变
最好能够直接指向对方的 变动的 A 记录最好
以我目前的知识量
我顶多能想到 nginx 重定向
求大佬提供思路
Cloudflare 有 CNAME Flattening 功能
blog.cloudflare.com/introducing-cname-flattening-rfc-compliant-cnames-at-a-domains-root/
这个是 DNS 那边的回复,标准的 DNS 协议会在查询 a.com 回复 a.com 其实是 b.com 的一个 cname 记录。
要改,只能直接在域名服务商那里把 cname 记录改为 A 记录,值改为 b.com 对应的 A 记录值。
当然,改 DNS 回复也行,不过这个我想你也应该没这个权限。🐶
cloudflare 我记得有个 aname 还是什么的,会把 cname 展平。
不然的话只能看看 ping 有什么选项这么做了。
nginx 怎么重定向 ICMP ?你还是先学学吧,思而不学则殆
alias record
但这个功能可能不在所有的域名解析服务商里提供
域名 A cname -> cf 域名 -> 域名 B
这个时候 域名 B 就是隐藏的呀
感谢您的耐心答复,我正在找 ANAME 和 flattening 的相关内容!
场景不允许走 cf 巨慢
是境外域名
我想应该也是不可以提供服务的吧
感谢您的答复!
我想我的需求可能是
时刻检测对方 A 记录
将对方 A 记录改成我的
但我看了一圈好像 cf 的 DNS 貌似没有办法实现
cname 只会直接指向对方的 A 记录
听起来我的需求有点像 DDNS?
帮大忙了 !
感谢您的答复,这可能就是我想要的功能!
就是把 CNAME 记录改为 ALIAS 记录,完美解决你的问题
你可能需要 aname 记录,这个只有部分 dns 服务商支持
en.wikipedia.org/wiki/CNAME_record#ANAME_record
简单来说,为域名设置一个 alias 域名,收到查询请求时 dns 服务商先自行将 alias 的域名解析出 ip 地址,再将其作为 a 记录返回,而不是像 cname 一样直接返回另一个域名
优势就是可以隐藏 alias 的域名,不足之处就是不能很好的兼容 anycast
看了下,免费的 dns.he.net 就支持 ALIAS Record(aname),直接像配置 cname 一样配置 ALIAS Record 即可
我看到了, 他默认 只有 根域名 是 展平的
但我 要有 6 个域名需要 展平(笑哭)
间隔轮询 b.com 的 IP,发生变化就用 API 去修改 a.com 的 A 记录就行。
谢谢您的答复! 这也是一种可以考虑的解决办法 时刻不断地去修改 A 记录
感谢您的耐心答复!!! 我一定会去试试这个!
顺便问一下您! 他的这个支持 多个子域名吗? 有没有什么限制?
我看到了, 他默认 只有 根域名 是 展平的
但我 要有 6 个域名需要 展平(笑哭)
he dns 完全免费,一个账号可以添加 50 个 zone,支持多个子域名,没实际测试过最大限制吧但是几百条记录是没问题的
已知的限制是不支持泛域名解析,也不支持添加纯数字域名
#17 有一处笔误,不足之处是不能很好的兼容 geodns,并不是 anycast 。。
原因是 dns 服务商一般只会在特定的服务器上“代为”解析 aname 的域名,所以如果 aname 的域名配置了 geodns,它会始终返回 dns 服务商所在的地区解析出的记录,而不能很好的做到不同地理位置返回不同的解析结果
先问下你为什么要调 ping 的结果?
一般而言提供展平是为了同时存在其他记录,而避免因 CNAME 的性质导致无法保存其他记录,比如 MX 记录(邮件服务器)
只是为了 ping 去做展平有点多余。很多网站都没做展平。
这时候需要 alias 记录
doc.powerdns.com/authoritative/guides/alias.html
由你的权威 DNS 解析 cname 的域名,返回给用户 A 记录即可
可以考虑 隐式 url
DNAME
感谢您的答复! 请问 您 这是什么原理呀
感谢您的回答! DNAME 也是展平吗?
感谢您的答复!!! 我用楼上的成功啦!! 就是通过 alias 实现的!! Thanks♪(・ω・)ノ
#26 “CNAME”记录与“MX”记录冲突,好像不行吧。
不是冲突,而是 CNAME 覆盖其他任何记录。
你读读我 #26 到底写了啥,ANAME/ALIAS 就是为了避免这个问题的,而不是为了楼主的 ping
已经是第 二 N 次了,微软 谷歌在我的电脑里搞弹窗,第一次是 一个多月 不记得多久以前,弹出个 微软电脑管家 不知道怎么说的弹窗 第二 上一次是刚刚,弹出个 必应 ai 助手…
以前给大家介绍过一些非常有意思的杂项资源,今天再给大家介绍一些。(虽然没有上次的多,也算是一个新年礼物吧) 首先,如果你想在你的web页上做一个小提示,你不妨到http://…
背景:我手上有一个 windows 笔记本,刚从 ios 换来的一加 13 color os ,刷了类原生系统的联想 pad 需求:有的时候在外面临时需要传一些 pdf 等小文…