net.Dial("tcp", "192.168.1.100:3000")
上面的调用给我 dial tcp 192.168.1.100:3000: connect: host is down
。
我可以成功 ping 端点。我想知道这个错误的原因是什么。 host is down
的可能原因是什么?
让我提供更多细节。我调用的端点正在运行 mysql 服务器。我可以使用命令行成功连接到它。端点位于 NAS 中。
进一步调查,我相信错误消息来自 https://github.com/golang/go/blob/60e3ebb9cba900f7b2f559b472726cee47e823c0/src/net/fd_unix.go#L94
最佳答案
我已经找到原因了。这是因为防火墙设置。这种情况是由使用 Little Snitch 引起的,它会检查可执行文件是否具有有效的代码签名。如果可执行文件没有有效的代码签名,请求将被过滤,Little Snitch 将返回错误编号 64,这意味着主机在 Mac 中已关闭。
关于Golang TCP拨号错误: host is down,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50251495/