映射Azure Blob Storage为网络驱动器时无法通过445端口访问存储账户
问题根因
1. nslookup域名解析失败原因
nslookup、telnet、SMB挂载均要求传入纯域名,不能携带HTTP/HTTPS协议头、路径后缀。你在测试和脚本中填写的地址是https://analyticsdev.blob.core.windows.net/,包含了https://前缀和末尾的/,系统会把整个字符串当作完整域名去解析,自然会返回域名不存在的报错。正确的纯域名应为analyticsdev.blob.core.windows.net。
2. 445端口连通失败原因
- 第一是你telnet时传入了带HTTPS前缀的错误地址,根本无法定位到目标主机;
- 第二是国内公网环境下,三大运营商默认都会封禁445端口的入站、出站流量,就算地址填写正确,公网直接访问也大概率无法连通。
修复方案
- 第一步:修正脚本变量
把脚本中$BLOB_STORAGE_LOCATION的取值从https://analyticsdev.blob.core.windows.net/修改为analyticsdev.blob.core.windows.net,删除协议头和末尾的斜杠。 - 第二步:验证域名解析
执行命令nslookup analyticsdev.blob.core.windows.net,确认能正常返回存储账户对应的IP地址。 - 第三步:验证端口连通性
执行命令telnet analyticsdev.blob.core.windows.net 445,测试端口连通状态。若公网环境下测试仍提示连通失败,属于运营商正常封禁445端口的情况,需通过私有网络方案解决。
- 第四步:根据使用场景选择连通方案
- 临时测试场景:可切换手机热点尝试,部分运营商移动网络未封禁445端口,可直接连通;
- 企业生产场景:配置Azure P2S VPN、S2S VPN或ExpressRoute,将SMB流量通过私有隧道传输,避开公网445端口封禁;
- 替代方案:也可开启存储账户NFS 3.0访问权限,或使用Azure File Sync工具同步数据,替代SMB直接映射网络驱动器的方案。
内容的提问来源于stack exchange,提问作者Cataster
相关产品推荐
相关产品推荐

