你好,这里是网络技术联盟站。
众所周知,最著名的多通道协议,FTP 使用 TCP 端口 20 作为数据连接端口,使用 TCP 端口 21 作为控制连接端口。由于防火墙的检测机制,这种协议会在两个阶段对不一致的端口进行阻塞。
为了解决这个问题,开发了 NAT ALG 和 ASPF、NAT 穿越,那么这三个特性有什么区别呢?我们应该为现网选择哪一个?
FTP 协议使用 TCP 端口 21 建立控制连接,然后交换将用于建立数据连接的端口(FTP 主动模式),由于端口是图 5. IKE 添加一个额外的 UDP 标头来遍历 NAT 设备的,防火墙将由于没有会话条目而丢弃流量。
图 1. FTP 主动模式数据连接建立失败
图 2. FTP 被动模式数据连接建立失败
为解决FTP等多通道协议,NAT ALG选择一种方式来转换交换端口,该端口将用于建立数据连接。这样,防火墙上就会有会话入口,从而允许数据连接的SYN数据包。
图 3. NAT ALG 转换交换的端口
与 NAT ALG 不同,ASPF 使用服务器映射来解决此问题。当 FTP 交换将用于建立数据连接的 TCP 端口时,当 FTP 客户端尝试连接 FTP 服务器的数据连接端口(不是著名的一个,TCP 20,但随机选择一个),流量将匹配 server-map
条目,防火墙将直接创建会话表条目,而不检查安全策略。
图 4. 生成的 ASPF 服务器映射条目和会话表条目
与 NAT ALG 和 ASPF 不同的是,NAT 穿越使用 UDP 报头来封装流量,以便两个终端都能识别服务,NAT 穿越最著名的应用是IPSec NAT 穿越。
图 5. IKE 添加一个额外的 UDP 标头来遍历 NAT 设备
从上面的描述我们可以知道,这三个特性可以分为两个主要部分,NAT 穿越与 NAT ALG 和 ASPF 完全不同。
对于NAT ALG和ASPF,都是用来解决多通道协议通过NAT设备的,只是方式不同而已。NAT ALG 转换端口,而 ASPF 创建服务器映射条目。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有