『漫游』酷论坛>『影音数码技术学习交流』>局域网中的机器做公 ..

局域网中的机器做公开服务器的方法

寒武良@2002-02-21 02:26

根据局域网连接因特网方式的不同在此分别解说:
1、接口
1.1、通过因特网共享器(因特网拨号器、因特网路由器)或者服务器使用sygate,winroute等方式,包括路由器加adsl或isdn模块拨号上网的,通称浮动ip路由上网。
1.2、通过因特网共享器或者服务器使用wingate,ms-proxy等方式代理上网。
1.3、ddn或者其他线路专线(isdn回拨,adsl热线等)固定ip路由上网。
2、防火墙
2.1、需要通过或者只通过网关式防火墙。
2.2、需要通过桥式防火墙。
2.3、无防火墙。
首先确定,1.2不可能做公开服务器!
了简化情况,忽略防火墙,说接口。

第一种的浮动IP路由上网,需要确认路由设备(或者软件)有一个反向代理(也有叫反向NAT的),如果有的话,恭喜你;没有的话就没有办法了,至少通过这个路由没办法了。
设定方法是:设定对本地21端口的访问--(目标到)--你机器内部IP的21端口。当然,不一定是21,可以自己设定。如果设备和软件功能不是很好的话,设21会造成其他人不能上FTP,那就改掉,比如8021--221等等。

第三种的固定IP上网,比较好弄。如果是WIN2000,在一块网卡上绑两个IP地址,一个内部,一个公共;其他系统的要两块网卡。配置路由器,可以不对S口设定公共IP,也可以设一个;对Ethernat口设一个公共IP;开放对端口的控制(如果有的话)就可以了,你的机器就是处于公网了。

然后说说防火墙。
桥式防火墙被认为是透明防火墙。可以把它看成过滤膜,只要在设定上打开进出21端口(或者需要的端口)就像没有防火墙一样的。
只通过网关式防火墙:情况和浮动IP路由上网一样,要有反向代理。
既要通过路由器,又通过网关式防火墙的复杂一点。当然还要有反向代理,只是要路由器反向代理到防火墙,再反向代理到你的机器。

實說穿了,即是位址轉換+接口傳遞

位址轉換,即是Network Address Translation(NAT),可以說是一種「幻術」,是在路由器(Router)上經過的封包做手腳。大家或者已知IP封包是有來源地址及目的地址,而NAT就是改變這些地址。NAT有兩種,一是SNAT,另一是DNAT。通常我們見到的網絡分享(Internet Connection Sharing),是其中一種特殊的NAT。而lancelotz說的反向NAT,則是DNAT。

SNAT,顧名思義,是改變來源地址。為什麼要這樣做?有很多原因,但都是要使收到封包的機器誤認來源(這裡說錯誤,是指真實世界而言)。打個比方,我內部網絡計算機是用一些不能見光的IP地址(像私人網地址Private Network Address),正常而言,我送出一個封包,來源地址一定是那些不見光的,人家不能回應我的封包。為了解決這問題,我每一次傳封包出去時我的路由器便把來源地址改成見得光的地址(公用地址Public Address),人家便可以回應我吧?但為了完成這一個Loop,路由器會記下這次的連線,回應的封包,會以DNAT(以下再說)的方法去傳回送件者。

SNAT,則是改變目的地。之前說過回應的封包要以DNAT的方式再轉換一次,其實是須要的。因為之前說過內部的電腦是用私人而不見得光的地址,而要變成公用的地址。那麼當封包回來內部網絡時,可不是要改回私人地址吧?

以下有兩個小圖是給大家明白:

          在此SNAT
┌──┐     ┌───┐      ┌───┐
│內部│ ->  │路由器│  ->  │外界 │
└──┘     └───┘      └───┘
    來源地址是      來源地址是
    用私人地址      用公用地址
     的封包        的封包


          在此DNAT
┌──┐     ┌───┐      ┌───┐
│內部│ <-  │路由器│  <-  │外界 │
└──┘     └───┘      └───┘
    目的地址是      目的地址是
    用私人地址      用公用地址
     的封包        的封包

注意:路由器是同時布私人地址及公用地址


而接口傳遞,Port Forwarding,則比較簡單。它所做是,只是傳遞的工作。而它會長期監視某一個接口,打個比方,第21個(FTP)。而當有任何的封包到達這接口時,它會把這封包傳給預定的目標,可以是同一台機器的另一個接口,或者另一台機器的接口。當然,也要用到DNAT。但今次不只改地址,連目的接口也改去。

引用

局域网中的机器做公开服务器的方法

stanlywang@2002-02-21 06:47

“设定对本地21端口的访问”是大概一什么方式呈现的?
引用

局域网中的机器做公开服务器的方法

史莱母国王@2002-02-21 07:20

电信会让你开嘛,别做梦了。
引用

局域网中的机器做公开服务器的方法

haohudog@2002-02-21 07:46

引用
下面引用由史莱母国王2002/02/21 07:20am 发表的内容:
电信会让你开嘛,别做梦了。

是吗?这么恶劣?
引用

局域网中的机器做公开服务器的方法

史莱母国王@2002-02-21 09:05

引用
下面引用由haohudog2002/02/21 07:46am 发表的内容:
是吗?这么恶劣?

我们这里的宽带就是为了安全,为了不让你开公网的FTP才使用内网的形式的,不然他的初衷不是白做了。还不如开始的时候就给我们公网IP,多省事啊。你说是不?
引用

局域网中的机器做公开服务器的方法

yaana@2002-02-21 11:56

引用
下面引用由史莱母国王2002/02/21 09:05am 发表的内容:
我们这里的宽带就是为了安全,为了不让你开公网的FTP才使用内网的形式的,不然他的初衷不是白做了。还不如开始的时候就给我们公网IP,多省事啊。你说是不?

我想是因为公网IP不够才发展内网的吧,毕竟在IPv4的时代再想申请一个B类地址不是那么容易的事:em10:.....................
引用

局域网中的机器做公开服务器的方法

史莱母国王@2002-02-21 12:28

引用
下面引用由yaana2002/02/21 11:56am 发表的内容:
我想是因为公网IP不够才发展内网的吧,毕竟在IPv4的时代再想申请一个B类地址不是那么容易的事.....................

有这方面的原因,但不是全部,还有就是方便管理和提供服务,因为我们这里本地的在线影院速度还不错,但这只对我们内网的开放。外网的进不来,所以服务器就省下很多带宽和资源。
引用

局域网中的机器做公开服务器的方法

hpdts@2002-02-21 15:29

内网IP地址也有好处的说
引用

局域网中的机器做公开服务器的方法

webug@2002-02-22 12:46

没有公网的ip,也不可能端口映射,做了服务器出来也没有用。
引用

局域网中的机器做公开服务器的方法

tbtjufeng@2002-03-01 00:42

能不能再说明白一点,最好能把用什么软件和设置一步一步的说一下,为了方便我们这些菜鸟!!
引用

局域网中的机器做公开服务器的方法

tbtjufeng@2002-03-01 00:50

能不能映射27015这个端口???我想建立cs服务器!!
引用


| TOP