Validation 如何最好地验证URL是否位于公共internet上?

Validation 如何最好地验证URL是否位于公共internet上?,validation,url,Validation,Url,我想验证主机名/IP地址是否在公共internet上;也就是说,只要合理,无论我从哪里访问它,我都会从它那里得到相同的响应(显然这是不可能保证的) ie我想排除localhost、127.0.0.1、私有IP范围内的任何内容以及具有无效TLD的任何内容 我是否遗漏了其他我应该检查的东西 还有比有效TLD列表更好的列表吗?如果您对DNS或/etc/hosts没有严格控制,有效TLD仍然可以解析为本地地址,因此解析然后按IP范围排除(10.0.0.0/8172.16.0.0/12192.168.0.

我想验证主机名/IP地址是否在公共internet上;也就是说,只要合理,无论我从哪里访问它,我都会从它那里得到相同的响应(显然这是不可能保证的)

ie我想排除
localhost
127.0.0.1
、私有IP范围内的任何内容以及具有无效TLD的任何内容

我是否遗漏了其他我应该检查的东西


还有比有效TLD列表更好的列表吗?

如果您对DNS或/etc/hosts没有严格控制,有效TLD仍然可以解析为本地地址,因此解析然后按IP范围排除(10.0.0.0/8172.16.0.0/12192.168.0.0/16169.254.0.0/16127.0.0/8)是最好的选择


您的TLD列表是最新的。

IANA是域名信息的官方来源,因此您无法获得更好的列表-或者至少,您无法获得更权威的列表。

最终验证不是创建您本地的网络列表(例如,在您自己的防火墙后面)如果不是,请尝试连接主机?如果您可以连接,但它不是本地的,您就没有理由期望internet上的任何其他位置都无法连接