咨询问一个问题,在IPsec ESP协议加密的传输模式下,原始数据的TCP/UDP首部中计算校验和的时候包含了伪首部(也就是IP头信息),那么在发起端计算的UDP/TCP校验和的IP是原始IP,对端收到解密之后,计算TCP/UDP的校验和的IP是转换后的IP,所以校验和会失败,此时IPsec的ESP传输模式是不是就不能用了?
(0)
最佳答案
esp可以用,ah的用不了
(0)
从理论来说,这个实现不了呀,虽然esp的校验会通过,但是内层的TCP/UCP的校验如何通过呢?
那么如何解释这个原理呢?
从理论来说,这个实现不了呀,虽然esp的校验会通过,但是内层的TCP/UCP的校验如何通过呢?
IPsec(Internet Protocol Security)ESP(Encapsulation Security Payload)传输模式确实涉及到对原始IP数据包的加密,包括TCP或UDP的负载和首部。不过,关于您提到的校验和问题,实际上在IPsec协议中已经考虑到了这一点。
当TCP或UDP数据包被IPsec处理时,以下是发生的事情:
1. 校验和计算:发送端主机在对数据包内容(TCP或UDP段)进行ESP封装之前会计算TCP或UDP的校验和。这个校验和计算考虑了原始的IP头信息。
2. ESP封装:在ESP封装过程中,整个TCP或UDP段(包括其头部和负载)会被加密。这意味着校验和也被加密,并作为加密数据的一部分传输。
3. 传输过程:经过网络传输到达目的地。
4. ESP解封装:接收端VPN设备(如VPN网关或防火墙)会解密ESP载荷,恢复成原始的TCP或UDP段,包括未更改的校验和。
5. 校验和验证:接收端主机在处理解密后的TCP或UDP段时,使用相同的伪首部(包括解封装后的IP地址)来验证校验和。因为校验和是在发送端计算并随同数据一起被加密传输的,所以不会因为IP地址的变换而导致校验和不匹配。
因此,在IPsec ESP传输模式中,由于整个过程都是封闭的,即使IP地址在传输过程中发生了变化(例如NAT转换),TCP或UDP的校验和也不会因此而失效。ESP的设计确保了数据包在解密后,和发送前在发送端的形态是一致的,包括有效的校验和。
如果出现校验和错误,通常是由于网络错误或者设备配置错误造成的,而不是IPsec协议的本身问题。在部署IPsec VPN时,确保所有设备的配置正确,并且是基于正确的网络架构和安全策略设计的。如果遇到问题,可以使用相关的诊断工具来检查和排除故障。
(0)
所以我的疑问还是:接收端是如何知道原来的IP头信息是多少的?报文哪个字段?或者是NAT协商的哪些过程?
关于您提出的第5点,“接收端主机在处理解密后的TCP或UDP段时,使用相同的伪首部(包括解封装后的IP地址)来验证校验和。”,我的疑问是,对端设备怎么知道原来的伪首部信息的。esp头部插入到了原始的TCP/UDP和IP头之间,那么原始的IP信息经过NAT转换就会丢了,那么接收端是如何知道原来的IP头信息是多少的?
您的疑问是合理的。在IPsec ESP传输模式下,加密的是TCP/UDP数据和它们的头部,而不是原始IP头部。NAT(网络地址转换)设备在处理经过ESP封装的数据包时,通常不会修改加密的内容,因为它无法读取或理解加密的载荷。不过,NAT和IPsec的互操作性是一个已知的问题,特别是当NAT设备需要修改数据包的IP头部时。 为了解决这个问题,通常有两种方案: 1. NAT穿越(NAT-T): NAT穿越技术允许在NAT设备背后使用IPsec。在NAT-T环境中,ESP包被封装在UDP包中。这样,NAT设备修改的是外部的UDP和IP头,而不是加密的ESP载荷。这意味着加密的数据包内部的IP头(也就是TCP/UDP的伪首部)不会被NAT更改,因此接收端在解密后可以使用原始的IP头信息来验证TCP/UDP校验和。 2. 使用IPsec的传输模式和L2TP: 另一个常用的解决方案是结合使用IPsec传输模式和L2TP(Layer 2 Tunneling Protocol)。这种情况下,IPsec用于加密L2TP数据包,而NAT设备修改的是L2TP数据包的IP头部,不会影响到IPsec加密的载荷。 在使用IPsec ESP传输模式并且数据包必须穿越NAT设备时,通常推荐使用NAT-T。这样可以确保数据包在穿越NAT时仍然保持其完整性和可验证性。在配置IPsec VPN时,应确保VPN设备(比如防火墙或VPN网关)支持NAT-T,并且正确地配置了相关选项。
但是被加密部分:TCP/UCP+data,这一部分中,没有关于携带原始IP头信息字段呀,对端收到之后,解密完依靠哪个报文的字段/信息知道原来的IP信息的呢?
伪首部也只是一个逻辑的说法,并没有表现在UDP/TCP的字段里面,只是计算校验和的时候计算了它
所以我的疑问还是:接收端是如何知道原来的IP头信息是多少的?报文哪个字段?或者是NAT协商的哪些过程?
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明