node 使用listen(86, '0.0.0.0')后,为什么相同局域网的其他电脑不能访问呢

clipboard.png
然后相同局域网的其他电脑为什么访问不到呢,访问我的IPv4 地址加端口号,访问不到,请大神指教!!!!
別人使用这段代码之后,别的电脑就能访问.我的电脑就不行

阅读 8.2k
6 个回答

你要把0.0.0.0修改成你当前主机的IP0.0.0.0只是表明一个host模板

0.0.0.0表示绑定所有接口. 你有多少张逻辑网卡就有多少个IP, 都会被绑定. 0.0.0.0不是实际的IP, 你在某个网内的实际IP你得查一查才知道, 如果你用的WiFi, 一般是第一个无线网卡, 也就是en0, 如果是宽带, 就是eth0, 但是不排除你有多个网卡的情况, 所以ifconfig看一下所有的, 找到有IP的那个就可了.

监听端口一般就是用0.0.0.0。不用具体指定IP,否则IP变了程序都不能跑了嗯。
应该是开了防火墙,什么系统?在设置里找找防火墙,放开80端口。
也可能是有别的程序占用了。netstat -na查一下。

分2部查找原因

  1. 第一步:启动程序的时候,查看是否有端口被占用的情况,如果有会抛出提示的

  2. 第二步:如果第一步没有问题,本机是可以访问的,那么问题就会出在防火墙上面
    2.1 关闭防火墙:简单粗暴,最有效
    2.2 将端口86添加到防火墙允许中

ifconifg 查一下内网ip,换成绑定内网ip可以了。一般都是10.XXX 或是 127.xxx

可能是防火墙的原因。
把端口号改为 0
在 listen 的回调函数中用 server.address().port 获取端口,也看下是否有报错。

推荐问题