2017-05-14 198 views
0

我想知道是否有可能將公共IP端口(例如端口80)映射到Azure iaas上不同的本地/私有IP端口(例如端口81) VM。我相信這在舊門戶中是可行的,並且可以通過Add-AzureEndpoint實現(Add-AzureEndpoint是否將端點添加到VM的網絡安全組?),但通過新的Azure門戶是否可行?Azure VM端點:將公共端口映射到不同的本地端口

+0

同意4c74356b41,我們不能用NSG映射一個端口到另一個端口,如果要執行此操作,則應使用Azure負載平衡器NAT規則。 –

回答

0

如果您需要使用端口轉發將唯一外部端口映射到VM上的內部端口,請使用負載平衡器和網絡地址轉換(NAT)規則。例如,您可能想在外部公開TCP端口8080,並將流量導向到虛擬機上的TCP端口80。您可以瞭解如何創建面向Internet的負載均衡器。

參考:
https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-get-started-internet-arm-ps
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/nsg-quickstart-portal
https://feedback.azure.com/forums/281804-azure-resource-manager/suggestions/13069704-allow-basic-port-forwarding-in-network-security-gr

1

有一個端口代理建成netsh,可以爲你做的,無需額外的基礎設施:https://technet.microsoft.com/en-us/library/cc731068(v=ws.10).aspx#BKMK_1

netsh interface portproxy add v4tov4 listenport=81 connectport=80 connectaddress=127.0.0.1 

如果你的虛擬機上運行的Linux只是使用iptables。

iptables -A PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 81 

(我只是即興發揮兩個命令的語法這裏,不通過文件複製粘貼,但而不是去。)