当端口43可能无法访问时,如何使用python脚本中的WHOIS查询。

问题描述 投票:1回答:1

我是一个非常新的网络编程,面临着以下问题。

我在Windows10主机上的VMware CentOS7虚拟机上工作.我的脚本应该发送WHOIS查询并解析它们的输出(例如到期日期)。

然而,试图发送一个查询导致连接错误。

>>>import whois
>>>whois.query('google.com')


WhoisCommandFailed: connect: Network is unreachable

我试图 whois 当我尝试使用终端上的 whois 直接从虚拟机的主机Windows上访问,错误看起来也是一样的(连接超时)。

我发现,这很可能与访问端口43有关。我在Windows防火墙上为这个端口创建了规则(进出),通过以下方法 指南 但错误仍然存在。看来,这个端口的访问被ISP封锁了(不过,我想说的是,这个端口的访问已经被ISP封锁了。ping 命令工作)。)

总的来说,我有两个问题:1) (不那么重要)如何检查43端口是否被ISP的防火墙屏蔽了?2)(最重要)是否有可能以某种方式重新配置WHOIS,以便使用另一个端口(即23)通过Python脚本发送查询?不幸的是,ISP的安全政策不允许他们打开43端口。

python networking whois pywhois
1个回答
0
投票

大多数情况下,ISP不会屏蔽任何端口,但这并不是100%正确的。

测试连接。

  • 运行 tcpdump (安装命令。yum install tcpdump)命令在CentOS上。tcpdump -peni any tcp and port 43
  • 你必须看到有以下文字的行。192.168.1.1.57350 > 192.34.234.30.43 其中 192.34.234.30 IP地址表示远程whois服务器。
  • 尝试telnet到远程服务器的TCP43端口。telnet 192.34.234.30 43
  • 你应该会看到以下内容

尝试192. 34. 234. 30...

连接到192.34.234.30。

转义字符是'^]'.如果你看不到这样的上下文,那么你就会看到:Trying 192.34.234.30... Connected to 192.34.234.30.

  • 如果你不能看到这样的上下文,而你又马上得到回车提示,你就会在某个地方有一个防火墙规则在阻止连接。我建议你暂时关闭防火墙,然后再测试。

你不能改变端口号,因为它是在远程配置的,在服务器上。

CentOS7的服务器可以和互联网通信吗?例如,你可以安装软件包吗?

在windows机器和ISP之间是否有路由器?

© www.soinside.com 2019 - 2024. All rights reserved.