我在一台 ubuntu 机器上启动并运行了一个本地 python 服务器。在我的 ubuntu 机器上,我运行了以下命令来启动它:
python3 -m http.server
这是我在终端收到的响应:在 0.0.0.0 端口 8000 上提供 HTTP 服务(http://0.0.0.0:8000/)...
然后,我尝试使用位于同一网络上的第二台 ubuntu 机器使用以下命令下载文件:
wget 0.0.0.0/name-of-the-file
我收到此错误:连接到 0.0.0.0:80...已连接。HTTP 请求已发送,正在等待响应...404 未找到错误 404:未找到。
但是如果我在第一台 ubuntu 机器上运行相同的命令,它就可以正常工作。所以我不认为路径是错误的。我甚至尝试打开链接http://0.0.0.0/文件名在 Web 浏览器中,它可以工作。我关闭了防火墙,但它仍然不起作用。有什么想法可以阻止 pc2 连接 pc1 吗?
答案1
0.0.0.0 不是有效的目标地址。它本质上意味着“此网络上的此主机”(这就是为什么当您从运行 Web 服务器的同一台机器上使用它时它会“有效”的原因)。
要从本地网络中的其他主机进行连接,您需要使用连接到 LAN 的服务器接口的 IP 地址。您还需要指定监听端口:例如192.168.1.4:8000
如果您不知道 IP 地址是什么,您可以使用类似的方法ip addr show
来查找。