外部连接到 Python 套接字服务器

Externally connect to Python socket server

同一 LAN 上的客户端可以使用服务器机器的 IPv4 地址连接到服务器。但是,当我让客户端使用路由器的外部 ip 和端口转发到服务器机器时,它们无法连接。任何想法,至于为什么?我使用相同的端口转发在 GML 中创建了一个服务器和客户端,并且它使用外部 ip 连接得很好,所以我假设我缺少 Python 中需要的东西。这是服务器代码的精简版本:

# Server variables
host = socket.gethostbyname(socket.gethostname())
port = 65000
max_connections = 100
timeout = 5

# Run Server
socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
socket.bind((host, port))
socket.settimeout(timeout)
socket.listen(max_connections)
run()

我试过将服务器 ip 设置为 "" 和 "0.0.0.0" 无济于事。我还尝试使用默认网关 ip 进行踢球和咯咯笑。任何建议表示赞赏。

我搞砸了。我以为我已经禁用了 Windows Defender 的防火墙,但我只是关闭了实时保护。呸……这就是当你走得很快而没有足够注意时会发生的事情。现在一切正常。