我有一个 ADSL 路由器和用于 ISP 公共 IP 的静态 IP。我需要在 ubuntu 服务器中设置这个公共 IP,然后我才能访问该服务器的站点世界。
请指导我,我是 Ubuntu 服务器的新手
答案1
您的 ISP 会影响您的 ADSL 路由器的公共 IP。
您的 ADSL 路由器会影响您的 ubuntu 服务器的“私有”或本地 IP。
您可以说您的 ubuntu 服务器位于您的 ADSL 路由器“后面”。
如果您已将 ubuntu 服务器连接到 ADSL 路由器,则 ubuntu 服务器应该具有本地 IP。
要检查你的 ubuntu 服务器的 IP,请在其上运行以下命令:
ifconfig
结果你应该看到类似这样的内容
eth0 Link encap:Ethernet HWaddr d0:50:99:8e:0c:54
inet adr:192.168.1.23 Bcast:192.168.1.255 Masque:255.255.255.0
adr inet6: fe80::d250:99ff:fe8c:c79/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:2008950 erreurs:0 :0 overruns:0 frame:0
TX packets:2299433 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:1001461226 (1.0 GB) Octets transmis:492411283 (492.4 MB)
在哪里因特网地址是您的本地 IP。(此处为 192.168.1.23)
现在,如果您想从外部访问您的服务器,您必须启用到您想要访问的应用程序的端口转发。
例如,如果您想在 ubuntu 服务器上运行 Web 服务器,则必须将端口 80 转发到您的 ubuntu 服务器。
例如,假设:
- 您的公网 IP 是
85.191.215.47
- 您的私有 IP 是
192.168.1.23
- 访客公网 IP 是
97.176.24.123
当有人想要访问你在 ubuntu 服务器上架设的网站时,他会请求:http://85.191.215.47
但是我们都知道所有的浏览器都会把它转换成这样,http://85.191.215.47:80
因为 80 是网站的默认端口。
您的 ADSL 路由器收到来自 的请求97.176.24.123
,将请求从其公共接口转发到192.168.1.23:80
,即您的 ubuntu 服务器,就是这样,有人从外部与您的 ubuntu 服务器进行通信!
要启用端口转发,您必须搜索如何为您的 ADSL 型号执行此操作,搜索“路由器型号 XXX 上的端口转发”并按照步骤操作。
这是通过在特定应用程序上启用端口转发来从外部与您的 ubuntu 服务器进行通信的方式。
如果您希望每次都能访问您的公共 IP,则取决于您的 ISP 是否永远提供静态 IP 或在您重新启动 ADSL 路由器时更新它,这可能会有所不同。
最好的方法是配置一个动态域名系统。
- 在一些网站上注册http://www.noip.com,创建域名(例如:myubuntuserver.ddns.org)
- 在您的 ADSL 路由器中找到一个 DynDNS 部分并用您的 noip 凭据填充它,这样,当您的 ISP 为您提供新的公共 IP 时,您的 ADSL 路由器将警告 noip。
最终,您可以使用以下方式访问您的 ubuntu 服务器网站http://myubuntuserver.ddns.org