我想验证主机名/ IP地址是否在公共互联网上;也就是说,就合理而言,无论我从哪里获取它,我都会得到相同的响应(显然这是不可能保证的。
即我想排除localhost
,127.0.0.1
,私有IP范围内的任何内容以及TLD无效的任何内容。
我错过了我应该检查的其他内容吗?
对于有效TLD列表,是否有比http://data.iana.org/TLD/tlds-alpha-by-domain.txt更好的列表?
答案 0 :(得分:2)
如果您没有严格控制DNS或/ etc / hosts,则有效TLD仍可解析为本地地址,因此解析然后按IP范围排除(10.0.0.0/8,172.16.0.0/12, 192.168.0.0/16,169.254.0.0/16,127.0.0.0/8)是最好的。
您的TLD列表是最新的。
答案 1 :(得分:1)
IANA是域名信息的官方来源,因此您无法获得更好的列表 - 或者至少,您无法获得更多权威。
答案 2 :(得分:0)
最终的验证不是创建一个本地网络列表(例如,在您自己的防火墙后面),如果不是,请尝试连接主机?如果您可以连接并且不是本地连接,则您没有理由期望互联网上的任何其他位置无法连接。