交换机
园区网交换机
数据中心与云计算交换机
行业精选交换系列
意图网络指挥官
无线
放装型无线接入点
墙面型无线接入点
智分无线接入点
室外无线接入点
场景化无线
行业精选无线系列
无线管理与应用
统一运维
身份管理
服务产品
运营商
政府
金融
互联网
制造业
高教/职教
医疗卫生
交通
公共安全
一、组网需求
用户已经注册了教育网DNS,用户的DNS服务器放在内网,配置的是教育网的公网IP,当外网用户需要通过域名访问此学校的网络资源时,运营商会把DNS请求发送给学校内部的DNS服务器来解析,学校内部的DNS服务器上有域名和内部服务器IP地址的对应,内服务器的IP都是教育网的公网IP,学校内部的DNS服务器根据域名与IP的对应关系回应外网的DNS请求.在此情况下不管是教育网的用户,还是电信,联通的用户,都会是解析出服务器上配置教育网的IP,所以导致电信,联通,移动的用户都要通过教育网来访问学校内部的网络资源,所以会比较慢。
用户现有电信,联通,移动,教育网四条出口线路,用户需要通过EG的智能DNS功能,让电信的用户解析学校的域名时,解析出来的是电信的公网IP;联通的用户解析出来的是,联通线路的IP,移动用户解析出来的是移动线路的IP,教育网用户解析出来的还是原来教育网的IP,使得不同运营商的用户都使用相对应的线路来访问学校的资源,都能获得最佳的访问速度。
二、组网拓扑
拓扑说明:
如拓扑所示:电信分配置的公网IP为222.170.150.0/27,网关为222.170.150.1;联通分配的公网IP为61.180.125.0/27,网关为61.180.125.1;移动分配置公网IP为120.193.65.0/27,网关为120.193.65.1;教育网分配了的多个网段的公网IP,接口互连的公网IP为200.202.180.0/29, 网关为200.202.180.1.
用户内网的服务器都是教育网的公网IP,DNS服务器已经在教育网注册.如拓扑图DNS服务器的公网IP为202.196.100.100;WEB服务器的公网IP为202.196.125.2;FTP服务器的公网IP为202.196.125.3。
智能DNS方案要求满足拓扑满足如下条件:
①客户出口为多线路不同运营商;
②内网必须有DNS服务器,DNS服务器为公网或者私网地址均可,且DNS服务器在运营商处注册;
③外网访问客户处WEB服务器时,外网域名解析最后会被运营商转发到客户内网的DNS服务器上进行。
三、功能原理
如学校的WEB服务器域名为www.test.edu.cn,对应的IP为202.196.125.2,学校的FTP服务器域名为ftp.test.edu.cn 对应的IP为202.196.125.3.那么在没有智能DNS功能的时候,外网不管那个运营商的用户通DNS服务器202.196.100.100解析出来的IP都会是服务器上实际配置的教育网的IP。在配置了第二代智能DNS后,EG会分析DNS服务器的DNS回应报文,并根据外网用户的IP去查找路由表,根据外网用户IP所对应的路由出接口和智能DNS配置的映射表,修改原来DNS回应报文中域名所对应的IP。
例:外网有一个电信的用户,需要访问www.test.edu.cn,在运营商没有缓存的情况,DNS请求报文最终会到达学校内网的DNS服务器202.196.100.100,此时DNS服务器会根据此域名对应的IP,202.196.125.2回应,DNS回应的报文到达EG后,EG会分析此DNS报文,通过查看路由表发现用户的IP是通过电信的接口出去,此时EG会根据智能DNS映射表,把原来服务器教育网的IP换成电信的IP,222.170.150.3,再从教育网将DNS应答报文发送给用户,此时用户就会通过电信的IP来访问学校的网站。
四、配置要点
1、根据运营商分配的公网IP和用户的规划配置好EG的接口IP,在所有外网接口配置上源进源出功能;
说明:源进源出功能保证来回路径一致,在多出口且内网有服务器需要被外网访问时必须使用。此场景下,内网DNS回应报文的转发、外网收到解析报文后访问服务器,服务器回应时都需要用源进源出功能
2、配置电信,联通,移动,教育网自动选路功能,配置好默认路由;
说明:根据地址库自动选路,是智能DNS功能判断来访IP属于哪个运营商IP,需要给其回应哪个服务器地址的判断依据,因此必须配置
3、配置第二代智能DNS;
4、根据需要配置好端口映射;
说明:智能DNS只是拦截并替换DNS回应报文中域名对应的服务器IP,并不能代替映射,如果没有映射,外网用户获取到最佳地址后还是访问不了服务器;
五、配置步骤
此功能需要在命令行下完成配置。
1、根据运营商分配的公网IP和用户的规划配置好EG的接口IP并开启外网线路源进源出功能:
interface GigabitEthernet 0/0
ip nat inside
ip address 192.168.1.1 255.255.255.0
description to_neiwang
!
interface GigabitEthernet 0/1
ip nat outside
ip address 222.170.150.2 255.255.255.224
reverse-path //开启源进源出功能,保证web服务器的回应报文能从入接口返回
description to_CNII
!
interface GigabitEthernet 0/2
ip nat outside
ip address 61.180.125.2 255.255.255.224
reverse-path
description to_CNC
!
interface GigabitEthernet 0/3
ip nat outside
ip address 120.193.65.2 255.255.255.224
reverse-path
description to_CMCC
!
interface GigabitEthernet 0/4
ip nat outside
ip address 200.202.180.2 255.255.255.224
reverse-path //外网是通过此接口进入内网DNS进行解析的,需要保证回应报文的内容被智能DNS转换后,还是能此接口回应出去
description to_Cernet
说明:
reverse-path命令是开启接口数据源进源出的功能,也就说开启此功能后,从教育网接口进来的数据包,还是从教育网接口出去,回包时不再查找路由表。这样能防止如电信的用户的DNS请求报文从教育网接口进来,在回包时去查看路由表发现要从电信接口出去,而运营商会做相关限制,在这种路径不一致的情况下,会丢弃报文,导致解析不成功。
2、EG路由配置
route-auto-choose cnii GigabitEthernet 0/1 222.170.150.1
route-auto-choose cnc GigabitEthernet 0/2 61.180.125.1
route-auto-choose cmcc GigabitEthernet 0/3 120.193.65.1
route-auto-choose cernet GigabitEthernet 0/4 200.202.180.1
ip route 0.0.0.0 0.0.0.0 GigabitEthernet 0/1 222.170.150.1
ip route 0.0.0.0 0.0.0.0 GigabitEthernet 0/2 61.180.125.1 10
ip route 0.0.0.0 0.0.0.0 GigabitEthernet 0/3 120.193.65.1 10
ip route 0.0.0.0 0.0.0.0 GigabitEthernet 0/4 200.202.180.1 10
说明:
智能DNS是通过修改学校内部DNS服务器,给外网用户的DNS回应报文,来实现智能DNS的功能。学校内部的DNS服务器回应的DNS报文中,学校域名所对应的IP都是教育网的IP,智能DNS会根据DNS回应报文的目的IP的出接口,来把域名对应的内网的教育网IP更改为对应出接口的运营商IP。DNS回应报文的目的IP从哪个接口出,是通过查看路由表得出的,所以我们必须要配置好各运营商线路自动选路功能。EG内置了各运营商的路由表,使用route-auto-choose命令调用。默认路由可以根据实际需要配置,此处是让匹配不到细化路由的外网用户通过电信访问学校的资源,如果未命中地址库的地址需要做负载均衡,则可将浮动默认路由后的管理距离“10”去掉;
3、智能DNS配置
smartdns enable //启用智能DNS功能
smartdns 202.196.125.2 Gi0/1 map 222.170.150.3 //配置智能DNS映射表,内网回应的DNS应答报文中域名解析出的地址为202.196.125.2,如果EG选路后,DNS目的IP从g0/1口转发,则将202.196.125.2替换为222.170.150.3
smartdns 202.196.125.2 Gi0/2 map 61.180.125.3
smartdns 202.196.125.2 Gi0/3 map 120.193.65.3
smartdns 202.196.125.3 Gi0/1 map 222.170.150.4
smartdns 202.196.125.3 Gi0/2 map 61.180.125.4
smartdns 202.196.125.3 Gi0/3 map 120.193.65.4
说明:
如果是教育网的用户来访问,由于此时内网DNS回应的报文已经是服务器的教育网IP,因此不需要进行修改,所以此处不需要配置教育网线路的映射表。
4、端口映射配置
ip nat inside source static tcp 202.196.125.2 80 222.170.150.3 80 permit-inside
ip nat inside source static tcp 202.196.125.2 80 61.180.125.3 80 permit-inside
ip nat inside source static tcp 202.196.125.2 80 120.193.65.3 80 permit-inside
ip nat inside source static tcp 202.196.125.3 21 222.170.150.4 21 permit-inside
ip nat inside source static tcp 202.196.125.3 21 61.180.125.4 21 permit-inside
ip nat inside source static tcp 202.196.125.3 21 120.193.65.4 21 permit-inside
说明:映射加permit-inside,可以让内网用户也能用服务器映射的公网地址访问服务器
5、保存配置
六、配置验证
1、配置完成后可以在电信,联通,移动分别访问学校的网站,看解析出来是否是相应运营商的IP。
2、有时候在电信运商的DNS服务器上,会有配置智能DNS前的缓存,即原来域名对应的教育网IP。这个时候用户去解析学校的域名时还是会解析到教育网的IP,因为DNS请求报文根本就没有到达EG ,而被运营商直接回应了。
针对运营商有缓存的情况,可以直接把电脑的DNS改成,学校内部DNS服务器的IP。并使用ipconfig/flushdns 清除电脑DNS缓存,再去解析,看是否能解析出对应的公网IP。
3、目前一般情况下客户端的DNS解析都是使用的递归解析,及是由运营内部的域名服务器去到最终的学校内部的服务器去解析,再由运营商的DNS服务器把解析结果反馈给最终的用户。所以在一般情况下,不管用户是那个运营商的,测试时只要修改电脑的DNS为某个运营商,就可以测试出EG的智能DNS是否生效。例如一个电信的用户,现在配置的DNS服务器是联通的,那么联通的服务器会代替电信的用户去解析学校的域名,此时在EG看到的是联通的IP,所以会反馈域名所对应的IP是联通的地址。
4、在设备上可以查看智能DNS选路的统计值:
Ruijie#show smartdns pkt-stat
------------ smartdns packet state --------------
smart dns receive dns request packet num: 23 //智能DNS收到的DNS请求报文数
the number of request which matching ip: 20 //匹配到映射表的请求数
the number of request which unmatching ip 3
-------------------------------------------------