如何才能使我的网站无需静态 IP 并通过虚拟机即可访问互联网?

如何才能使我的网站无需静态 IP 并通过虚拟机即可访问互联网?

我有 Windows 8 主机,并且已经在 Vmware 中安装了 ubuntu 14.10 服务器作为虚拟机。我已经安装了 LAMP 服务器,并试图从中托管一个网站。我已经创建了一个虚拟主机。当我转到地址 192.168.0.106 时,可以在主机上访问我的网站。

我已经通过 wifi 路由器连接到互联网。我没有静态 IP。当我转到路由器信息时,我得到了以下信息:

局域网

MAC 地址:B0:C5:54:83:90:FA

IP地址:192.168.0.1

子网掩码:255.255.255.0

DHCP 服务器:已启用

互联网

MAC 地址:B0:C5:54:83:90:FB

IP地址:10.30.195.241

子网掩码:255.255.224.0

默认网关:10.30.192.1

DNS:113.193.5.23

113.193.12.14

当我在 Google 中搜索“我的 IP 是什么”时,我得到的结果是:113.193.56.198,无论是在主机操作系统还是在客户机操作系统中。

现在,我的问题是如何从互联网访问我的网站?我知道我必须在 ubuntu 中编辑 hosts 文件和虚拟主机配置文件,但我必须使用哪个 ip 地址?我需要设置 dns 服务器吗?我在 godaddy 注册了一个域名,我想知道在域名设置页面的“指向”中应该输入哪个 ip 地址。

基本上,我想知道我应该在地址栏中输入哪个 IP 地址来访问我的网站,即使它只能使用一天,以及如何在 ubuntu 中编辑 hosts 文件和配置文件以使用该 IP。我尝试在许多论坛中搜索,但没有找到我需要的那种清晰度。

答案1

简短回答:不能

长答案:我知道的唯一方法是使用动态 DNS 服务器,但据我所知,没有免费的动态 DNS 可以与自定义域名一起使用。而且解决方案太俗气了,付费使用固定 IP 更合理。

普通 DNS 永远不会起作用,因为通常您的 IP 变化速度比 DNS 传播速度更快。

无论如何,您都需要在浏览器(1)中输入您的公共 IP(现在为 113.193.56.198)才能访问您的网站,这就是您应该在域页面的“指向”中输入的内容。

(1) 要使此功能在您的 LAN 中工作,您需要干预 DNS 设置和主机文件。您可以在 LAN 之外尝试,通常最简单的测试方法是断开手机与 wifi 的连接(如果已连接)并从 wifi 上尝试。

答案2

路由器 WAN IP 地址 10.30.195.241 表示您的提供商已对您进行了 NAT(顺便说一句,在某些国家,将此类服务称为“互联网接入”是不合法的):通过其 NAT 路由器为您提供无需全局 IP 地址的互联网访问(10.30.195.241 - 是互联网上不可见的本地 IP 地址)。

一些可能的方法

  1. 如果有的话,向 ISP 支付全局(最好是静态)IP 地址。在路由器上设置到 VM 的 IP 的端口转发。使用该全局 IP 地址访问您的 Web 服务器。
  2. 使用具有全局(最好是静态)IP 的 VPN 服务来绕过提供商 NAT。在 VPN 服务上设置端口转发,如果不可用,则直接从 VM 创建 VPN 隧道。使用该全局 IP 地址访问您的 Web 服务器。
  3. 在 Windows 主机或 Ubuntu 客户机上设置 IPv6 地址,并使用任意IPv6过渡机制连接到 IPv6 互联网。例如,Windows 已为此内置了 Teredo 隧道。使用该 IPv6 地址访问您的 Web 服务器。

此外,您可以添加 DNS 记录以便更轻松地访问 IP 地址或使用 ISP/VPN 服务等提供的 DNS 名称。

答案3

看一下这个网站:自由域名系统它支持开放 DNS 并可以更新自定义域。我将其用于个人网站等,效果很好。

如果您需要任何帮助,我们非常乐意为您提供帮助:)

相关内容