Windows访问共享文件夹,使用的是smb协议,默认使用139和445端口,公司办公网络不知道为何居然设置了策略不让使用445端口,因此平时访问共享都是走的139端口;服务器
坑爹的是有时候居然有的办公电脑没法访问共享,检查服务:Server、Workstation、Computer Browser,都没有问题,Microsoft网络的文件和打印机共享也没有问题,防火墙也关了,NetBIOS设置也开了,就是没法访问;网络
查看访问的端口发现此电脑只去链接服务器的445端口,好奇怪,为何不走139呢,默认的应该是:若是客户端启用了NetBIOS,那么链接的时候将同时访问139端口和445端口,若是从445端口获得回应,那么客户端将发送RST到139端口,终止这个链接,接着就从445端口进行SMB的了,若是没有从445端口获得回应,而是从139获得回应,那么就从139端口进行会话。NetBIOS协议我开了呀,为何不生效呢?ide
通过最后的排查,原来是由于计算机名重名引发的,SMB在使用NetBIOS与139端口创建链接时会查看本地网络中是否有重名,若是重名,为防止冲突,则只使用445端口;it
原来如此,因此更改计算机名称后正常。
io
其实主要是这台电脑没有加域,若是加域了,就不会出现这样的问题了;还有计算机重名是加不了域的,必须更改计算机名重启后,才能加域。class