windows的139端口和445端口的区别

session 1 139和445端口的使用背景
SMB(Server Message Block)协议在NT/2000中用来作文件共享,在Win-NT中,SMB运行于NBT(NetBIOS over TCP/IP)上,使用137,139(UDP),139(TCP)端口。 

在win2000级以上版本中,SMB可以直接运行在tcp/ip上,而没有额外的NBT层,使用TCP 445端口。

session 2 两个端口的使用情况
可以在“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)。 
当计算机同时支持NTB和TCP/IP两种协议的时候,就面临着选择139或者445端口了。下面的情况确定会话使用的端口: 
1、如果客户端启用了NBT,那么连接的时候将同时访问139和445端口,如果从445端口得到回应,那么客户端将发送RST到139端口,终止这个端口的连接,接着就从445端口进行SMB的会话了;如果没有从445端口而是从139得到回应,那么就从139端口进行会话;如果没有得到任何回应,那么SMB会话失败。 

2、如果客户端禁用了NBT,他就将只从445端口进行连接。

3、如果服务器端启用NBT,那么就同时监听UDP 137、138端口和TCP139,445端口。如果禁用NBT,那么就只监听445端口了。 

总结一下:139端口是在NBT协议基础上的,关闭NBT协议139就废了。而445端口是在TCP/IP协议基础上,现在网络中应该很少有不使用TCP/IP协议的了。最后如果主机两种协议同时支持的话(比如windowsxp以后的操作系统)那么共享访问时候的端口使用优先级为:445>139,所以现在UNC路径访问ip地址都是使用445端口,而访问主机名形式是使用139端口(现在基本不用了)。
关闭139端口的方法:“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)

关闭445端口的方法:防火墙阻塞445端口或者禁用server服务都可以。


你可能感兴趣的:(Windows)