我尝试了所有能找到的东西:
1)在Azure配置中设置新的网络安全组(NSG)
2)配置Windows防火墙以允许27017上的端口流量 .
3)编辑了MongoDB的cfg文件,以便与本地ip绑定到外部子网10.0.0.4 .
net:
bindIp: 127.0.0.1,10.0.0.4
port: 28017
systemLog:
destination: file
path: c:\mongodb\logs\mongod.log
storage:
dbPath: c:\mongodb\data\db
我已经走到禁用Windows防火墙 - 没有成功 .
我已经改变了azure配置中的网络安全组,以允许所有端口上的所有流量 - 没有成功 .
我已经将MongoDB改为使用非默认端口并相应地更新了防火墙和NSG,正如您从上面的cfg中看到的那样 - 没有成功 .
在上述所有情况下,我甚至无法从多个远程机器(win 7和win 10)查询端口 .
portqry.exe -n xxx.southcentralus.cloudapp.azure.com -e 28017 -p BOTH exits with return code 0x00000002
这在旧的虚拟机配置上很容易做到(配置 endpoints ) . 现在有了这些资源组,我显然错过了一些东西 .
1 回答
您的NSG设置看起来不错 . 唯一看起来可疑的是你的
bindIp
. 请尝试将其设置为:我重新创建了您的配置,这是唯一的区别 . 事实上,如果我尝试绑定到我的内部IP地址,
mongod
无法启动 . 尝试绑定到0.0.0.0
- 这应该允许您通过localhost和外部世界连接 .注意:如果您确实希望
bindIp
中有多个地址,则需要将列表括起来[ ... ]
括号 .