IPSec与NAT协同工作的一种解决方案
- 格式:pdf
- 大小:181.84 KB
- 文档页数:4
502005.8网络安全网络安全技术与应用0 引言IPSEC作为网络实时通信的安全协议,已经成为INTERNET的实际安全标准;而NAT也有效解决了目前IPV4地址的严重不足。
当IPSEC数据包穿越NAT设备时,会产生严重的兼容性问题。
NAT-T(NAT-Traversal)是目前较为流行的一种解决两者兼容性问题的方案,并越来越被广泛采用。
1 IPSEC、NAT工作原理1.1 IPSECIPSEC是IETF制定的保障INTERNET通信安全的标准。
该标准主要由安全协议AH(Authentication)和ESP(EncapsulatingSecurity Payload),密钥交换协议IKE(Internet Key Exchange)两大部份组成。
为在Internet上进行数据通讯的用户提供加密、数据完整性、认证IP报文及防止重放攻击等安全服务。
IPSEC规范定义了两种保护通信数据包的模式:传输模式(Transport Mode):在数据包的IP报头和其余部分之间插入IPSEC信息。
图1 传输模式隧道模式(Tunnel Mode):保留原有的IP数据包,然后在数据包外面封装新的IP报头和IPSEC信息。
图2 隧道模式1.2 NAT(Network Address Translation)NAT是为了缓解日益紧张的Internet公网地址匮乏的问题,而采用的一种将内部私有网络IP地址映射为外部公网IP地址的技术标准。
主要可以划分为静态NAT,动态NAT和网络地址端口转换NAPT三种类型。
其基本工作原理(以NAPT为例)为:NAT设备接受内部主机的数据包,将该包的内部IP地址和TCP/UDP端口号转换为自身的公网IP地址和特定的端口号,然后将数据包送往目标主机;同时,将此映射关系存表。
当NAT收到目标主机的应答后,查表,修改目标主机的IP地址和端口号并回送给相应的客户端。
2 IPSEC、NAT的兼容性问题IPSEC和NAT的设计思想存在矛盾。
IPSec与NAT穿越:解决地址转换对安全的影响导言随着互联网的不断发展,网络安全问题日益成为人们关注的焦点。
网络地址转换(Network Address Translation,NAT)作为一种常见的网络技术,用于解决IPv4地址不足的问题。
然而,传统的NAT技术却给网络安全带来了一定的影响。
本文将介绍IPSec与NAT的结合,以解决地址转换对安全性的潜在威胁。
一、IPSec基础知识IPSec是一种用于保护IP网络通信安全的协议套件。
它提供了认证、加密和完整性保护等机制,可以有效地保护数据的传输过程。
然而,当网络中存在NAT设备时,IPSec面临着一些挑战。
由于NAT会改变IP数据包的源地址和目的地址,IPSec的原始加密和认证机制会受到影响,造成通信失败或降低安全性。
二、传统NAT的问题传统NAT将私有IP地址转换为公共IP地址,以实现多个主机共享一个公网IP地址。
然而,这种地址转换会破坏IPSec协议的数据完整性和安全性,导致通信失败或被攻击者利用。
原因在于,传统NAT对IP数据包进行了修改,使得其在传输过程中被修改的部分无法通过IPSec的认证机制。
三、NAT穿越的原理为了解决IPSec与NAT的兼容性问题,研究人员提出了NAT穿越(NAT traversal)的方法。
NAT穿越利用各种技术手段,确保IPSec流量能够在经过NAT设备时保持其完整性和安全性。
其中,使用UDP封装(UDP encapsulation)是最常见的方法之一。
该方法通过将IPSec数据包封装在UDP数据包中,使其在经过NAT设备时能够正确识别和处理。
四、IPSec与NAT穿越的应用IPSec与NAT穿越的应用场景广泛。
例如,远程访问VPN(Virtual Private Network)是一种常见的应用。
在传统的VPN中,当用户位于私有网络内部时,若要访问公共网络,需要经过NAT设备。
IPSec与NAT穿越为VPN的使用提供了便利,使得用户可以安全地跨越NAT设备,实现远程访问。
收稿日期:2003-09-15作者简介:祝芝梅(1979-),女,浙江江山人,硕士研究生,主要研究方向:计算机信息网络安全; 李之棠(1951-),男,湖北监利人,教授,博士生导师,博士,主要研究方向:光互连并行计算机体系结构、计算机信息网络安全.文章编号:1001-9081(2004)03-0027-04NAT 与IPSec 协议兼容性问题及解决方案祝芝梅,李之棠(华中科技大学计算机学院,湖北武汉430074)(zzm connie@)摘 要:概要介绍了IPSec 协议和网络地址转换(NAT )协议的基本原理,着重介绍了IPSec 协议与NAT 协议所存在的矛盾,最后介绍了采用UDP 封装方式实现IPSec 报文穿越NAT 的完整方案。
关键词:IPSec;网络地址转换(NAT);IKE;RSIP;U DP 封装;NAT 穿越中图分类号:TP393 文献标识码:ANAT and IPSec Protocol Compatibility Problem and SolutionZHU Zh-i mei,LI Zh-i tang(School of Comp uter Science and T echnology ,H uaz hong Univer sity of Science and T echnology ,W uhan H ubei 430074,China)Abstract:T his art icle introduces the basic theory of IPSec and network address transform (NA T )pr otocol at first,then introduces the conflict betw een IPSec and NA T protocol;at last,ex plains the way to solve this conflict IP Sec N AT -traversal by U DP encapsulation.Key words:IPSec;NA T ;I KE;RSIP ;U DP encapsulation;NA T -traversal IPSec 作为IP 层的安全协议,为I P 包提供了身份验证和机密性保护,加上安全的Internet 密钥交换协议(IKE),就构成了整个IP 层次上的安全体系。
不错的。
如何将两个好技术共用但又使它们相安无事,是很多人正在思考的问题。
网络安全IPsec(IP Security)和网络地址转换NAT(Net Address Translation)应用已经十分广泛了,但是要使它们运行在一起,却不是一件容易的事。
从IP的角度来看,NAT对IP的低层进行了修改,对IP是一种背叛;而从应用的角度来看,网络管理人员必须要处理网络地址的问题,NAT使用户可以采取多种方式把自己的网络和主机对外部公共网络隐藏起来,是一种好的工具,现在,无论是大企业还是中小企业都在使用它。
与NAT类似,IPsec也是一种好工具,它使用户可以安全地通过Internet联接到远程终端。
然而,由于IPsec协议架构本身以及缺乏支持IPsec的NAT设备,当IPsec和NAT在一起运行时就会出现很多问题。
解决这些问题最简单的办法,就是再增加一个路由器来运行NAT和虚拟专用网VPN。
可是,对于多数情况来说并没有多余的路由器来执行这一功能,因此,要解决两者共存的问题,就必须对IPsec和NAT 有一定的了解。
NAT的基本原理和类型NAT能解决令人头痛的IP地址紧缺的问题,而且能使得内外网络隔离,提供一定的网络安全保障。
它解决问题的办法是:在内部网络中使用内部地址,通过NAT把内部地址翻译成合法的IP地址在Internet上使用,其具体的做法是把IP包内的地址域用合法的IP地址来替换。
NAT功能通常被集成到路由器、防火墙、ISDN路由器或者单独的NAT设备中。
NAT设备维护一个状态表,用来把非法的IP地址映射到合法的IP地址上去。
每个包在NAT设备中都被翻译成正确的IP地址,发往下一级,这意味着给处理器带来了一定的负担。
但对于一般的网络来说,这种负担是微不足道的。
NAT有三种类型:静态NAT、动态地址NAT、网络地址端口转换NAPT。
其中静态NAT 设置起来最为简单,内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。
与通过NAT 使用IPSec 相关的问题与通过NAT 使用IPSec 相关的问题如下:•N AT 无法更新上层校验和。
TCP 和UDP 报头包含一个校验和,它整合了源和目标IP 地址和端口号的值。
当NAT 改变了某个包的IP 地址和(或)端口号时,它通常要更新TCP 或UDP 校验和。
当TCP 或UDP 校验和使用了ESP 来加密时,它就无法更新这个校验和。
由于地址或端口已经被NAT 更改,目的地的校验和检验就会失败。
虽然UDP 校验和是可选的,但是TCP 校验和却是必需的。
•N AT 无法多路传输IPSec 数据流。
ESP 保护的IPSec 流量没有包含可见的TCP 或UDP 报头。
ESP 报头位于IP 报头和加密的TCP 或UDP 报头之间,并且使用IP 协议号50。
因此,TCP 或UDP 端口号就无法将流量多路传输到不同的专用网主机。
ESP 报头包含一个名为Security Parameters Index(安全参数索引,SPI)的字段。
SPI 与明文(plaintext)IP报头中的目标IP 地址和IPSec 安全协议(ESP 或AH)结合起来用于识别IPSec 安全关联(SA)。
对于到NAT 的传入流量,目标IP 地址必须映射到一个专用IP 地址。
对于NAT 专用端的多个IPSec 对话方,多个IPSec ESP 数据流的传入流量的目标IP 地址是同一个地址。
为了将一个IPSec ESP 数据流与另一个区分开,目标IP 地址和SPI 必须得到跟踪并映射到某个专用目标IP 地址和SPI。
由于SPI 是一个32 位的数字,多个专用网客户端使用相同SPI 值的概率很低。
问题在于,您很难确定哪个传出SPI 值对应于哪个传入SPI 值。
NAT 无法映射SPI,因为ESP尾部包含一个消息验证散列码(hashed message authentication code,HMAC),它检验ESP 协议数据单元(PDU)的完整性(ESP PDU 包含ESP 报头、ESP 有效载荷和ESP 尾部),SPI 无法在HMAC 值失效之前改变。
IPSec与NAT穿越:解决地址转换对安全的影响概述:在当前网络环境下,网络地址转换(NAT)在实现地址共享和节省IPv4地址资源方面具有重要作用。
然而,NAT也带来了安全方面的隐患,尤其是对于建立虚拟专用网络(VPN)的安全通信。
为了解决这一问题,IPSec协议被用于在穿越NAT的情况下确保VPN的安全性。
1. NAT的背景和安全风险NAT是一种通过替换网络数据包中的源IP地址和/或目的IP地址来实现多个主机共享单个公网IP地址的技术。
然而,NAT也带来了一些安全风险。
其中之一是与传输协议相关的问题,特别是在使用VPN进行远程访问和通信时。
2. IPSec的介绍IPSec(Internet Protocol Security)是一种网络安全协议套件,用于确保Internet上数据的安全性和完整性。
IPSec提供了数据机密性、身份验证和完整性保护。
它可以在IP层对数据进行加密和解密,同时使用密钥交换协议(IKE)进行认证和建立虚拟专用网络隧道。
3. IPSec与NAT的挑战由于NAT修改了IP包中的源IP地址和/或目的IP地址,传统的IPSec协议在穿越NAT时无法正常工作。
这是因为IPSec中使用的IP地址信息和端口信息与NAT所修改的不一致,导致IPSec认证失败或通信中断。
4. NAT穿越技术和解决方案为了解决NAT对IPSec的影响,一些穿越NAT的技术和解决方案被提出。
这些方案包括:- NAT Traversal (NAT-T):通过使用UDP封装IPSec报文,使其能够穿越NAT,并在NAT后面建立VPN隧道。
- IKEv2的MOBIKE(IKEv2 Mobility and Multihoming Protocol):允许IPSec VPN客户端在动态地址情况下自动更新和切换传输地址。
- STUN(Simple Traversal of UDP over NATs):通过使用中间服务器解决NAT穿越问题,并通过STUN协议传输UDP流量。