关于从URL获取IP地址有很多问题,反之亦然。
如标题所示,我想得到其各自IP地址的网站URL。例如:
>>> import socket
>>> print(socket.gethostbyname('google.com'))这将查找域并返回172.217.20.14.。我在找柜台,例如:
>>> print(socket.getnamebyhost('172.217.20.14'))任何类似的内容,都会将域返回为指定的IP的google.com。
在python3中可以这样做吗?如果是,如何才能做到这一点?
更新
不幸的是,我对待这件事的方式是错误的。有些IP共享一对多的关系,即名称服务器指向多个urls,除非PTR记录另有说明。我的问题改头换面:
像ipinfo.io这样的IP到域数据提供者如何为单个IP返回顶级域?
据我所知,A或AAAA的记录起着重要的作用,但我从这些记录中得到的唯一东西是ns,而不是域。我不知道如何从记录中提取gTLD或ccTLD。我愿意接受任何建议,如果有人愿意分享如何从任何IP解析gTLD或ccTLD的答案的话。最好在python中使用,但是shell脚本也足够了。
发布于 2020-08-30 05:50:25
socket.gethostbyaddr('172.217.20.14'),将是正确的方式在这里,但不一定。原因如下:
域到IP的解析类似于:
域>根服务器>源服务器>源服务器的主机名到IP配置。
现在要进行逆向工程,我们必须考虑到:
因此,即使您手动地这样做,比如尝试查找实际的IP,谷歌的服务器运行在上面,您也不能这样做,因为这将打开他们的中心服务器,以应对各种攻击,最重要的是DDoS。
https://stackoverflow.com/questions/63583728
复制相似问题