azure - 在 Azure VM 中为 tcp 启用端口
问题描述
我创建了一个 Windows WCF 服务,我想将它托管在 Azure VM 中。
该服务在 VM 内本地运行良好,但是当尝试访问 VM 外部的服务时,我无法连接到指定端口的服务。
在请求服务时,我收到以下错误:
SocketException (0x274d): No connection could be made because the target machine actively refused it...
此外,在使用公共 ip 通过命令提示符 ping 虚拟机时,我得到Request timed out
.
我在 Azure 入站规则和 VM 防火墙入站规则中启用了 TCP 端口。虚拟机是 Windows Server。
如何从另一个系统访问在 VM 中运行的服务?
任何帮助表示赞赏。
解决方案
- 检查应用程序是否在您公开的端口上运行
- 检查 Windows 级别的防火墙是否允许来自您的目的地的该端口上的流量
- 检查 NIC 级别 NSG 允许该端口上来自您的目标的流量
- 检查子网级别 NSG 允许该端口上来自您的目的地的流量
- 您可能在网络设置中也有 Azure Firewall\UDR\NVA,请同时检查它们(如果您没有运行企业级设置,这极不可能)。
推荐阅读
- python - 如何以特定用户身份将文件上传到 onedrive?
- nginx - Nginx 子域配置 Letsencryt 通配符 HTTPS 证书
- c++ - 从 .bin arm 处理器应用程序到 Arm 的 C++ 的源代码
- python - 如何从熊猫数据框中获取“创建”脚本?
- dynamics-crm - 从 Dynamics 365 获取审核记录详细信息到 Power BI
- python - 了解嵌套字典的 .get() 方法
- javascript - 我可以将 Vue 输出保存为 Javascript 数组吗?
- spring - Spring boot 不断收到“需要一个 bean,但找到了 10 个”,尽管我只声明了一个服务
- azcopy - azcopy v10 - 仅当目标文件不存在时才复制到目标
- python - 如何使用唯一代码从 CSV 文件中读取一行?