问题
公司内部的共享服务器突然访问不了了(iMac访问Windows共享)。提示错误“请检查服务器名称或IP地址,然后再试一次,如果问题持续发生,请联系系统管理员”
经过试验,有如下现象:
- 可以访问旧服务器,没法访问新服务器,但是会弹出验证窗口,只不过输入用户名密码后就弹错
- 可以在别人的win笔记本、我自己的win虚机访问,就是不能从iMac直接访问(cifs和smb协议都不行)
- iMac连接无线和有线网络都不行
- 用traceroute命令,并没有看到什么问题
解决
参阅了苹果官网的这篇文章 https://support.apple.com/zh-cn/HT210423,找到了原因
对于收到 2019 年 6 月 11 日或之后的 Microsoft Windows Server 更新的服务器,macOS Mojave 和更低版本可能无法使用 NTLM 凭证连接到服务器上的 CIFS 或 SMB1 共享。输入用户名和密码后,您会看到一条警告,提示连接到服务器时出现问题,请检查服务器名称或 IP 地址,然后再试一次。
很早之前,连接公司的共享服务特别慢,查了一些文章说用 smb 的版本 1 协议会快,所以把配置文件 /etc/nsmb.conf 改了(其中的 protocol_vers_map 字段,被我从 3 改成了 1),又过了很久,就忘了这事了。
cat /etc/nsmb.conf
[default]
protocol_vers_map=1 # 把这个版本号从1改回到3就好了
dir_cache_off=yes
dir_cache_max_cnt=0
应该是最近公司的新服务器升级了windows server版本,导致的 iMac 这里用版本 1 的协议不兼容了,把协议号改回到 3 就可以了。