当端口 43 可能无法访问时,如何使用来自 python 脚本的 WHOIS 查询
How to use WHOIS queries from python script when port 43 is likely not accessible
我是网络编程的新手,遇到了以下问题:
我正在 Windows10 主机上的 VMware CentOS7 虚拟机上工作。
我的脚本应该发送 WHOIS 查询并解析它们的输出(例如到期日期)。
但是,尝试发送查询会导致连接错误:
>>>import whois
>>>whois.query('google.com')
WhoisCommandFailed: connect: Network is unreachable
我试图从终端whois
,但错误是一样的。
当我尝试直接从托管虚拟机的 Windows 使用 whois
时,错误看起来也一样(连接超时)。
正如我发现的那样,它很可能与访问端口 43 有关。我通过 guide 为该端口的 Windows 防火墙创建了规则(用于进出),但是错误仍然坚持。
似乎 ISP 阻止了对该端口的访问(但是 ping
命令正在运行)。
总而言之,我有两个问题:
1)(不太重要)如何检查端口 43 是否被 ISP 防火墙阻止?
2)(最重要的)是否有可能以某种方式重新配置 WHOIS 以使用另一个端口(即 23)以通过 Python 脚本发送查询?
不幸的是,ISP 安全策略不允许他们打开 43 端口。
大多数 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 服务器。
- 尝试远程登录到远程服务器的 TCP/43 端口:
telnet 192.34.234.30 43
- 您应该看到以下内容:
Trying 192.34.234.30...
Connected to 192.34.234.30.
Escape character is '^]'.
- 如果您看不到这样的上下文并且您会立即返回提示,您将在某处设置防火墙规则以阻止连接。建议暂时关闭防火墙再测试
您不能更改端口号,因为它是在远程服务器上配置的。
CentOS7服务器可以上网吗?例如,您可以安装软件包吗?
windows 机器和 ISP 之间是否有路由器?
我是网络编程的新手,遇到了以下问题:
我正在 Windows10 主机上的 VMware CentOS7 虚拟机上工作。 我的脚本应该发送 WHOIS 查询并解析它们的输出(例如到期日期)。
但是,尝试发送查询会导致连接错误:
>>>import whois
>>>whois.query('google.com')
WhoisCommandFailed: connect: Network is unreachable
我试图从终端whois
,但错误是一样的。
当我尝试直接从托管虚拟机的 Windows 使用 whois
时,错误看起来也一样(连接超时)。
正如我发现的那样,它很可能与访问端口 43 有关。我通过 guide 为该端口的 Windows 防火墙创建了规则(用于进出),但是错误仍然坚持。
似乎 ISP 阻止了对该端口的访问(但是 ping
命令正在运行)。
总而言之,我有两个问题:
1)(不太重要)如何检查端口 43 是否被 ISP 防火墙阻止?
2)(最重要的)是否有可能以某种方式重新配置 WHOIS 以使用另一个端口(即 23)以通过 Python 脚本发送查询?
不幸的是,ISP 安全策略不允许他们打开 43 端口。
大多数 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 服务器。 - 尝试远程登录到远程服务器的 TCP/43 端口:
telnet 192.34.234.30 43
- 您应该看到以下内容:
Trying 192.34.234.30...
Connected to 192.34.234.30.
Escape character is '^]'.
- 如果您看不到这样的上下文并且您会立即返回提示,您将在某处设置防火墙规则以阻止连接。建议暂时关闭防火墙再测试
您不能更改端口号,因为它是在远程服务器上配置的。
CentOS7服务器可以上网吗?例如,您可以安装软件包吗?
windows 机器和 ISP 之间是否有路由器?