我正在尝试在Windows Azure虚拟机中打开一个端口 . 我在该端口有一个游戏,我可以通过localhost访问它,所以游戏正在运行 .
我还在防火墙中打开了端口并在虚拟机中创建了一个 endpoints ,但该端口似乎并未对外界开放 . 我尝试通过IP地址和DNS访问它,结果相同 .
还有什么我应该做的吗?我在线查了几个教程,无法弄清楚我做错了什么 .
任何帮助将不胜感激 . 谢谢!
Irina,确保通过设置私有端口和公共端口正确配置了 endpoints . 这是一个文档,解释了完成此任务的步骤......
http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/
这改变了
我建议暂时忽略100%的谷歌内容
除了描述之外,您可能还需要在VM防火墙中创建入站规则 . 门户中的设置创建从公共IP到VM的转发 . VM本身应该允许应用程序侦听端口 . 这可以解释为什么这对某些端口上的Irina不起作用并且在其他端口上工作 .
在撰写这个答案时,这可能是最新的解决方案:
您需要创建网络安全组(或使用现有组) . 最简单的方法是在搜索资源栏中搜索网络安全组 . 如果存在现有NSG,请单击它并从设置中查找入站安全规则 . 然后使用所需的端口添加入站规则 . 例如,我在我的VM上打开了端口8080,其设置如下图所示 .
更多信息:https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-nsg-quickstart-portal/
为了将来参考,如果你试图听3000或那个范围,它根本不起作用 .
转到8080的范围,制定入站规则,然后启动并运行 .
$ az vm open-port -g MyResourceGroup -n MyVm --port 80
az vm open-port -g MyResourceGroup -n MyVm --port 80-100 --priority 100
az vm open-port -g MyResourceGroup -n MyVm --port'*'
--priority:规则优先级,介于100(最高优先级)和4096(最低优先级)之间 . 对于集合中的每个规则必须是唯一的 . 默认值:900 .
6 回答
Irina,确保通过设置私有端口和公共端口正确配置了 endpoints . 这是一个文档,解释了完成此任务的步骤......
http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/
这改变了
我建议暂时忽略100%的谷歌内容
除了描述之外,您可能还需要在VM防火墙中创建入站规则 . 门户中的设置创建从公共IP到VM的转发 . VM本身应该允许应用程序侦听端口 . 这可以解释为什么这对某些端口上的Irina不起作用并且在其他端口上工作 .
在撰写这个答案时,这可能是最新的解决方案:
您需要创建网络安全组(或使用现有组) . 最简单的方法是在搜索资源栏中搜索网络安全组 . 如果存在现有NSG,请单击它并从设置中查找入站安全规则 . 然后使用所需的端口添加入站规则 . 例如,我在我的VM上打开了端口8080,其设置如下图所示 .
更多信息:https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-nsg-quickstart-portal/
为了将来参考,如果你试图听3000或那个范围,它根本不起作用 .
转到8080的范围,制定入站规则,然后启动并运行 .
通过Azure CLI很容易,例如,打开端口80
$ az vm open-port -g MyResourceGroup -n MyVm --port 80
同时打开多个端口
az vm open-port -g MyResourceGroup -n MyVm --port 80-100 --priority 100
全部打开..
az vm open-port -g MyResourceGroup -n MyVm --port'*'
要特别注意此参数,每个规则必须是唯一的
--priority:规则优先级,介于100(最高优先级)和4096(最低优先级)之间 . 对于集合中的每个规则必须是唯一的 . 默认值:900 .