Windows Server 2016 智能DNS(一)

说到智能DNS,作为一个IT人员来说并不陌生,但是一般都是第三方提供的,很少可以在本地实现,今天我们说说可以在本地实现配置智能DNS的解决方案,那就是Windows Server 2016下通过配置DNS Policy可以实现智能DNS解析,我们必须要重申一下,只有Windows Server 2016下的DNS才支持哦,Windows Server 2016已经发布很长时间了,所以今天我们对于Windows Server上DNS支持的功能我们做一下功能演示,首先介绍的是DNS Policy Geo-Location,言外之意就是通过DNS Policy里面可以基于地域进行隔流量访问,对于这个功能我们已经应用到了生产环境上,首先说说我们日常环境需求,我们公司的www站点,在中国有一台服务器,美国有一台服务器,两台服务器数据进行同步,在最初DNS中有两条记录同时指向不同的区域服务器,以前是通管局哦DNS轮询机制实现负载及跳转,有的时候中国用户会访问到美国服务器上,这样就出现了访问缓慢的现象,美国用户访问就会访问到中国的服务器,以上问题给用户体验带来很多困扰,但是在Windows server 2016里面外面可以通过配置DNS Policy实现中国用户访问中国服务器,美国用户访问美国服务器,最终的结果是不是很神奇,对于这个神奇的功能,外面今天通过以下实现呈现给大家,如有总结不对的地方欢迎大家来交流。
注:需要注意的是,DNS Policy是针对于本地的,不能在全局环境中进行同步。所以我们需要在负责DNS解析的服务器上均需要配置Policy。
环境介绍:
Hostname:DC.ixmsoft.com
Roles:DC、DNS
IP:192.168.5.20
Hostname:Web1.ixmsoft.com
Roles:Web Server
IP:192.168.6.198
Location:China
Hostname:Web2.ixmsoft.com
Roles:Web Server
IP:192.168.7.198
Location:US
我们先确认两台WEB服务器的访问内容:
首先是中国服务器

然后访问美国服务器:

两个区域的服务器准备好后,我们就可以要配置DNS Policy了,我们配置需要使用Powershell来进行配置,要实现地域隔离,首先要先创建DnsServerClientSubnet
也就是说,你要先告诉DNS,那一段子网是属于北京的客户端,哪一段子网是属于美国的客户端,你告诉了DNS之后,他才知道以后该怎么判断转发请求
我们开始创建北京及美国的子网

Add-DnsServerClientSubnet -Name "beijingsubnet" -IPv4Subnet "192.168.6.0/24"
Add-DnsServerClientSubnet -Name "ussubnet" -IPv4Subnet "192.168.7.0/24"


创建完成后,我们可以查询
Get-DnsServerClientSubnet

子网创建好了,我们还需要创建DnsServerZoneScope,这里是核心中的核心,我们需要在一个DNS区域里面创建出来多个逻辑的地理区域,一定要理解这个概念,例如,现在有个DNS主区域叫ixmsoft.com,我们就要在ixmsoft.com这个区域里面再划分出来逻辑地理范围,比如需要创建一个北京区域,一个美国区域,这样做了之后,就实现了同一个DNS主区域下面,包括了多个地理区域

Add-DnsServerZoneScope -ZoneName "ixmsoft.com" -Name "beijing"
Add-DnsServerZoneScope -ZoneName "ixmsoft.com" -Name "us"


创建完成后,我们也可以查询
Get-DnsServerZoneScope -ZoneName "ixmsoft.com"

创建完成逻辑地理区域,主要用来包含主机记录,串起来做Policy 判断使用,例如我们创建了逻辑地理区域北京,接着我们就需要创建北京Web服务器的主机记录,在创建主机记录过程中,最主要的一步就是指定-ZoneScope,指定了这个参数之后创建出来的这个主机记录就会绑定在这个地理区域内,之后创建策略,只有策略中指定的子网范围内客户端可以访问对应的“包括地理区域的主机记录”

Add-DnsServerResourceRecord -ZoneName "ixmsoft.com" -A -Name "web" -IPv4Address "192.168.6.198" -ZoneScope "beijing"
Add-DnsServerResourceRecord -ZoneName "ixmsoft.com" -A -Name "web" -IPv4Address "192.168.7.198" -ZoneScope "us"

我们在此也需要注意:我们定义的-A -Name名称为web,所以我们用户最终是以web.ixmsoft.com来访问服务器的。

创建完成后,我们可以查询该记录
Get-DnsServerResourceRecord -ZoneName "ixmsoft.com"

我们上面创建的是基于ZoneScope区域的解析记录,但是我们需要注意的是,如果只有给ZoneScope区域中增加记录,ZoneScope以外没有记录的话,除了自定义的子网用户以外访问都会出现无法解析的问题,所以我们还需要在ZoneScope中增加解析记录

Add-DnsServerResourceRecord -ZoneName "ixmsoft.com" -A -Name "web" -IPv4Address "192.168.6.198"
Add-DnsServerResourceRecord -ZoneName "ixmsoft.com" -A -Name "web" -IPv4Address "192.168.7.198"

执行后,我们就会在DNS中看见刚才上面增加的两条记录

以上条件配置好后,我们接下来要创建DNS查询返回策略了,也是非常重要的,
在这里我们指定客户端子网范围,eq代表等于的意思,一旦客户端子网等于已经定义好的范围,即有对应区域内的主机记录给予响应,Zone Scope参数后面有一个1,这个在之后的文章我们会多次用到,在本次场景中我们是一个完全的分流的场景,如果不完全分流,例如大连用户百分之70访问北京服务器,百分之30访问美国服务器,我们写1,代表大连客户端访问百分之百是由北京区域的主机记录给予响应

Add-DnsServerQueryResolutionPolicy -Name "beijingPolicy" -Action ALLOW -ClientSubnet "eq,beijingsubnet" -ZoneScope "beijing,1" -ZoneName "ixmsoft.com"  

Add-DnsServerQueryResolutionPolicy -Name "usPolicy" -Action ALLOW -ClientSubnet "eq,ussubnet" -ZoneScope "us,1" -ZoneName "ixmsoft.com" 


创建好Policy后,我们可以查询的
Get-DnsServerQueryResolutionPolicy -ZoneName "ixmsoft.com"

接着我们就可以测试了,
我们模拟北京的子网地址,然后访问的是北京的服务器

我们模拟美国的子网地址,然后访问的是美国的服务器

在此我们的基本配置已经完成了,我们下一节继续介绍关于Windows Server DNS的相关文章。

原文地址:http://blog.51cto.com/gaowenlong/2063637

时间: 2024-10-05 04:40:44

Windows Server 2016 智能DNS(一)的相关文章

Windows Server 2016 智能DNS(二)

Windows Server 2016 智能DNS(二)我们上一篇介绍了Windows Server 2016 智能DNS(一),详细的介绍了一下Windows Server 2016下配置DNS Policy实现地域隔离访问,但是对于上一篇中我遇到一个问题,就是增加后,发现web.ixmsoft.com的访问是没有问题,但是默认的Zone中下的所有内部解析均解析失败,经过查询资料需要增加一条默认的策略,而且优先级高于任何一条策略:比如我们查看policy:get-DnsServerQueryR

Windows Server 2016 智能DNS(三)

我们前面几篇文章介绍了Windows Server 2016 智能DNS的相关配置及介绍,我们今天继续之前的DNS配置来着重说明一下存储过程,我们之前也提到了,只有在Windows Server 2016下的安装的DNS服务才支持相关DNS操作命令, 所以我们大家需要注意一下,另外如果环境内有多台服务器的话,我们是否需要在每台服务器上进行创建了,比如我们当前的架构来说,我们环境内有多台DC,然后在不同的站点,我们是否需要在每台服务器上进行创建的,答案是不完全创建,为什么是不完全创建呢,因为我们了

Windows Server 2016 智能DNS(五)

Windows Server 2016 智能DNS(五)我们前面几篇文章介绍了如何Windows Server 2016 智能DNS的相关配置介绍,今天继续介绍Windows Server 2016 智能DNS的配置管理,前面一篇我们介绍了根据自己的需求来配置相关功能,那今天继续介绍相关记录的编辑操作.前面介绍的是子网.子网区域.及子网区域的记录进行的日常管理介绍,这些都是基本,最主要的还是策略,所以我们今天介绍策略的介绍:Policy:查看:get-DnsServerQueryResoluti

Windows server 2016搭建DNS服务

今天跟大家简单介绍一下如何在Windows server 2016 上搭建DNS(域名解析)服务.DNS服务器要为客户端提供域名解析服务,必须要具备以下条件:1.有固定的IP地址:2.安装并启动DNS服务:3.有区域文件,配置转发器或配置根提示.满足条件后,下面开始安装DNS服务1.首先确认本机的IP地址2.在"开始"菜单中单击"服务器管理器",启动服务器管理器.在"服务器管理器"中选择"添加角色和功能",在打开的"

Windows server 2016利用Hyper-V实现桌面虚拟化

Hyper-V虚拟化技术在Windows server 2012时就已完成RTM版发布,它的VDI可以基于虚拟机进行发布.微软其实很早就在其系统集成VPC(虚拟 PC),却一直没有得到关注,各方面表现也很一般,Hyper-V桌面虚拟化在历经几次版本升级后已经非常给力,不仅在其性能上大有提升,而且现在又与其原生的桌面虚拟化相融合,可以灵活组合搭配应用环境,进行各种场景下的桌面交付. 如果想要搭建Hyper-V并很好的管理,那么需要了解的知识点有: Hyper-V Hyper-V是微软的一款虚拟化产

Windows Server 2016 DNS Policy Geo-Location 1

随着信息技术的不断发展,人们对于IT基础架构的要求也越高,开始要求提供快速交付,批量部署,数据分析,网络虚拟化等新需求,各大厂商也针对自己的产品进行不断地完善,DNS最开始在Windows Server上面只是提供最简单的域名解析,缓存,转发等功能,后来越来越完善,到了2008时代新增了DNSSEC,单标域,名称保护等新功能,使DNS更加安全规范化,Windows Server 2016上面,DNS新增了在作者看来非常不错的功能,DNS policy,近日测试了许多里面的新功能,甚是为之惊艳,作

Windows Server 2016 DNS Policy Tod-Intelligent 2

在上一篇中作者为大家简单介绍了下Windows Server 2016 DNS Policy基于地理位置的流量隔离功能,本文将为大家介绍DNS policy里面另一个主要的功能 ,基于时间的智能DNS定位 假定Contoso是一家跨国的图书公司,跨中国和德国,设立在中国大连和德国柏林都有分公司,希望实现平常时间两边分公司的员工都正常访问本分公司的服务器,当负载达到时间峰值时,例如,每天9点到11点是大连这边用户访问的高峰期,这时候百分之80的流量通过大连主机响应,百分之20定位到柏林服务器响应.

Windows Server 2016 DNS Policy Load Balancing 4

在前面三篇文章中作者针对Windows Server 2016 DNS Policy的基于地理位置流量分流,基于时间负载的DNS智能定位,以及内外网卡分流的场景进行了简单的实验论证以及场景解释,相信看过思考过的朋友都有收获 本系列最后一篇文章中,作者将主要介绍下2016 DNS policy针对于负载均衡和之前版本的不同,以及本地负载均衡设计及跨地域负载均衡如何配置,再介绍下2016DNS policy的一些其它用法,最后我们总结下本系列文章 再2016之前,大家想到Windows Server

Windows server 2016上主从DNS同步解析

DNS域名解析服务,也可以做主从同步解析 实验环境 2台Windows server 2016 虚拟机 DNS1IP:192.168.1.10 DNS2IP:192.168.1.20 实验步骤 1.两台server主机上安装DNS服务 等待安装完成即可,DNS2上同样操作 2.DNS1上新建区域 安装完成后打开DNS管理器,在正向查找区域中新建区域xxy.com选择主要区域填写区域名称xxy.com主选择不允许动态更新之后下一步默认执行即可 3.新建的区域内添加DNS1和DNS2两台主机的解析如