科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道Win2k NAT的详细解说

Win2k NAT的详细解说

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

看到很多朋友很关心端口映射(port mapping),来跟大家讨论一下portmapping,讲讲我自己试出来的心得.

作者:中国IT实验室 来源:中国IT实验室 2008年6月9日

关键字: NAT 网络地址转换 什么是nat

  • 评论
  • 分享微博
  • 分享邮件

  看到很多朋友很关心端口映射(port mapping),来跟大家讨论一下portmapping,讲讲我自己试出来的心得 

  先看一下图:

 

在win2k server的routing and ras服务里面可以设置port mapping(端口映射)

  在我这个例子里面,win2k server这台机器是192.168.0.1,用DSL上网; 

  192.168.0.2是XP PRO 

  192.168.0.222是一台LINUX 

  除了WIN2K SERVER是直接上网外,其它两台是用共享的方式(就是把网关设成192.168.0.1,可以手动,也可以用DHCP服务器配置参数) 

  现在,希望不在家时,可以连上xp pro的remote desktop,以及linux上的smtp, pop3邮件服务,还有ssh。简单说,我想透过网关这台机器,连接到内部的xp pro以及linux的指定端口。 

  设置就象图里面这样。举几个例子: 

  网关的4000号被映射到xp pro的3389。3389是xp的remote desktop以及2k server的terminal service用的端口。用4000的原因是不想和网关自己的terminal service冲突。这样,如果直接用terminal service 

  client连接网关,将进入2k server 的TS,连接网关的4000将可直接从外面操纵xp pro的远程桌面。至于如何在ts客户端指定端口,请看下一贴的图。 

  25252是在XP上的某个软件使用的端口(是我在XP上运行的一个DB SERVER)。我把网关的同一端口映射过去,这样就好象这个服务是长在网关上一样,对客户端来说无法确切分辨出服务到底在哪台,直接使用就行。 

  110是POP3, 25是SMTP, 22是sshd。同样,把网关的同一端口映射(因为和网关本身的服务不冲突)到LINUX上,这样,就好象你的网关直接安装了pop3, smtp, sshd一样。可以用ssh连接回家,操作那台linux。相当方便。 

  这样映射有些限制和注意事项: 

  1、你自己必须对网关有操纵权,比如,自己家里上网至少有一个真正的IP来当网关。如果ISP分配给你的就是内网IP,那理论上就要和ISP商量,让他们把GATEWAY的PORT映射过来。实际上应该是不可能的。 

  2、我举的例子是用win2k server里面的ROUTING/RAS带的NAT来做internet共享。如果你用pro的ics(internet连接共享,实际 

  上是ROUTING服务简化版),没有直接设置这些的地方,但听说可以改注册表让ICS实现如上的映射。具体情况,请在GOOGLE或DEJA.COM上用ics port mapping registry等字样搜索。我记得有不少。 

  3、内部那些要被映射的机器(象我例子的192.168.0.2, 0.222),IP地址要固定,否则要每次改port mapping设置。默认情况下routing/ras有一个DHCP子服务器,实现类似DHCP的功能,并自动配置客户机的网关。这样不太方便。方法一是直接在客户端上手工设置,方法二是安装真正的DHCP SERVER,用MAC地址(网卡硬件地址)来“预约”IP地址。比如,我192.168.0.2这台机器网卡MAC是11:22:33:44:55:AA,我就在DHCPSERVER 上设置,让这个MAC永远得到192.168.0.2这个地址。客户端可以保留自动设置的简单性。具体请看dhcp 的reservation。真正的DHCP服务是有很多功能的,不光是分配IP,还可以配置客户机的TCPIP参数,比如DNS,网关等等。 

  4、简单服务可以很方便的找出所用端口并映射,但有很多服务使用动态端口,就很麻烦。比如netmeeting 是用动态的端口。如果要用内部机器来接受netmeeting请求的话,要把网关的“所有”未用端口映射过去。 

  理论上是可能的,但WIN2K的这个ROUTING服务好象没有映射端口范围的方法……也许其它ROUTING服务软件有。 

  另外就是FTP,现在很多用PASV模式,这个模式的特点,是用21端口连接后,另外随机分配一个端口来进行数据传输。因此只映射21是无法用PASV的FTP的。如果要映射FTP服务,需要要求客户端使用PORT而不是PASV 模式。

  这张图是用terminal service/remote desktop连接非默认端口的方法。很简单,在IP后加上冒号端口就行。文档没看到有,试试就知道了。 

  另外2k terminal service client和xp remote desktop基本上是一回事,因此客户端也通用。现在不要再安装2K生成出来的那个客户端了,太老。最方便的方法,是把XP的system32下 

  mstsc.exe 

  mstscax.dll

  两个文件复制到任何机器上(95,98,NT,2K,XP),运行mstsc就可以连接了。这个程序不需要安装。 

  XP带的客户端有些好处,比如,如果服务器也是XP的话,可以达到16位/24位颜色,而2K带的那个最老的客户端只有256色。不过2K的TS服务只支持到256色,所以不管用哪个客户端都是完全一样的。 

  我用raspppoe 0.96。用Routing/RAS做共享一切正常。 

  用Routing/RAS来做有个地方要注意,设置时有一步是一个对话框有五六个选项,有一个是“允许使用明文/未加密的密码”,一定要勾上。否则无法连接。大部分的DSL服务器是使用明文密码的。我当时也试了很久才发现这个选项 

  如果设置时没选 上,现在改也来得及。看图:


 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章