如何将端口范围设置为 Azure 虚拟机的端点?

How to Set a Port Range to endpoint of a Virtual Machine at Azure?

在 Azure 界面中,我找不到任何用于输入端口范围的字段。我该怎么做而不是单个端口?提前致谢。

来自门户:

  1. Select虚拟机
  2. Select 端点 "tab" 在顶部
  3. 在页面底部select"Add"

参考:https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/

更新: 对于 public 个端点,不支持端口范围。 You are also limited to 150 endpoints,因此如果您的范围大于 150,这可能会导致问题。

如果范围小于150,可以使用Azure PowerShell:Add-AzureEndpoint.

端口应从网络界面一一输入。为了进入范围,你应该 运行 powershell 脚本。默认 windows powershell 不支持 azure。所以首先,您应该安装 Microsoft Azure Powershell。

  1. 从此 link 和 运行 下载安装程序。 http://go.microsoft.com/fwlink/p/?linkid=320376&clcid=0x409

  2. 运行 Microsoft AzurePowershell 作为管理员。使用下面给出的 cmdlet 获取 azure 发布设置文件。 (你应该登录 azure)

    Get-AzurePublishSettingsFile
  3. 使用 Get-AzurePublishSettingsFile cmdlet 登录后,打开页面会下载一个文件。使用下面给出的 powershell 命令输入此文件。

    Import-AzurePublishSettingsFile

    应该是这样的

    Import-AzurePublishSettingsFile .\publishfile.publishsettings

    终于可以登录azure账号了。 运行 以下 cmdlet 可查看整个会员信息。

    Get-AzureSubscription

    您要在哪个端口下打开订阅的 VM,select 使用以下 cmdlet。

    Select-AzureSubscription

    最后准备一个脚本,像下面的脚本一样,范围合适。

       $i=5010
    $e=10
    do
    { Get-AzureVM -ServiceName "my_demo" -Name "my_demo" |
    Add-AzureEndpoint -LocalPort $i -PublicPort $i -Name RTP_$e -Protocol UDP |
    Update-AzureVM;
    $i+=1; $e+=1}
    until ($i -gt 5100)
    

使用 powershell 将脚本保存为 ps1 和 运行 注:每个端口打开过程需要1-2分钟

还可以选择从 CSV 文件中包含的数据打开端点,如 here 所述(带代码)。 @Dogan 解决方案有效,但仅适用于连续端口。

有了I.ps1你可以使用CSV,在很多场合更方便: