计算机中,端口是计算机与外部进行通信交流的出口。计算机本身携带的物理端口(键盘、鼠标、显示器等输入/输出接口)已经无法满足网络通信的要求,因此TCP/IP协议就引入了一种称为Socket的应用程序接口。该技术可以让当前计算机通过软件与任何一台具有Socket接口的计算机进行通信,以满足网络通信的需求。而Socket接口就是通常所称的“端口”。
一、端口的分类
计算机中,不同的端口具有不同的功能,如:80号端口用于浏览网页服务,21号端口用于FTP服务......计算机中可开启的端口数值范围是1~65535。按照端口的分布,可以将计算机中端口分为公认端口、注册端口、动态和/或私有端口。
- 公认端口
公认端口也称为“常用端口”,这类端口包括0~1023号端口。它们紧密的绑定一些特定的服务,通常这些端口的通信明确的表明了某种服务的协议,用户无法重新定义这些端口对应的作用对象。如,80号端口分配给HTTP通信使用,用户无法对80号端口进行重新定义。
2.注册端口
注册端口号包括1024~49151号端口,它们松散的绑定于一些服务。即这些端口上绑定了许多服务,但同样用于其他的目的。这些端口与公认端口不同,它们多数没有明确的作用对象,不同的程序可以根据实际需要进行自定义。可以利用这些端口定义一些远程控制软件和木马程序,因此对这些端口的防护和病毒查杀非常有必要。
3.动态和/或私有端口
该类端口包括49152~65535号端口。这些端口通常不会被分配常用服务,但是一些常用的木马和病毒非常喜欢利用这些端口,原因是这些端口不会引起人们注意,并且很容易隐蔽。
按照协议类型进行划分端口
端口号的划分不仅可以根据端口号划分,也可以根据协议类型进行划分。根据协议类型可以划分为TCP端口和UDP端口两类。
- TCP端口
采用了TCP通信协议,利用该端口连接远程计算机并发送信息后,还需要确认信息是否到达。主要包括:21(FTP服务)、23(Telnet服务)、25(SMTP服务)、110(POP3服务)号端口。
- UDP端口
采用了UDP通信协议,利用该端口连接远程计算机发送消息后,无需确认信息是否送达。主要包括:80(HTTP服务)、53(DNS服务)、161(SNMP服务)号端口。