Azure DNS除了对外提供公开的互联网上(面向 Internet)的DNS解析,还在Azure 内部提供了专用DNS,主要应用于在虚拟网络内部或虚拟网络之间实现域名解析。
关于Azure DNS 面向Internet的服务请参照:
视频讲解:
请观看B站视频:https://www.bilibili.com/video/av89682045/
或本站视频(内容相同,二选一即可)
今天我们看的是Azure 专用DNS区域(Azure Private DNS)。
Azure 专用 DNS 具有以下优势:
-
无需使用自定义 DNS 解决方案。
-
使用所有常见的 DNS 记录类型。 Azure DNS 支持 A、AAAA、CNAME、MX、PTR、SOA、SRV 和 TXT 记录。
-
自动化主机名记录管理。 除了承载自定义 DNS 记录之外,Azure 还会自动维护指定虚拟网络中的 VM 的主机名记录。
-
虚拟网络之间的主机名解析。 不同于 Azure 提供的主机名,专用 DNS 区域可以在虚拟网络之间共享。 此功能简化了跨网络和服务发现方案,例如,虚拟网络对等互连。
-
水平分割 DNS 支持。 借助 Azure DNS,可以使用相同的名称创建在虚拟网络内与在公共 Internet 内分别解析为不同结果的区域。 水平分割 DNS 的典型方案是提供一个专用服务版本以在虚拟网络内部使用。
-
在所有 Azure 区域中可用。 Azure 公有云中的所有 Azure 区域均已推出 Azure DNS 专用区域功能。
典型的方案一:在单个虚拟网络范围内的名称解析
上述方案中,虚拟机VNETA-MV01和虚拟机VNETA-VM01 分别可以使用对方的IP或者域名访问对方。
典型的方案二:跨虚拟网络的名称解析
上述方案中,
两个虚拟网络中的虚拟机,均可以使用IP或域名方式访问对方虚拟网络中的虚拟机;
某个虚拟网络中的虚拟机不可以根据IP反向查询DNS查询另一个虚拟网络中的域名,即反向DNS查询的范围仅限同一个虚拟网络。
可以使用 nslookup 命令查询和反向查询作为参考:
典型的方案三:水平分割
水平分割案例中,无论通过内部DNS还是外部DNS都可以访问到相同的某台虚拟机。
案例,在同一个虚拟网络中,使用专用DNS自动注册虚拟机,并通过域名互相访问
https://www.bilibili.com/video/av89682045/
案例文字步骤:
1.创建虚拟网络vnet:
2. 创建虚拟机vm01,注意该虚拟机使用第一步创建的vnet
3.创建专用DNS区域“51cloud.tech”,注意,对于私有DNS区域,不检查你对“51cloud.tech”这个域名的所有权。
4. 设置DNS区域的虚拟网络链接
选中第一步中创建的vnet,勾选自动注册,自动注册指的是虚拟机自动注册,其他产品,诸如负载均衡则不能自动注册。
等待配置生效后,第二部创建的虚拟机,会自动增加一条A记录,记录为“vm01.51cloud.tech”,IP 为该虚拟机的内网IP
5.在虚拟网络vnet下再创建第二台虚拟机,vm02
同样该虚拟机创建完成后会自动添加一条DNS记录,vm02.51cloud.tech->10.2.0.5
6.登录到第一台虚拟机中,进行ping/远程登录/nslookup 测试
可以在第一台虚拟机中,通过vm02.51cloud.tech 远程登录第二台虚拟机;
可以使用nslookup vm02.51cloud.tech 查询到第二台虚拟机的IP为 10.2.0.5;
可以使用nslookup -qt=prt 10.2.0.5 反向查询到第二台虚拟机的域名为 vm02.51cloud.tech