最佳答案
ALG(Application Level Gateway,应用层网关)主要完成对应用层报文的解析和处理。通常情况下,NAT只对报文头中的IP地址和端口信息进行转换,不对应用层数据载荷中的字段进行分析和处理。然而对于一些应用层协议,它们的报文的数据载荷中可能包含IP地址或端口信息,这些载荷信息也必须进行有效的转换,否则可能导致功能不正常。例如,FTP应用由数据连接和控制连接共同完成,而数据连接使用的地址和端口由控制连接协商报文中的载荷信息决定,这就需要ALG利用NAT的相关转换配置来完成载荷信息的转换,以保证后续数据连接的正确建立。
DNS服务器在外网,应用服务器在内网(在NAT设备上有对应的nat server配置),内网用户需要通过域名访问内网应用服务器的场景中,NAT设备对来自外网的DNS响应报文进行DNS ALG处理时,由于载荷中只包含域名和应用服务器的外网IP地址(不包含传输协议类型和端口号),当接口上存在多条NAT服务器配置且使用相同的外网地址而内网地址不同时,DNS ALG仅使用IP地址来匹配内部服务器可能会得到错误的匹配结果。因此需要借助DNS mapping的配置,指定域名与应用服务器的外网IP地址、端口和协议的映射关系,由域名获取应用服务器的外网IP地址、端口和协议,进而(在当前NAT接口上)精确匹配内部服务器配置获取应用服务器的内网IP地址。
DNS mapping功能需要和内部服务器配合使用,由nat server配置定义内部服务器对外提供服务的外网IP地址和端口号,由DNS mapping建立“内部服务器域名<-->外网IP地址+外网端口号+协议类型”的映射关系。
(1) 进入系统视图。
system-view
(2) 开启指定或所有协议类型的NAT ALG功能。
nat alg { all | dns | ftp | h323 | icmp-error | ils | mgcp | nbt | pptp | rsh | rtsp | sccp | sip | sqlnet | tftp | xdmcp }
缺省情况下,DNS、FTP、ICMP差错报文、PPTP、RTSP协议类型的NAT ALG功能处于开启状态,其他协议类型的NAT ALG功能处于关闭状态。
(3) (可选)配置一条域名到内部服务器的映射。
nat dns-map domain domain-name protocol pro-type { interface interface-type interface-number | ip global-ip } port global-port
可配置多条域名到内部服务器的映射。
(0)
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
大神,我家里使用H3C路由设备,其中带有ALG功能,想请问需要开启吗,里面参数有这么几种 SIP,H323,FTP,TFTP,MMS,RTSP