网络安全 频道

【安全大讲堂之UTM】网络地址转换技术

    网络地址转换就是将一个IP地址用另一个IP地址代替。尽管最初设计网络地址转换的目的是为了增加在专用网络中可使用的IP地址数,但是它有一个隐蔽的安全特性,如内部主机隐蔽等,保证了网络的一定安全。网络地址转换主要用在两个方面:

  •     (1)网络管理员希望隐藏内部网络的IP地址。这样,互联网上的主机无法判断内部网络的情况;
  •     (2)内部网络的IP地址是无效的。这种情况主要是因为现在的IP地址不够用,要申请到足够多的合法IP地址很难办到,因此需要转换IP地址。

    在上面两种情况下,内部网对外面是不可见的,互联网不能访问内部网,但是内部网主机之间可以相互访问。而应用网关可以部分解决这个问题,例如,可以隐藏内部IP,一个内部用户可以Telnet到网关,然后通过网关上的代理连接到互联网。但应用层网关有它的缺陷,要为每一种应用定制代理,如果没有为某种服务提供入站或出站的代理,这种服务就不能使用。由于代理是不透明的,因此即使合法的出站用户通过应用网关,也会给网关带来很大的开销。这是因为代理对数据包转发是在应用层进行的,一旦通过代理建立起到目标主机的连接,那么代理一般就不做控制了。

    网络地址转换可以提供一种透明的完善的解决方案,网络管理员可以决定哪些内部的IP地址需要隐藏,哪些地址需要映射成为一个对互联网可见的IP地址。网络地址转换可以实现一种“单向路由”,这样就不存在从互联网到内部网或主机的路由。

    网络地址转换的工作机制是当网络数据包流入UTM时,系统会检查该数据包是否符合用户设定的网络地址转换规则,如果找到符合的规则,系统会按照规则对数据包进行转换,同时建立一个网络地址转换进程。当有数据包返回时,将检查进程表,进行相应的处理。这里可以看到,网络地址转换需要对每一个TCP/IP连接建立一个对应的网络地址转换进程表项。假如不对查询算法进行优化,则在访问量大的情况下,查询网络地址转换进程表项将会占用大量的CPU时间。

    在网络地址转换图(如图1所示)中的10.0.0.1主机处于内部网,网关为UTM内部接口10.0.0.2,UTM外网接口IP地址是202.112.108.1,互联网上有一台服务器的IP地址是202.100.10.50。用户机10.0.0.1通过UTM的网络地址转换才能访问服务器202.100.10.50,下面介绍网络地址转换的过程。

 

    图1  网络地址转换图

    在不同网段IP地址的转换情况如表3-1所示,内部地址是10.0.0.0子网,UTM网关对外部的地址是202.112.108.1,可以将内部网的地址都转换成202.112.108.1出去。但这会遇到一个问题,所有返回数据包的目的IP都是202.112.108.1,那么UTM如何识别它们并送回内部网的真实主机呢?可以让UTM记住所有出去的包,因为每个包都有一个目的端口,每台主机的端口可能都不一样。还可以让UTM记住所有出去的包的TCP序列号,不同主机发送的包的序列号不一样,UTM会根据记录把返回的数据包送达正确的发送主机。

    表3-1  不同网段IP地址的转换 

 

0
相关文章