在DNS管理中可能会碰见这样的问题,例如某公司DNS既提供给内网用户解析使用,也提供给公网用户解析使用,可是,可能内网用户使用的很少,或者公网用户使用的很少,致使其中一方可能只用到了几条记录,可是却要各自单独维护一台DNS服务器,在过去,处于安全考虑只能这样作,部署多台DNS服务器,可是到了2016 DNS支持分裂部署的方式,定义DNS policy,实现不一样的网卡承担不一样的DNS查询请求,例如能够定义,凡是经过内网接口进来的查询都走DNS内网卡,经过外网卡进来的查询都走DNS外网卡。这样就在单台服务器上很好的隔离开了DNS查询
安全
此处咱们将模拟这样一个场景,Contoso公司是一家游戏公司,内网用户须要访问oa,外网用户须要访问游戏官网,同时由同一台DNS承担内外网的请求,内网用户进来走内网接口,外网用户进来走除了内网接口之外的其它接口。服务器
实验环境介绍网络
16DNS:承担DNS服务器,设置在公司总部,设置两张网卡一张对内提供服务,一张对外提供服务ide
IP地址:80.0.0.8 GW:80.0.0.1spa
IP地址:90.0.0.9 GW:90.0.0.13d
Web01:承担内网的OA办公服务器,同时也承担链接总部DNS,内网,外网客户端的路由orm
IP地址1:80.0.0.1 blog
IP地址2:90.0.0.1接口
IP地址3:100.0.0.1 DNS 80.0.0.8游戏
Web02:承担对外提供官网Web服务器,IP 地址:90.0.0.2 GW:90.0.0.1
Internal: 模仿内网员工 IP地址:80.0.0.100 GW:80.0.0.1 DNS : 80.0.0.8
Internet:模仿外网游戏用户 IP地址:90.0.0.100 GW:90.0.0.1 DNS:90.0.0.9
假定90网络为公网网络,16DNS为分裂部署DNS
因为咱们采用接口的方式进行隔离,故不用建立客户端子网范围
直接建立“内部逻辑范围”
Add-DnsServerZoneScope -ZoneName "eip.com" -Name "internal"
添加对公网提供服务的主机记录
添加对内网提供服务器的主机记录,并加入internal ZoneScope区域
建立DNS policy,定义凡是通过DNS服务器80.0.0.8这个接口来作查询的,都丢到内网OA服务器负责响应
Add-DnsServerQueryResolutionPolicy -Name "SplitBrainZonePolicy" -Action ALLOW -ServerInterface "eq,80.0.0.8" -ZoneScope "internal,1" -ZoneName "eip.com"
默认状况下若是建立了基于接口判断的DNS policy,除了已经匹配接口的请求会按照协议来走,其它未匹配协议的自动走DNS服务器其它可用接口。
登陆internal内部机器,能够看到DNS已经设置成了内部接口的80.0.0.8
访问www.eip.com 自动跳转至内网OA服务器负责响应
登陆internet外部机器,能够看到DNS已经设置成了外部接口的90.0.0.9
访问www.eip.com 自动跳转至外网门户服务器负责响应
能够看到DNS服务器很是智能,已经根据客户端的请求来分配不一样的接口去响应查询请求了,假设公司但愿用同一个域名,内外网访问响应不一样页面,经过这项功能就能够很好的实现。