基于Nat公网客户端访问私网Server的实现分析

时间:2022-07-11 05:35:07

基于Nat公网客户端访问私网Server的实现分析

摘要:本文讲述了什么是Nat技术、Nat技术的分类及实现原理,为了实现在没有私网主机主动触发连接公网主机的情况下公网主机可以成功访问私网主机,引入了Nat Server技术,就公网客户端访问私网主机以Telnet做作为案例进行实现。

关键词:Nat;Nat Server;地址转换;Telnet

0背景

南昌工程学院网络实验室,因实验访问Internet需要分配无需客户端登录的10.0.0.0网段的私有A类IP地址。该网段的IP经过NAT技术转换为学校申请到的公网IP访问Internet。为了满足学生NAT转换实训教学和其它教学业务的需求进行实现。

1什么是Nat技术

随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。为了解决IPv4地址短缺的问题,IETF提出了NAT(Network Address Translation, 网络地址转换)解决方案。IP地址分为公有地址和私有地址,公有由IANA统一分配,用于Internet通讯;私有地址可以自由分配,用于私有网络内部。NAT技术的主要作用是将私有地址转换成公有地址,使私有网络中的主机可以通过共享少量公有地址访问Internet。在ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。

借助于NAT,私有(保留)地址的“内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。

Nat是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。虽然NAT可以借助服务器来实现,但考虑到实验室实现现状,我们以在路由器上接入来进行实现分析的。与NAT相关的标准有RFC2663、RFC3022、RFC3027等,其中RFC3022是关于传统NAT的标注,它详细描述了传统NAT的分类和实现机制。

2Nat分类

Nat有三种实现方式,分别是静态转换(Basic Nat )、网络地址端口转换(NAPT)、基于接口地址转换(EASY IP)。

2.1Basic Nat它只对数据包的IP层参数进行转换

配置Basic NAT时,首先需要配置一个公网地址池,为私网用户动态分配公网地址。地址池是一些连续的公网IP地址集合。地址池配置由nat address-

group命令完成。

地址池配置:nat address-grou group-number star

t-addr end-addr

如果地址的起始IP地址start-addr与结束IP地址end-addr相同,则表示地址池只有一个地址。

然后需要配置一个ACL,用于匹配需要被NAT转换的报文。ACL的配置与用于包过滤的ACL没有区别。被ACL允许(permit)的报文将被进行NAT转换;被拒绝(deny)的报文不会被转换。

2.2NAPT

在Basic NAT中,内部地址与外部地址存在一对一的关系,即同一个外部地址在同一个时刻只能分配给一个内部地址。它只是解决了公私网通信的问题,并没有解决公网IP不足的问题。NAPT(网络地址端口转换)对数据包的IP地址、协议类型、传输层端口号同时进行转换,可以显著提高公网地址的复用的能力,从而节约了公网地址。

其配置方法与Basic NAT基本相同。只是在网络地址转换操作命令:

nat outbound acl-number address-goup group-nu

mber no-pat

取消掉关键字no-pat。no-pat表示只做一对一的地址转换,且只转换地址数据包的地址而不转换端口。

2.3EASY IP

无论是在Basic NAT、NAPT配置中都需要创建公网地址池,也就是必须预先得到确定的公网IP。而在拨号接入网中,公网IP是由运营商动态分配的,无法事先确定。解决这个问题,就要引入Easy IP特性。

Easy IP也成为基于接口的地址,工作原理同NAPT相同。但是Easy IP直接使用相应公网接口的IP地址作为转换后的源地址。Easy IP适用于拨号接入等动态获得公网IP地址的场合。

3Nat Server引入

从Basic Nat和NAPT的工作原理可知,私网主机主动访问公网主机才能触发建立连接。公网主机不能主动向私网主机发起连接。从安全性上讲Nat隐藏了私网的内部结构,起到了屏蔽主机的作用。但是在现实应用中,在使用Nat的同时,内部网络可能要对外部提供服务,例如Web、Ftp服务等,常规的Nat就无法满足了。为了满足公网客户端访问私网服务器的需求,需要引入Nat Serve特性。

4Nat Server案例实现

配置Nat Server时,需要指定协议类型、公网IP和端口、私网IP和端口,这些配置通过在通向公网的出接口的接口视图下使用Nat Server命令实现。

HOSTA是一台Telnet Server私网地址为10.0.0.1,由端口23提供Telnet服务。在RTA上位HOSTA静态映射公网地址198.76.28.11和协议端口。配置如下:

【RTA】interface ethernet0/1

#在出接口将私网服务器地址和公网地址做一对一NAT 映射绑定

【RTA- ethernet0/1】Nat server protocol tcp global 198.76.28.11 telnet inside 10.0.0.1 telnet

5总结

通过以上实验我们可以得出结论,Nat Serve是将私网地址/端口映射成公网地址/端口,以供公网客户端访问。当然Nat Serve并非是一种独立技术,而是Basic Nat和NAPT的一种具体应用而已。Nat技术的本身也只是一种过渡技术,无法从根本上解决地址空间不足的问题,解决地址供需问题的最有效方法是采用支持更大地址空间的下一代IP技术,即IPv6,它提供了几乎取之不尽的地址空间,是下一代Internet的协议基础。

参考文献:

[1] 谢希仁.计算机网络(第五版)[M].北京:电子工业出版社,2009.

[2] 胡胜红,毕娅.网络工程原理与实践教程(第二版)[M].武汉:人民邮电出版社,2008.

[3] 陈建锐.基于Boson Netsim 的网络地址转换实验教学设计[J].实验室研究与探索,2010,29(4):59-62

[4] 李领治,陆建德.基于NetSim 的计算机网络实验教学方案[J].实验技术与管理,2009,26(2):150-153.

[5] 禹龙,田生伟.网络地址转换技术( NAT) 及其在校园网中的应[J]. 计算机工程,2004,30(6):192-194.

上一篇:论新闻的群众路线 下一篇:基于平衡计分卡的个人绩效考核应用