验证网络端口连接性的轻量级方法
如果您安装了 Linux 命令 netcat
建立两个终端会话。
-
在第一个终端会话中,从 Linux 命令行/提示符运行:
$ nc -l -p 5000
这将在主机上启动一个进程,监听端口 5000 上的流量。如果连接成功,您的终端窗口将前进到下一行,并简单地等待来自另一个 nc 命令的消息。
如果端口号已被另一个 Linux 进程占用,您将遇到以下错误消息:
nc: Address already in use
-
在第二个终端会话中,从 Linux 命令行/提示符运行:
$ nc -v <hostname> 5000
将 <hostname> 替换为第一个终端会话的内部 IP 地址/主机名。此命令将尝试连接到 <hostname> 的端口 5000。如果连接成功,您的终端窗口将报告以下信息,并将焦点移至下一行:
Connection to <hostname> 5000 port [tcp/*] succeeded!
在此之后,如果您输入文本,例如 Hello
,并在按下回车/Enter 后,您应该在第一个终端窗口中看到该文本。如果能在第一个终端窗口中看到该文本,则表示连接已成功建立/验证。
如果连接不成功,您可能会收到类似于以下的错误消息:
nc: getaddrinfo: Temporary failure in name resolution nc: connection refused
如果未安装 netcat
,您可以运行:
` echo > "/dev/tcp/<hostname/<port>") >/dev/null 2>&1 && echo "CAN CONNECT" || echo "CANNOT CONNECT"
`
将 <hostname> 替换为机器的主机名,将 <port> 替换为您尝试连接的端口。例如:
` echo > "/dev/tcp/production.neo4j.com/5001") >/dev/null 2>&1 && echo "CAN CONNECT" || echo "CANNOT CONNECT"
`
如果连接成功,您应该会看到 CAN CONNECT
;如果连接不成功,您会看到 CANNOT CONNECT
。
上述方法需要 <hostname> 和 <port> 是开放的并处于 LISTEN(监听)状态。在 Neo4j 启动后,这通常是正常的。
此页面有帮助吗?