我的 Windows 机器上运行了 Postgres,我需要从 WSL2 内部连接到它。
- postgres windows 服务正在运行
- 我可以使用从 Windows 命令行连接到它
psql
- WSL2 vm 的 IP 是
172.31.210.120
, 网络掩码255.255.240.0
(使用 确定ipfconfig
)。 - vm内部的windows主机的IP是
172.31.208.1
(使用确定cat /etc/resolv.conf
) - 我可以使用
curl http://172.31.208.1:8080
. 如果我记录传入请求的 IP,我会得到172.31.210.120
这样的信息,这会验证两个 IP 是否正确。 - 我将以下行添加到
pg_hba.conf
:host all all 172.31.210.120/20 scram-sha-256
- 我重新启动了 postgres windows 服务
如果我尝试使用以下命令从 WSL 连接到它:
$ psql --host=172.31.208.1 --port=5432 --user=postgres
我收到此错误:
psql: error: could not connect to server: could not connect to server: Connection timed out
Is the server running on host "172.31.208.1" and accepting
TCP/IP connections on port 5432?
注意:我也尝试使用测试连接,telnet
但它也失败了。
下面的日志c:\Program Files\PostgreSQL\13\data\log\
没有显示任何错误或任何迹象表明存在连接尝试。
我在这里想念什么?