我正在尝试在Windows Azure虚拟机中打开一个端口。 我有一个监听该端口的游戏,并且可以通过localhost访问它,因此游戏正在运行。
我还在防火墙中打开了该端口,并在虚拟机中创建了一个终结点,但是该端口似乎对外界不开放。 我已经尝试通过IP地址和DNS访问它,但结果相同。
还有其他需要注意的吗? 我查阅了几个在线教程,但无法弄清楚我做错了什么。
我正在尝试在Windows Azure虚拟机中打开一个端口。 我有一个监听该端口的游戏,并且可以通过localhost访问它,因此游戏正在运行。
我还在防火墙中打开了该端口,并在虚拟机中创建了一个终结点,但是该端口似乎对外界不开放。 我已经尝试通过IP地址和DNS访问它,但结果相同。
还有其他需要注意的吗? 我查阅了几个在线教程,但无法弄清楚我做错了什么。
Irina,请确保已经通过设置私有端口和公共端口正确配置了您的终端点。以下文档解释了实现此目的的步骤...
http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/
$ 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。
az vm open-port ...
究竟在做什么。但这对我起作用了。仅通过前端设置入站规则是不够的。(也许使用此命令还更改了 VM 的防火墙设置,我不确定。) - colidyre作为以后的参考,如果您想听取3000或该范围内的内容,它根本不起作用。
转到8080的范围,创建入站规则,然后您就可以运行了。
这可能是撰写此答案时最新的解决方案:
您需要创建一个网络安全组(或使用现有的安全组)。最简单的方法是在搜索资源栏中搜索“网络安全组”。如果存在现有的NSG,请单击它并从设置中查找入站安全规则。然后添加一个具有所需端口的入站规则。例如,我在VM上打开了8080端口,并显示了以下设置。
除了上述内容,您可能需要在虚拟机防火墙中创建入站规则。门户中的设置可以从公共 IP 接收数据并转发到虚拟机,但是虚拟机本身必须允许应用程序侦听端口。
这可能可以解释为什么 Irina 在某些端口上不能正常工作,而在其他端口上可以正常工作。