【问题标题】:Can't access computer by IP or name over network无法通过 IP 或名称通过网络访问计算机
【发布时间】:2018-07-14 17:31:24
【问题描述】:

我一直在网上搜索我的问题的答案,即为什么我无法使用我的 IP 地址或另一台设备的主机名访问在本地运行 NodeJS 应用程序的计算机。

listen(80, 'my ipv4 address')

这是我尝试过的: 完全关闭专用网络上的防火墙, 允许在两台计算机上进行网络发现(它已经打开), 通过端口 80 监听我的 IPV4 地址, 仔细检查两个设备是否通过同一个路由器, 并尝试通过 ipconfig 中指定的主机名访问我的 Web 应用程序

我可以完美地在本地访问我的计算机(如您所料),但是当我尝试从另一台计算机访问它时,它告诉我无法访问该站点并且响应时间过长。

有人回答这个问题吗?

【问题讨论】:

  • 你的电脑操作系统是什么?也许是本地防火墙或恶意软件程序?你能从另一台电脑ping IP 地址吗?你能跟踪路由 IP 地址吗?
  • 我使用的是 Windows 10。我可以尝试从另一台计算机 ping,但它超时,这让我认为这是我计算机上运行的防火墙的问题。尝试从另一台计算机跟踪路由也会超时。
  • 默认情况下,Windows 10 客户端都有一个本地防火墙,可以阻止传入服务器的连接。您需要为您正在运行的进程/端口设置一个例外。有关如何做到这一点的一些信息:tomshardware.com/faq/id-3114787/…
  • 谢谢!那行得通。显然,我所在的网络被认为是公共网络,而实际上并非如此。
  • 另外,除非您正在做一些非常具体的事情,否则不要为监听调用指定主机参数。只需传递端口号即可启用侦听所有适配器上的传入连接。 myServer.listen(80);

标签: node.js ip


【解决方案1】:

我将我的评论作为答案发布,因为它导致了您的解决方案:

默认情况下,Windows 10 客户端都具有本地防火墙,可阻止传入服务器的连接。您需要为您正在运行的进程/端口设置一个例外。有关如何在此处执行此操作的一些信息:http://www.tomshardware.com/faq/id-3114787/open-firewall-ports-windows.html

以下是该文章中的一般步骤:

在 Windows 10 中打开防火墙端口

您可以通过打开防火墙端口手动允许程序访问 Internet。您将需要知道它使用的端口以及实现此功能的协议。

  1. 导航到控制面板、系统和安全以及 Windows 防火墙。
  2. 选择高级设置并突出显示左侧窗格中的入站规则。
  3. 右键单击入站规则并选择新建规则。
  4. 添加需要打开的端口,点击下一步。
  5. 将协议(TCP 或 UDP)和端口号添加到下一个窗口中,然后单击下一步。
  6. 在下一个窗口中选择允许连接,然后点击下一步。
  7. 选择您认为合适的网络类型,然后单击下一步。
  8. 将规则命名为有意义的名称,然后单击完成。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,在 Windows 10 上通过 IP 地址(如 192.168.xx.xx/MyService)访问 WCF 服务。我无法通过系统的 IP 地址访问 localhost,我尝试了所有阻止防火墙的方法,创建了提到的入站规则上面但没有工作。然后我在运行 Windows 10 的不同笔记本电脑上部署了具有相同设置的相同服务,并且该服务运行良好。所以这意味着那个 Windows 10 存在问题。

    【讨论】:

    • 其实这只是猜测,实际上并没有什么有用的建议。
    • 这稍微缩小了问题的范围,但实际上并没有解决它。 “使用另一台机器”充其量只是一种解决方法,而不是每个人都可以或想要使用的解决方法。
    猜你喜欢
    • 2013-02-05
    • 2020-11-20
    • 2013-04-03
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    • 2017-10-25
    相关资源
    最近更新 更多