NAT助VoIP穿越防火墙

来源:互联网 发布:lust extract mac 编辑:程序博客网 时间:2024/04/30 09:23

NAT构筑于企业防火墙,担当着网络守护神的作用,它是公司内部LAN与外部Internet连接的分界线。
    
    
  如今人们又将NAT引入一个新的应用领域,这就是VoIP安全应用。
    
    
  作为一类标准Internet技术,NAT能实现让内部LAN通信运用一套IP地址,而外部通信采用另一套IP地址。这在现行IPv4协议环境下意义重大,因为受到标题域限制,该协议方式用于标识终端站点的全球IP相当有限。通过分离Internet(公共域)与LAN(专用域)地址,相对于单一的全球地址分配机制来说,很多地址可以节省下来。
    
    
  但如果某个终端用户的专用地址不为LAN以外的其他用户知晓,外部数据流如何才能传送到目标呢?这就是NAT要解决的问题。运用NAT技术,IT主管只需要为整个LAN分配一个公用IP地址,这个地址配置于防火墙,用于接收所有外部通信。防火墙运用NAT对输入通信的IP地址标题进行处理,公用地址随后被LAN中预定进行通信的终端用户专用地址所取代(如果输入通信不符合防火墙配置策略,则将其阻塞)。采用这种方式,网络主管能够运用未注册IP地址连接到Internet,并能与所需的终端用户进行正常通信。
    
    
  NAT技术近年来一直被广泛采纳。一些开发商已引入称为会话边界控制的新技术,它专注于P2P IP应用,这类应用必须穿越防火墙,如VoIP、桌面视频会议、协作计算、在线游戏以及Napster方式共享播放MP3音乐。NAT技术在其中扮演着十分重要的角色,如保证VoIP通信安全和增强QoS及任何VoIP网必备的可管理特性。
    
    
  实现安全VoIP通信
    
    
  很明显,传统的防火墙无法与VoIP协同工作。通常的防火墙配置只接收经内部网请求,或说防火墙信任的外部通信,而VoIP呼叫可以是来自任何未知或未经请求的一方。由于这类呼叫不属于任何一类内部通信请求,因而会被阻塞于外。而且,即使输入通信获得通过,防火墙/NAT也无法确定与哪个终端(合适的IP地址)建立呼叫。 


        
会话边界控制器在服务提供商网络中的工作流程
    
    
  这是因为语音通信中同时包含了数据流和信号流,语音呼叫信息组成了数据流,而信号流则进行呼叫建立和控制,依据的信号协议通常是H.323、会话初始协议(SIP)或媒体网关控制协议(MGCP)。信号信息很容易通过防火墙,因为一般可预留少量端口用于呼叫接入。而对于呼叫本身,由于是基于实时协议(RTP)和采用动态分配UDP端口方式,而不是通常情况下防火墙针对特定用户或应用采用的静态分配方式,因而让VoIP呼叫接入通过意味着为所有通信打开了通道。
    
    
  同样,NAT本身也不能识别输入信号信息包类型。端点间VoIP会话携带有三组双向数据流:信号信息,用于创建、修改和终止会话;包含语音或视频通信的RTP媒体,依据端点动态分配通信端口传输;媒体统计信息,用于测定会话质量。这些信息包具有呼叫方LAN的专用地址,同时它们所携带的相应公用地址又无法为NAT设备所识别,因而也就无法通过。
    
    
  SBC担当防火墙
    
    
  解决这类问题的原理,一是通过在内部为将输出的信号信息包调整专用IP地址,二是为输入信息包创建相关信息列表。简言之,就是利用一类新型设备来更改对等(P2P)通信单元,将它们变换为类似客户端/服务器的协议通信模式,以使网络边界设备能够识别。
    
    
  为什么采用这类方法?这得从VoIP设计原理说起。VoIP自推出以来,已广泛应用于服务提供商核心网,在一些企业LAN中也有一定程度应用(通过IP PBX实现)。但这类IP信息包在整个网络中并不是连续的,因为网络边缘的接入连接通常是采用电路交换TDM,因而VoIP信号在一定程度上是一类孤立信息包,它脱离不了传统的PSTN架构。当呼叫信号以IP PBX方式发出时,必须转换为TDM方式传输到服务提供商IP核心网,随后又被转换为纯IP信号方式。这种来回倒换需要媒体网关的参与,而且会增加时延,降低QoS,最终影响到客户服务,增加服务提供商应用成本(有服务商称,信号转换使通信成本增加到差不多是纯内部IP通信的五倍)。使IP流以内部信号方式遍历整个分离IP网,而不需要在网络边缘将其转换为TDM信号,这个处理过程称为内部IP对等(P2P IP)操作。
    
    
  实现P2P IP操作的处理过程是相当复杂的,它必须使P2P通信流像客户端/服务器通信流那样畅行无阻,同时提高效率。在网络边缘实现TDMIP转换的功能部件称为会话边界控制器(SBC)。SBC可位于现行防火墙的前端,专注于处理大量VoIP作业,以减轻防火墙负荷。它还可工作于服务提供商的本地接入网,用于管理IP业务,如IP Centrex。所有输入通信流都经过SBCSBC在内部LANInternet之间建立了一种仲裁机制,这是通过修改双向信号和封装包来实现的。目标防火墙接收经修正的控制信号和媒体流,然后转发到预定的LAN地址,即使这个地址是专用的。这个处理过程又称为远端遍历,因为输出信息包得遍历终端用户防火墙。防火墙负责区分输入呼叫是否带恶意性质。
    
    
  可将SBC视为一类具备VoIP功能的防火墙,只是功能实现更为复杂。更进一步讲,它能实现以每次会话为基础的P2P IP操作,视需要通过修改IP包标题,使之能够通过网络边界。SBC对等操作在第5和第7层实现,它能处理第5层会话信号协议以维持一次会话的状态信息,这在修改地址标题用于远端遍历时显得至关重要。SBC中的边界LANInternet间的分界线。
    
    
  SBCVoIP而设计
    
    
  SBC性能参数体现在以下四个方面:安全性、QoS及服务级别(SLA)保证、信号协议互联及服务规则。
    
    
  其中安全性是SBC应解决的主要课题。SBC必须具备防火墙/NAT遍历、在第5层(会话层)和第3层(网络层)隐藏网络拓扑以及网络资源保护功能;必要时通过关闭信号及媒体会话端口,防止出现安全漏洞。另外,还需集成更多现行和将来可用到的安全特性,包括入侵检测、带宽控制策略、保护会话不被窃取、防止RTP流拥塞和呼叫干扰,以及源IP地址隐藏的识别。
    
    
  QoSSLA保证对于客户意义重大。SBC必须负责媒体流的生成和维护,解决相关QoS需求。服务提供商网的边缘路由器支持大部分IP服务类别(CoS)、排队和通信管理技术,但并不能保证基于会话层信号信息的QoS,因为这包括用于呼叫建立、终止以及路由控制的特定标识符和指令。因而,通过基于会话认可控制策略接受或拒绝呼叫,来管理实时通信命令是完全必要的。在跨国IP通信服务环境下,服务提供商必须构建合适的呼叫路由和QoS参数,并能透过网络边界共享呼叫情况记录。系统不具备这些功能,服务提供商就没法对SLA实施监控,也就无法保证IPIP环境下的服务质量。简言之,SBC必须能够在出现过多终端用户接入和传输链接的情况下,防止带宽拥塞,保证良好QoS
    
    
  信号协议互联是实现IP对等操作的基础,因为分离IP网可能用到的是不同的信号协议。如今占主导地位的信号协议是H.323,由于SIP相对简单、可扩展性强且效率要高,将来极有可能取而代之。而且,很多新型VoIP方案将基于SIP来实现,因为如今大多数软交换机、IP电话和媒体网关都侧重于采用SIP。另外,支持MGCPH.248协议也相当重要。
    
    
  最后,需要一定的通信规章来约束这类新兴通信运营(包括企业客户)服务模式,其中重要一点就是保存呼叫识别和内容记录。这点于普通客户意义尤为重大,而开发商在实现方面还很难做到统一,这就需要一个明确规范。
    
    
  SBC技术的市场开发已初露端倪,其中包括Acme PacketKagoor NetworksNetrakeJasomi Networks以及NexToneAravox自被Alcatel收购起,就在从事这方面的开发。防火墙市场的领军人物CiscoNetScreenCheck Point都声称已开发出低层专有VoIP解决方案,目前正向高层发展。
    
    
  Acme Packet的方案最为出名,它的Session Director可用于服务提供商网,也适用于大型企业客户。Session Director支持主机NAT遍历,信号会话能遍历现行前端NAT/防火墙,而不需要作配置变更。
    
    
  从网络拓扑角度来说,SBC比较适合于企业网。防火墙是企业网中必不可少的临界作业网络处理单元,SBC能与现行企业防火墙协同工作,因而大大减少了手工配置各类规则的工作量,也不需要针对LAN应用和VoIP接入更改网络设置。
    
    
  SBC位于防火墙之前,大大降低了主防火墙处理VoIP通信作业的负荷,使网络单元各司其职。相对单一的设备,降低了VoIP通信处理时延。由于位于防火墙前,SBC还能隐藏LAN拓扑,防止网络拓扑通过可能的请求方法(嵌于IP标题中)泄漏出去,暴露专用地址。
原创粉丝点击