云计算之路-试用Azure:上不了高速的跑车,没法跨Cloud Service的DNS服务器

从阿里云的踩坑大师,到Azure的抹黑大师,咱们彷佛成了云计算负面用户的典型,但是咱们仍是忍不住想表达本身真实的使用感觉。若是有错误的地方,欢迎你们批评!html

在Azure上建好虚拟网(Vitual Network)以后(详见云计算之路-试用Azure:如何创建虚拟机之间的内网链接),虚拟机(Virtual Machine)之间须要进行内网通讯,通讯时使用计算机名比直接使用内网IP更友好、更方便、更能应对变化。服务器

在使用阿里云的时候,咱们只能在每台虚拟机的hosts中添加计算名与IP之间的映射,可是若是某一台虚拟机的IP发生了变化,就要在全部与之通讯的虚拟机中修改hosts文件。网络

若是你当过网管,用Windows组建过局域网,你就知道微软早已对这个问题有解决方案——在DHCP时,将计算机名与IP地址的映射动态添加到DNS服务器中。post

在Azure中,咱们惊喜地发现虚拟网也有这个功能,好比下图中的blogserver1这台虚拟机的网络接口信息。网站

IP地址与DNS服务器都是由DHCP分配的。阿里云

而后咱们看一下同一个Cloud Service中的另外一台虚拟机blogserver2的网络接口信息。云计算

从中能够看出,用的是同一个DNS服务器。而后咱们在blogserver1中直接ping blogserver2:url

成功经过DNS服务器完成计算机名到IP地址的解析,无需在hosts中手动添加。设计

以上的场景是在同一个Cloud Service中。3d

咱们到另外一个Cloud Service的虚拟机中看看:

虽然是同一个虚拟网的子网,内网IP是同一个网段的,网关也同样,但DNS服务器却不同了。结果ping blogserver2就没法解析了。

也就是说Azure中DNS服务器解析计算机名的功能只在同一个Cloud Service中有效。

你也许会说,把虚拟机都放在同一个Cloud Service不就解决问题了吗?可是,同一个Cloud Service只有一个VIP。对于一个网站来讲,须要将不一样的应用部署到不一样二级域名的不一样虚拟机上。从目前知道的状况看,只用一个Cloud Service实现不了。

原本是一个颇有用的功能,如今却没法让它发挥做用,这种感受就像你有了一辆跑车,却不能上高速。

熟悉Azure的朋友看到这,可能又说不专业,怎么又是临时工写的?在Azure虚拟网中不是能够设置使用本身的DNS服务器吗?

本身架设DNS服务器的确是一种解决方法,但有些麻烦还要额外的成本。有了一辆跑车,不能上高速;难道要上高速,就必定要本身再造一辆跑车吗?微软一步到位解决这个问题不是更好吗?

既然同一个子网,同一个网关,可以直接进行网络通讯,为何就不能使用同一个DNS服务器,这样的设计让人想不通。

相关文章
相关标签/搜索