按名称在 Azure VM 之间进行连接
Connecting between Azure VMs by name
我在同一个 Vnet 上有两个 Azure Windows VM。
第二个是从第一个备份恢复的克隆,我已经更改了它的计算机名称,假设我将它们命名为 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 门户中发出警报。
或者最重要的是,正如上面的回复者所指出的,根本不应该允许这种情况发生。
我在同一个 Vnet 上有两个 Azure Windows VM。
第二个是从第一个备份恢复的克隆,我已经更改了它的计算机名称,假设我将它们命名为 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 门户中发出警报。
或者最重要的是,正如上面的回复者所指出的,根本不应该允许这种情况发生。