假如一个网站使用了 CDN,它有多个地区节点。在国内解析获得的是美国 IP,在香港解析获得的是香港 IP 。
在没有香港服务器的情况下,有没有办法可以查询到香港地区的解析 IP 呢?
手动查询可以用 https://ping.chinaz.com/ 这类网站,但我需要在 shell 脚本里自动查询。
请问有没有一些在线 ping 网站的 api 可以使用或者其它办法可以解决这个问题?找了一圈都没有发现。。
|  |      13CH0      2020-05-30 09:52:45 +08:00 dig @223.5.5.5 www.aliyun.com +subnet=47.75.18.0 | 
|  |      2reus      2020-05-30 09:53:43 +08:00 查询当地的 DNS 服务器,有些基于 https 也会有地域参数 | 
|  |      3haimall      2020-05-30 09:57:08 +08:00 via Android | 
|      5ddefewfewf      2020-05-30 09:58:31 +08:00 dnsmasq | 
|      6Jerami      2020-05-30 10:20:36 +08:00 via Android whatismydns | 
|  |      7LUREN OP @3CH0 感谢!测试有效。不过 +subnet 指定查询位置似乎不总是有效,是需要取决 dns 服务器支持吗?测试 8.8.8.8 和 1.1.1.1 不起作用,223.5.5.5 存在污染问题,有其它 dns 推荐吗? | 
|  |      9orcusfox      2020-05-30 12:10:37 +08:00 | 
|  |      10orcusfox      2020-05-30 12:11:11 +08:00 没看到要脚本,忽略我吧 | 
|  |      11Showfom PRO dig + 一台支持 ECS 的递归 DNS 服务器即可,公共服务的话国内 223.5.5.5 国外 8.8.8.8 你还要解决污染,又要在国内做,那就自己搭建去呗 | 
|  |      12Livid MOD PRO https://developers.google.com/speed/public-dns/docs/doh/json 用 DNS-over-HTTPS 的 JSON API,里面有 edns_client_subnet 支持。 | 
|  |      13LUREN OP @Livid  curl -i 'https://dns.google/resolve?name=a356.w10.akamai.net&type=a&do=1&edns_client_subnet=63.223.17.0/24' 测试与 dig +subnet= 参数一样,虽然指定了一个香港子网,但没有解析没有返回香港 IP 。似乎还是取决 dns 服务器行为,换了一个香港 dns 就可以了。 |