NodeJS 和 React - LAN 连接不工作

NodeJS and React - LAN connection not working

描述

我的笔记本上有一个 Node 服务器和 React App 运行 Ubuntu 18.04.
笔记本ip为10.0.0.101

我试图将我的桌面连接到同一网络上的此服务器
桌面ip为10.0.0.100

节点在 PORT=3333
上 运行 React 在 PORT=3000

上 运行

我可以从我的桌面 ping 我的笔记本,但是当我尝试使用 Insomnia 连接到节点或从我的桌面连接到 http://10.0.0.101:3000 时,我无法连接。

错误

当尝试使用 Insomnia 连接到后端时
错误:无法连接到服务器

当尝试连接到 10.0.0.101:3000 上的应用时
ERR_CONNECTION_TIMED_OUT

我做了什么

  1. 我已经更改了节点侦听并指定了端口和 ip,但它没有用。
  2. 我尝试将我的 phone 用作路由器并从我的 phone 连接以在我的笔记本上做出反应,但也没有用。
  3. 我尝试了很多东西,因为我记不住它们。

我也在创建一个反应本机应用程序,当我尝试使用 Expo 连接到我的手机时,它只能使用隧道工作,但无法从后端获取数据。

请救救我
谢谢

经过多次尝试失败后,我意识到问题出在我的笔记本上。 我检查了我的防火墙,发现它被禁用了,但仍然无法通过 LAN 访问我的笔记本电脑。但最后我发现了必须要做的事情

解决方案

您必须为 TCP 流量打开特定端口

Ubuntu:

sudo ufw allow <PORT-NUMBER>/tcp

或红帽企业

firewall-cmd --add-port <PORT-NUMER>/tcp

参考:Examples of how to open firewall ports