这次来谈个简单的话题,聊聊DNS,DNS是不可或缺的组件之一,不管是在内网还是internet,想要解析域名都需要DNS,内网解析一般都会通过搭建专用的DNS服务器实现,Azure中实际上还提供了一种PaaS的DNS服务,也就是Azure DNS,Azure DNS的好处在于可以直接托管你得DNS解析,不管是内网还是外网,而且Azure DNS支持多种记录类型,包括MX记录,SRV记录等等,要知道有些DNS提供商都不支持这些记录的,Azure DNS实际上包括两种类型

    Private DNS以及Public DNS,Public DNS推出已经很久了,而且在mooncake也已经落地,private DNS推出的时间并不是很久,而且目前也只是在Global才有,public DNS实际上和其他域名提供商的使用方法基本差不多,这次主要看private DNS,首先来看看官方给出的private DNS的优势

Azure 专用 DNS 具有以下优势:

  • 无需使用自定义 DNS 解决方案 以前,许多客户创建了自定义 DNS 解决方案来管理其虚拟网络。 现可使用本机 Azure 基础结构管理 DNS 区域,这解除了创建和管理自定义 DNS 解决方案的负担。

  • 使用所有常见的 DNS 记录类型 Azure DNS 支持 A、AAAA、CNAME、MX、PTR、SOA、SRV 和 TXT 记录。

  • 自动化主机名记录管理 除了承载自定义 DNS 记录之外,Azure 还会自动维护指定虚拟网络中的 VM 的主机名记录。 在此场景中,可以优化所使用的域名,不需要创建自定义 DNS 解决方案或修改应用程序。

  • 虚拟网络之间的主机名解析 不同于 Azure 提供的主机名,专用 DNS 区域可以在虚拟网络之间共享。 此功能简化了跨网络和服务发现方案,例如,虚拟网络对等互连。

  • 熟悉的工具和用户体验 为了降低学习难度,此服务使用成熟的 Azure DNS 工具(Azure 门户、Azure PowerShell、Azure CLI、Azure 资源管理器模板和 REST API)。

  • 水平分割 DNS 支持 借助 Azure DNS,可以使用相同的名称创建在虚拟网络内与在公共 Internet 内分别解析为不同结果的区域。 水平分割 DNS 的典型方案是提供一个专用服务版本以在虚拟网络内部使用。

  • 在所有 Azure 区域中可用 Azure 公有云中的所有 Azure 区域均已推出 Azure DNS 专用区域功能。

功能

Azure DNS 提供以下功能:

  • 从链接到专用区域并启用了自动注册的虚拟网络中,自动注册虚拟机 虚拟机将作为指向其专用 IP 地址的 A 记录注册(添加)到专用区域。 在启用了自动注册的虚拟网络链接中删除虚拟机后,Azure DNS 还会从所链接的专用区域中删除对应的 DNS 记录。

  • 在链接到专用区域的虚拟网络之间支持正向 DNS 解析 对于跨虚拟网络 DNS 解析,不会明确要求虚拟网络彼此对等互连。 不过,对于其他场景(例如 HTTP 流量),你可能希望将虚拟网络对等互连。

  • 在虚拟网络范围内支持反向 DNS 查找 对分配到专用区域的虚拟网络中的专用 IP 进行反向 DNS 查找会返回 FQDN,其中包括主机/记录名称以及作为后缀的区域名称。



可以看到支持的功能和场景还是很多的,而且Azure DNS使用起来很方便,简单来看下

首先直接在portal创建private DNS即可

Azure Private DNS应用_第1张图片



之后指定一个我们需要使用的域名,因为是内网使用,所以指定一些别人的域名也无所谓

Azure Private DNS应用_第2张图片




    创建完成后,我们开始链接VNET,我们的环境里有两个VNET,分别在不同的region,使用global peering打通Azure Private DNS应用_第3张图片



直接选择想要的VNET即可

    Azure Private DNS应用_第4张图片


同理添加另外一个VNET

Azure Private DNS应用_第5张图片



之后我们看到,在两个VNET中的两台机器自动添加到Azure DNS了

Azure Private DNS应用_第6张图片


在两台节点都可以通过hostname+域名的方式访问到对方了

8.png


Azure Private DNS应用_第7张图片


除此之外,我们还可以添加MX记录,SRV这些记录

Azure Private DNS应用_第8张图片


添加完成后,在vm上就尅解析到对应的MX记录了

Azure Private DNS应用_第9张图片