请教下有没人知道 go 语言把国外的域名解析成 IP

2022-08-24 21:19:14 +08:00
 hayabusa9

最近有个需求,要解析域名背后的 ip ,用 go 原生库的 net.LookupIP 函数就能做到,但是对国外的域名解析的不知道正不正确,我试了几个像 twitter.comfacebook.com 解析出的 ip 地址,用在线网站 ip 反查域名,发现对应的域名都是些奇怪的网站,不是 twitter.com 。有人知道有什么第三方库能做到吗?

2641 次点击
所在节点    程序员
32 条回复
sunorg
2022-08-24 21:20:16 +08:00
cdn 和 dns 负载均衡了解下
gabon
2022-08-24 21:22:40 +08:00
做不到
6IbA2bj5ip3tK49j
2022-08-24 21:28:57 +08:00
这和语言就什么关系?
完全是 dns 的问题。
1 ,翻墙,防止 dns 投毒
2 ,使用 doh/dot
bugfan
2022-08-24 21:30:19 +08:00
找个国外的 dns 服务器,然后用 doh ,dot 或者 doq 去解析
1423
2022-08-24 21:46:38 +08:00
被局域网耽误的萌新啊,一个新世界的大门正在向你打开
jinliming2
2022-08-24 22:21:26 +08:00
国内有骨干网 DNS 投毒污染,用国外的网络就正常了
haodingzan
2022-08-24 22:22:22 +08:00
可是,你是怎么上的 v2……
jim9606
2022-08-24 22:27:30 +08:00
楼主是肉身国外还是用着什么公司内网?不知道墙的存在还能来 v2 提问?
ch2
2022-08-24 23:03:16 +08:00
首先你得确保 dns 是可靠的
seers
2022-08-24 23:05:45 +08:00
go 调用的是本地 dns ,你要保证结果正确,首先要找个国外 vps 然后放上去跑
EminemW
2022-08-24 23:20:06 +08:00
你自己指定使用国外的 dns 就行了
lianyue
2022-08-24 23:37:37 +08:00
tinkerer
2022-08-24 23:53:51 +08:00
上面说的 DNS over HTTPS 是正解。
但是国内的 doh 还是不干净,所以需要你在墙外弄一个反代到 quad9 或者 cloudflare 的 doh 服务,
然后给自己的服务申请好 IP 证书,直接通过 IP 访问反代服务 (e.g. https://1.2.3.4)。

关键词: doh, reverse proxy, ip cert

P.S. IP 证书可以用 www1.hi.cn 或者我写的这个小工具 https://github.com/tinkernels/zerossl-ip-cert
kkeep
2022-08-25 00:07:04 +08:00
@tinkerer 可以啊,180 天后面也可以续是吧
q1angch0u
2022-08-25 00:28:29 +08:00
@tinkerer 强啊大佬,IP 证书还是用的 zero ssl 吗?
shiny
2022-08-25 00:30:29 +08:00
这个世界的 bug 终于还是被你发现了
Yadomin
2022-08-25 00:47:39 +08:00
这都不知道是怎么上的 V 站呢🤔
0o0O0o0O0o
2022-08-25 00:52:49 +08:00
通过

net.resolver
prefergo

自定义 dns server 即可
Kasumi20
2022-08-25 01:39:22 +08:00
因为 DNS 通常使用裸奔的 UDP 用户层协议,加密一下就可以啦,Rust 实现: https://github.com/develon2015/dnsd
datou
2022-08-25 07:51:57 +08:00
建议楼主找几个 doh 库来解析海外域名的 IP

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/875167

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX