Azure搭建自己的内网DNS服务器

2019-02-26    来源:多智时代

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内网DNS服务器。这篇博文分享的是我们在Azure上搭建自己的内网DNS服务器的经过。

1、创建1台用于跑DNS服务的虚拟机,假设名叫dnsserver。

Azure搭建自己的内网DNS服务器

2、登录这台虚拟机,安装DNS服务。

Azure搭建自己的内网DNS服务器

3、安装时Windows警告虚拟机用的是动态IP,推荐使用静态IP。听从该警告,接下来我给虚拟机配置静态IP。

Azure搭建自己的内网DNS服务器

4、进入Azure管理控制台->Networks,在虚拟网中添加一名为DNS的子网,子网的目的仅是为了给DNS服务器保留内网IP,这里我们保留了3个IP(见下图)

Azure搭建自己的内网DNS服务器

在添加子网保存时,我们发现了这样的提示:

Changing the configuration of a network that is in use will briefly disrupt the connection between the virtual network and the local network. Are you sure you want to continue?

修改虚拟网设置竟然会引起网络短时间的中断!难道在生产环境中,如果要修改虚拟网设置,还要找个夜深人静、访问量最少的时间。即使这样,也是造成了正常服务的中断。这地方的设计还是有所欠缺。

5、回到需要安装DNS服务的虚拟机,给它指定静态IP(10.0.1.4),但是子网掩码与网关不知怎么填。算了,还是把这台虚拟机移到DNS这个子网(之前在FrontEnd子网),然后根据DHCP的信息进行填写。

6、但无法在子网间移动虚拟机,只能先“删除”这台虚拟机(在Azure中,删除虚拟机是指删除虚拟机的运行实例,从编程角度讲删除的是对象,而不是类文件)。

7、New Virtual Machine From Gallery -> My Disks,重新创建dnsserver虚拟机,创建时选择DNS这个虚拟网子网。

Azure搭建自己的内网DNS服务器

8、dnsserver虚拟机创建好之后,根据DHCP分配的IP信息,设置静态IP(见下图)。

Azure搭建自己的内网DNS服务器

(注:在保存静态IP设置时,远程桌面连接会闪断一下)

9、重新打开Server Manager,继续安装DNS服务。安装成功之后在其他虚拟机上用“telnet 10.0.14 53”命令测试一下,如果成功连接说明DNS服务工作正常。

10、在dnsserver虚拟机上打开DNS管理工具,新建一个名为cnblogs.local的区域,在创建时一定要选择允许动态更新(见下图)。

Azure搭建自己的内网DNS服务器

11、创建好区域之后,DNS服务器本身的配置工作就完成了。

Azure搭建自己的内网DNS服务器

12、打开Azure的Networks管理控制台,选择相应的虚拟网,进入Configure页面,添加之前配置的DNS服务器。

Azure搭建自己的内网DNS服务器

13、保存时出现如下的提示:

Changing the configuration of a network that is in use will briefly disrupt the connection between the virtual network and the local network. Are you sure you want to continue?

If you change the DNS server while the virtual network is in use, you have to restart the virtual machines to reset the DNS settings.

不仅会造成网络中断,而且为了使DNS生效,需要重启所有虚拟机。

14、保存成功后,发现原来为虚拟机提供DNS解析服务的Azure内置DNS服务器拒绝服务了,这个地方的设计不够人性化。

15、分别重启不在同一个Cloud Service中的blogserver2与passport这两台虚拟机,重启发现DNS的确切换为了我们设置的DNS服务器。

Azure搭建自己的内网DNS服务器

然后,测试dns解析,ping blogserver2,结果依然是:

Ping request could not find host blogserver2. Please check the name and try again.

再看一下blogserver2的IP信息,DNS后缀与DNS服务器的区域信息不匹配。

Azure搭建自己的内网DNS服务器

而且DNS服务器中也没有对应的blogserver2主机记录。

Azure搭建自己的内网DNS服务器

16、解决方法:打开blogserver2的TCP/IP高级设置,在“DNS”设置中,给“DNS suffix for this connection”添加后缀值cnblogs.local(与DNS区域名称保持一致),并且选中“Use this connection's DNS buffix in DNS registration”(让DHCP将主机名解析注册至DNS服务器中)。

Azure搭建自己的内网DNS服务器

passport这台虚拟机也进行同样的设置,然后重启这两台虚拟机。

17、blogserver2与passport这两台虚拟机重启成功后,就会在DNS服务器的区域中看到这两台服务器的解析记录。

Azure搭建自己的内网DNS服务器

18、在passport这台虚拟机中测试一下dns解析,运行命令:ping blogserver2,运行结果如下:

Azure搭建自己的内网DNS服务器

搞定!

配置要点小结

1、DNS服务器要用静态IP,划分专门的子网以保留IP给DNS服务器。

2、DNS服务器要允许动态更新。

3、每台需要DNS服务的虚拟机都需要修改TCP/IP设置,给“DNS suffix for this connection”添加后缀值cnblogs.local(与DNS区域名称保持一致),并且选中“Use this connection's DNS buffix in DNS registration”(让DHCP将主机名解析注册至DNS服务器中)。

4、每台需要DNS服务的虚拟机都需要重启。

如何解决DNS服务器的单点故障

再用虚拟机搭建一台DNS服务器,让这两台DNS服务器自动复制,然后在Azure虚拟网中设置两台DNS服务器。

在不久的将来,云计算一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏云计算,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!

标签: dns dns服务 dns服务器 dns管理 dns解析 大数据 服务器 内网dns 网络 域名 云计算

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:新型IDC让云计算“绿色”起来

下一篇:“云管理” 或将成佛企风尚