局域网中的机器做公开服务器的方法
寒武良@2002-02-21 02:26
根据局域网连接因特网方式的不同在此分别解说:第一种的浮动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
引用下面引用由haohudog在 2002/02/21 07:46am 发表的内容:
是吗?这么恶劣?
局域网中的机器做公开服务器的方法
yaana@2002-02-21 11:56
引用下面引用由史莱母国王在 2002/02/21 09:05am 发表的内容:
我们这里的宽带就是为了安全,为了不让你开公网的FTP才使用内网的形式的,不然他的初衷不是白做了。还不如开始的时候就给我们公网IP,多省事啊。你说是不?
局域网中的机器做公开服务器的方法
史莱母国王@2002-02-21 12:28
引用下面引用由yaana在 2002/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服务器!!