H.323穿越NAT和防火墙的几种方法
- 格式:doc
- 大小:106.00 KB
- 文档页数:4
H.323穿越NAT和防火墙的几种方法
■ 中国电信集团北京研究院 支金龙
如今,能够通过视频会议与千里之外的亲友或同事进行面对面交流,对于拥有公网IP地址的用户而言已非什么难得的体验。
不过,从当前视频交互中最常用的协议——H.323协议看来,它需要动态分配端口并产生和维护多个UDP数据流,而传统的防火墙拒绝任何外部主动发起的通信请求,因此H.323很难穿透传统防火墙。其次,对于设置了网址转换器(NAT)的用户,由于其内部的视频终端只有私有IP地址,而这些地址在公网上是不可路由的。因此,H.323更难以直接穿透NAT。
那么,如果你的公网IP地址有限,或从网络安全方面考虑,你的网络中特别配置了防火墙,那你的视频会议又将如何召开呢?
解决之道还要归于如何使H.323协议穿透NAT或防火墙。对此,当前有效的办法基本有三种,即增加代理(Proxy)、升级防火墙和增加具有H.323 ALG功能的多媒体业务网关。
增加代理(Proxy)
增加代理是指在终端与防火墙之间增加一个特殊类型的网关,使终端的呼叫过程看起来像被分成两个部分:私网终端到代理和代理到公网终端。代理通过这个呼叫过程进行中转可以解决NAT问题。H.323代理一般结合标准的网守功能和RTP/RTCP多媒体流的代理功能。其典型应用是在防火墙后放一个H.323代理,代理需要分配一个公有IP地址,而防火墙被配置允许代理和外部进行多媒体通信。此时私网内部发出的H.323流都在代理设备处终结,经代理处理后从固定的公网端口发出。
升级防火墙
升级防火墙是指将传统防火墙升级为具有H.323 ALG功能的防火墙。ALG(Application Level Gateway)是应用层网关,是NAT或防火墙上的附加功能,它能识别应用层中的信令,然后通知NAT或防火墙在适当时间建立适当的映射,并按照映射后的地址修改消息中的相应参数,ALG还需要通知NAT或防火墙及时取消这些映射。
针对不同的应用层协议,需要不同的ALG。H.323 ALG通过对每一个经过NAT或防火墙的H.323信令包进行分析,找出那些传送传输层地址的信令,通知NAT或防火墙将该传输层地址映射成公网地址,并将信令流中的传输层地址替换为相应的公网地址后,再将信令流向外转发。这样接收方端点将得到发送方端点的公网IP地址和端口号,接收方端点可以按这个地址发起正确的TCP连接。
增加具有H.323 ALG功能的多媒体网关
增加具有H.323 ALG功能的多媒体网关与升级防火墙的方法类似,只不过其不用升级防火墙,而只需在原有普通防火墙的基础上增加具有H.323 ALG功能的多媒体业务网关设备。
多媒体业务网关可以在不增加任何其他附加设备的前提下,实现跨NAT的点到点与点到多点视、音频通信。支持公网与私网之间,甚至私网与私网之间无障碍的视、音频通信,并保证多媒体设备的标准化。此外,通过多媒体业务网关将大量私网终端业务收敛到同一个公网地址上,不仅可以有效节省公网IP地址,也有利于实现更有力的视频业务管理。
就目前看来,以上三种方法各具优势,但都非完善的解决之道。当前许多厂家还利用自己的私有协议来完成终端设备对防火墙和NAT的穿越,但此种方式却常常受到不同厂商设备间兼容性的影响。事实上,只有当终端与MCU(多媒体控制单元)来自同一厂商时,才可以利用厂商提供的专有协议方式实现公网到私网的互通。