开启内网服务器对外发布之门──端口映射

网络与通信

问1:我家有3台计算机,A计接入Internet,B、C机共享A机的Internet连接上网。现在我在C机上架设了一个FTP服务器,怎么样才能让我的朋友从Internet上访问到这个FTP服务器呢?
问2:我在单位做网管,在局域网内部架设了Web服务器。现在单位的局域网已经接入了Internet,可Internet接入计算机和Web服务器又不是同一台计算机,我该怎么将这个Web服务发布到Internet上,让更多的人能够访问它呢?
答:端口映射能够帮你们达成愿望!
问:端口映射实现起来很复杂吧?
答:不!实际上只要简单的几步操作。

一、端口的作用

既然提到了端口映射,就得先说说端口。
端口是用来标示不同的网络服务的,它和计算机的IP地址相结合,可以惟一地标示一台计算机上的某一个网络服务(Web服务、FTP服务等)。例如“IP地址202.202.1.1+端口号80”通常标示着IP地址为202.202.1.1这台计算机上的Web服务,而202.202.1.1+端口号21则通常标示着IP地址为202.202.1.1这台计算机上的FTP服务。而外部用户必须知道提供网络服务的计算机的IP地址和服务对应的端口号,才能对该服务进行访问。例如,当我们需要访问IP地址为202.202.1.1的这台计算机上的Web服务时,就必须在IE中输入“http://202.202.1.1:80”。但当采用默认端口号时(默认的Web服务端口号为80),访问地址中可将端口号省略。

二、为什么要作端口映射

对于单独一台连接Internet的计算机来说,当然不需要作什么端口映射。然而现实中,出于节省费用、节约IP资源、提高安全性以及方便管理等方面的考虑,家庭用户及大多数单位都是采取局域网共享一个Internet连接的方式来上网。这时就存在一个问题:局域网中除了Internet接入计算机(网关,或是代理服务器)具有公有IP地址外,其他计算机都只有私有IP地址,在这些计算机上架设的各种服务根本无法接受来自外网(Internet)的访问。只有将局域网中各计算机端口对应的服务关联到Internet接入计算机的某个特定端口上,才能够让来自外网的用户通过这条间接的途径访问到这些服务──而这也正是端口映射的原理(图2)

图2
图2

三、端口映射手把手

在此笔者结合本单位实例,以常用的网关软件SyGate Office Network配合简单易用的端口映射软件PortTunnel来向大家讲解如何使用端口映射技术来解决局域网内服务器对外发布的问题。

1.网络环境

笔者所在单位的机房约有50台计算机,内部组建了局域网,并采用2Mbps的ADSL接入Internet。Internet接入计算机安装了Sygate Office Network成为网关计算机,其他计算机(以下称“客户机”)通过它上网。
在局域网IP地址分配上,我们采用了固定IP地址192.168.1.x(x为1~255的自然数),子网掩码255.255.255.0。其中网关计算机的IP地址为192.168.1.1。现在,只有网关计算机具有公有IP地址,能够直接接受来自外网的访问。
单位要架设Internet Web服务器和FTP服务器,但为了安全起见,我们没有直接在网关计算机上安装Web和FTP服务,而是分别把它们安装在两台客户机上。Web服务安装在IP地址为192.168.1.2的计算机上,端口使用了默认的Web服务端口80;FTP服务安装在IP地址为192.168.1.3的计算机上,端口使用默认的FTP服务端口21。架设好后,局域网内的用户虽可以通过相应的私有IP地址对它们进行访问,但外网用户却无法访问它们。下面,我们便要配置端口映射。

2.PortTunnel配置端口映射

我们可以从http://www.onlinedown.net/portTunnel.htm下载到端口映射软件PortTunnel的中文版,然后在网关计算机上运行。
1)针对Web服务的端口映射配置
在PortTunnel的主界面下点击“增加”按钮,弹出“增加/编辑端口映射”对话框,并默认处于“常规”标签页下。
在该标签页的“名字”输入框中输入便于识别的名字,例如本例中的“WEB服务器”。然后,在“输出地址”栏中填写Web服务器的私有IP地址192.168.1.2,并在“输出端口”栏中填写Web服务器的Web服务端口80;而在“输入端口”栏中要填写的,就是网关计算机上希望为Web服务开启的端口,也就是Internet用户访问该Web服务要用到的端口,例如本例中的80;最后,我们需要绑定外网IP地址。如果你采用固定公有IP地址接入Internet,则请在该栏中输入该IP地址;由于我单位的ADSL是虚拟拨号方式,也即是采用动态公有IP地址,所以我们将捆绑地址设为Any(0.0.0.0)(图3)

图3
图3

设置好后点“确定”按钮保存设置。
2)针对FTP服务的端口映射配置
配置方式与针对Web的配置类似,具体配置如(图4)所示。
图4
图4

当两个端口映射都配置好并激活以后(图5),处于Internet上的外网访问者就可以直接用“http://Internet接入IP地址”或“ftp://Internet接入IP地址”的格式通过网关计算机来访问处于局域网中的Web或FTP服务器了。
图5
图5

注意:配置Web服务输入端口号为80的前提是网关计算机上没有运行Web服务,否则请更换其他端口,例如“1080”。而且,若输入端口不是默认的Web服务端口80,那么访问者必须通过IP地址+端口号的方式,如“http://Internet接入IP地址:1080”来访问你的网站。
配置FTP服务的注意事项与上同。

小知识

1.我们必须牢记:“一个IP地址+一个端口号”对应着一个具体的服务。如果在局域网中有多台客户机架设了自己的服务器,并希望通过端口映射发布出去。这时,我们可以用“输入端口”加以区分。例如,在192.168.1.5上架设的Web服务器映射到网关计算机的80端口(外网访问方式为“http://Internet接入IP地址”);而架设在192.168.1.6上的Web服务则可以被映射到网关计算机的1080端口(外网访问方式为“http://Internet接入IP地址:1080”)。
2.常用网络服务端口号列表(图1)

图1
图1