我还需要做什么才能从外界在我的计算机上查看该网站?

我还需要做什么才能从外界在我的计算机上查看该网站?

在我家,我有一台通过以太网电缆连接到调制解调器/路由器的台式机。在这个 Ubuntu 16.04 台式机上,我正在运行一个网络服务器0.0.0.0:8000,因此当我在这个台式机上的浏览器中访问时http://0.0.0.0:8000/directory/,我会看到我正在服务的网站。我想从我家以外的其他计算机连接到这个网站。

我目前已完成的步骤:

  1. 打开桌面上的防火墙sudo ufw allow 8000,允许外界连接到我的计算机。

  2. sudo gedit /etc/network/interfaces通过添加以下我从以下位置获得的数字来为我的桌面设置静态 IP 地址ifconfig

    iface eth0 inet static
     address (with the inet number here)
     netmask (with the Mask number here)
     gateway (with the Bcast number here)
    
  3. 在我的路由器中添加了端口转发,其值如下

    Service Type: TCP/UDP
    Server IPv4 Address: (same as inet/address number above)
    Server IPv6 Address: (has some numbers here for the first 4 then 4 blank ones, maybe this is what I'm missing?)
    Start Port: 8000
    End Port: 8000
    

在路由器管理中,我看到一个 WAN IP 地址,xx.xxx.xx.xx

所以,现在我已经完成了所有这些,我希望xx.xxx.xx.xx:8000在手机未连接到 WiFi 时,通过手机浏览器访问我漂亮的小网站,就像我在桌面浏览器中看到的一样。然而,我得到的却是“无法连接到服务器”。真伤心!

有人能看到我遗漏的任何步骤或错误配置,从而阻止我访问我的网站吗?

编辑:由于 @tetsujin 的评论,我已将本地计算机上的服务器更改为托管在http://127.0.0.1:8000

答案1

我不确定这是否是打字错误,但确实,我看到了错误配置。

在您放在桌面上的静态 IP 配置中,您说您使用“Bcast 号码”作为网关。

这不对。网关是路由器的 IP 地址。如果没有正确的网关 IP,您也无法从桌面访问互联网。

另外,需要注意的是,您不应重复使用现有的动态 IP 并将其设置为桌面上的静态 IP。您的路由器有一个可用的 IP 地址池,它通过 DHCP 动态地将这些地址分配给每个设备。您需要选择一个超出此范围的静态 IP 地址。如果您重复使用路由器动态提供给您的 IP 地址,它很可能会最终将该 IP 地址分配给其他设备并导致 IP 地址冲突。

检查您的路由器配置,确定它可用于 DHCP 的 IP 池,如有必要,将其修改为较小的范围,然后在您的桌面上设置一个新的静态 IP(位于 DHCP 范围之外),并确保在您的静态 IP 配置中为网关地址指定路由器的 IP 地址。

答案2

  1. 0.0.0.0 是互联网上的所有地址
  2. 你需要在互联网的 ISP 端设置静态 IP
  3. 然后你可以设置你的调制解调器/路由器,将 IP 转发到你的本地机器或创建 DMZ

相关内容