无法使用 IP 地址访问本地服务器,而 localhost 和 127.0.0.1 可以

无法使用 IP 地址访问本地服务器,而 localhost 和 127.0.0.1 可以

我正在尝试让其他计算机访问我的本地服务器,但我在本地尝试过我自己也无法在本地访问

您应该了解以下几点:

我的目标

通过访问我的服务器http://172.26.141.106:5201/

我现在能做什么

我可以通过以下两种方式访问​​我的服务器:

IP 配置

的结果ifconfig | grep inet

      inet addr:172.17.0.1  Bcast:0.0.0.0  Mask:255.255.0.0
      inet addr:172.26.141.106  Bcast:172.26.141.255  Mask:255.255.255.0
      inet6 addr: fe80::f767:cd56:9641:d3a9/64 Scope:Link
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host

主办方

输出cat /etc/hosts

127.0.0.1   localhost.localdomain localhost
127.0.0.1   hearen.pc
127.0.0.1   hearen-OptiPlex-7050
127.0.0.1   staging
127.0.0.1   arthas
172.26.141.106  localhost hearen.pc

防火墙

$ sudo ufw disable
Firewall stopped and disabled on system startup
$ sudo ufw status
Status: inactive

我是不是错过了什么方法?我只想让其他人通过以下方式访问我的服务器http://172.26.141.106:5201/

任何帮助将不胜感激 :)

已更新 2019-01-10

在@Ed King 的帮助下,我检查了端口通过sudo lsof -i -P -n | grep LISTEN | grep 5201并且仅127.0.0.1被收听。

在我将 Angular 服务器配置为监听后问题解决了0.0.0.0

答案1

检查你的服务器是否正在监听:

sudo lsof -n | grep TCP | grep LISTEN

您还可以使用 nc 检查路由。在服务器上启动 nc 并监听未使用的端口,然后从另一台机器进行连接 —— 这将验证 iptables 和路由是否正确。

我猜你只是在本地主机上监听。

答案2

我通过以下方式解决了这个问题:

  1. 我运行命令

    sudo ufw status 
    

    我发现端口 80(就我而言)不在列表中。

  2. 然后我运行命令

    sudo ufw allow 80
    

    这解决了该问题。

相关内容