我们一直在经历将虚拟机从我们的数据中心迁移到 Azure 的过程。在迁移过程中,其中一个难题是网络规则;即 NSG、硬件防火墙、操作系统防火墙、VPN 路由规则等分布在不同的地方,每个规则都由不同的团队管理,因此说出需要更新的内容并确保在迁移虚拟机之前已经更新可能会很尴尬 - 而且在虚拟机迁移完成之前您无法进行测试...或者这是我最初的假设。
我意识到我们可以在迁移虚拟机之前创建 NIC 并为其分配 IP。我们可以暂时将此 NIC 连接到侦听相关端口的资源,这样我们就可以进行测试(例如Test-Connection $myNicIP -Port $myPort
从我们感兴趣的客户端使用)。
我们可以为此使用任何 VM,并且由于 VM 不必与其 NIC 位于同一资源组中,因此我们可以拥有任意 VM,并运行以下 PS 来为我们的测试创建一个临时监听器:$s = [System.Net.Sockets.TcpListener]::new([System.Net.IPAddress]::Any, $PortOfInterest);$s.Start();Start-Sleep -Seconds 600;$s.Stop()
。
然而,还有更好的选择吗?
- 如果有某种方法可以仅使 NIC 响应而无需将其连接到任何东西(即为了易于测试),那将是理想的......但我想不太可能。
- 或者有更好的解决方案;例如,上面的 powershell 很容易成为无服务器功能;但为此我们需要高级服务或 ASE,然后需要设置一个私有端点来连接网卡;所以要达到这个目的需要几个步骤。是否有一些现有的解决方案可以在几分钟内部署以连接到网卡并仅监听/接受传入的 TCP 请求;无需对它们执行任何其他操作。
答案1
Azure 网络接口只能连接到 VM,因此您需要使用 VM。