应用场景:
R2、R3、R4为企业内部,DNS也部署在内网,R2上设置NAT使得R1能够telnet到R4。
如在R2上启用NAT ALG DNS功能后,R1通过域名butcherroom.com访问23端口,可以成功telnet R4。
如果不开启NAT ALG DNS功能则R1无法通过域名telnet R4。
基础配置:
R1 | ip name-server 202.100.1.150 ! interface Loopback0 ip address 1.1.1.1 255.255.255.255 ! interface Ethernet0/0 ip address 202.100.1.1 255.255.255.0 duplex auto ! |
R2 | interface Ethernet0/0 ip address 202.100.1.2 255.255.255.0 ip nat outside ip virtual-reassembly in duplex auto ! interface Ethernet0/1 ip address 172.16.1.254 255.255.255.0 ip nat inside ip virtual-reassembly in duplex auto ! interface Ethernet0/2 ip address 192.168.31.254 255.255.255.0 ip nat inside ip virtual-reassembly in duplex auto ! interface Ethernet0/3 ip address 10.1.1.254 255.255.255.0 ip nat inside ip virtual-reassembly in duplex auto ! ip nat inside source static 172.16.1.4 202.100.1.100 ip nat inside source static 10.1.1.150 202.100.1.150 ip route 0.0.0.0 0.0.0.0 202.100.1.1 ! 默认配置下NAT ALG DNS功能是开启的 |
R3 | ip name-server 10.1.1.150 ! interface Ethernet0/0 ip address 192.168.31.3 255.255.255.0 duplex auto ! ip route 0.0.0.0 0.0.0.0 192.168.31.254 |
R4 | interface Ethernet0/0 ip address 172.16.1.4 255.255.255.0 duplex auto ! ip http server ! ip route 0.0.0.0 0.0.0.0 172.16.1.254 ! line vty 0 4 no login transport input all |
DNS服务器 | 接口地址:10.1.1.150 域名映射: butcherroom.com 172.16.1.4 |
基础验证:
R3上TELNET域名,可以正常访问,解析到的地址为172.16.1.4:
R1上TELNET域名,可以正常访问R4,访问的实际IP地址为202.100.1.100(映射后地址):
同时通过对R2的E0/3和E0/0口抓包查看DNS的报文:
- E0/3为ALG转换前的DNS报文,如下所示,解析到的地址为172.16.1.4:
- E0/0为ALG转换后的DNS报文,如下所示,解析到的地址为202.100.1.100:
R2上通过debug ip nat可以看到ALG转换的过程
*May 18 10:41:18.006: NAT: s=202.100.1.1, d=202.100.1.150->10.1.1.150 [0]
*May 18 10:41:18.008: NAT: DNS resource record 172.16.1.4 -> 202.100.1.100
*May 18 10:41:18.008: NAT: s=10.1.1.150->202.100.1.150, d=202.100.1.1 [11010]
*May 18 10:41:18.011: NAT: s=202.100.1.1, d=202.100.1.150->10.1.1.150 [0]
*May 18 10:41:18.012: NAT: DNS resource record 172.16.1.4 -> 202.100.1.100
*May 18 10:41:18.012: NAT: s=10.1.1.150->202.100.1.150, d=202.100.1.1 [11012]
在R2上取消NAT ALG DNS功能,查看R3是否能通过域名访问到R4:
R2(config)#no ip nat service alg udp dns
R2(config)#no ip nat service alg tcp dns
测试验证:
R3上TELNET域名,可以正常访问,解析到的地址为172.16.1.4:
R1上TELNET域名,无法正常访问R4,访问的IP地址为172.16.1.4(NAT映射前地址):
原文链接:https://blog.csdn.net/butcherroom/article/details/124931261