Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
按名称在Azure VM之间连接_Azure_Azure Virtual Machine_Azure Virtual Network - Fatal编程技术网

按名称在Azure VM之间连接

按名称在Azure VM之间连接,azure,azure-virtual-machine,azure-virtual-network,Azure,Azure Virtual Machine,Azure Virtual Network,我在同一个Vnet上有两个Azure Windows虚拟机 第二个是从第一个备份还原的克隆,我更改了它的计算机名,比如说我将它们称为vmOriginal(10.0.0.4)和vmClone(10.0.0.5) 我正在测试它们之间的通信,最简单的情况是使用telnet连接到另一个开放端口 这在使用本地IP地址的两个方向上都是成功的 vmOriginal还可以通过名称远程登录到vmClone 但vmClone无法按名称远程登录到vmOriginal(无法打开到主机的连接,连接失败) 我该如何解决这个

我在同一个Vnet上有两个Azure Windows虚拟机

第二个是从第一个备份还原的克隆,我更改了它的计算机名,比如说我将它们称为vmOriginal(10.0.0.4)和vmClone(10.0.0.5)

我正在测试它们之间的通信,最简单的情况是使用telnet连接到另一个开放端口

这在使用本地IP地址的两个方向上都是成功的

vmOriginal还可以通过名称远程登录到vmClone

但vmClone无法按名称远程登录到vmOriginal(无法打开到主机的连接,连接失败)


我该如何解决这个问题呢?

这简直难以置信。原来问题是计算机名太长(我上面使用的只是为了清楚起见)

对于Azure VM,计算机名实际上必须最多为12个字符(即使在控制面板中设置时Windows允许15个字符)

Azure对此没有任何警告

对于vNet DNS,Azure在计算机名中添加了一个51个字符长的域,我猜它代表本地vNet。它看起来像:

rifmvhdprmqxsebj4n0m6vnd2d.qx.internal.cloudapp.net
添加分隔符点后,计算机名只允许有12个备用字符

如果超过该长度,则总表达式将超过DNS条目的64个字符限制,这意味着在DNS中找不到该计算机,并且无法通过网络上的名称引用该计算机

这里有一份反馈意见书解释了这个确切的情况,这是我在数小时的搜索后发现的唯一让我走上正轨的东西

我不明白为什么这个问题没有被更广泛地了解。或者更好,在Azure门户中发出警报


或者最重要的是,正如上面的响应者所指出的,不应该允许这种情况发生。

您是否通过
telnet name port
对其进行了测试?是FQDN还是计算机名?嗨,南希,是的,我就是这样做的。这两个都是计算机名,由控制面板设置,并在Azure门户的VM属性中的计算机名下正确显示。在两个VM上运行
nslookup name
的结果是什么?在vmOriginal上,我得到了正确的非权威答案。在vmClone上,我得到“未知无法找到vmOriginal:不存在的域”。两个VM是否在同一个VNet中使用相同的DNS服务器?您可以通过
ipconfig/all
显示它。出色的侦查工作和解释。感谢您花时间将其记录下来。这是一个有趣的限制和监督。