网络端口号的绑定,以及分类

一、

计算机"端口"是英文port的义译,可以认为是计算机与外界通讯交流的出口。其中硬件领域的端口又称接口,如:USB端口、串行端口等。软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O(基本输入输出)缓冲区。

1.端口的分类
端口的分类根据其参考对象不同有不同划分方法,如果从端口的性质来分,通常可以分为以下几类。
  (1)公认端口(Well Known Ports):这类端口也常称之为“常用端口”。这类端口的端口号从0到1023,它们紧密绑定于一些特定的服务。通常这些端口的通信明确表明了某种服务的协议,这种端口不可再重新定义它的作用对象。例如,80号端口实际上总是HTTP通信所使用的,而23号端口则是Telnet服务专用的。这些端口像木马这样的黑客程序通常不会利用。
  (2)注册端口(Registered Ports):端口号从1 024到49 151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其他目的。这些端口多数没有明确的定义服务对象,不同程序可根据实际需要自己定义,如后面要介绍的远程控制软件和木马程序中都会有这些端口的定义的。这些常见的程序端口在木马程序的防护和查杀上是非常有必要的。
  (3)动态和/或私有端口(Dynamic and/or Private Ports):端口号从49 152到65 535。理论上,不应为服务分配这些端口。实际上,有些较为特殊的程序,特别是一些木马程序就非常喜欢用这些端口,因为这些端口常常不被引起注意,容易隐蔽。

2.TCP和UDP协议端口
如果根据所提供的服务方式的不同,端口(此处的“端口”特别针对传输层而言)又可分为“TCP协议端口”和“UDP协议端口”两种(其实其他协议也有“端口”,但它们不称之为端口,而是称之为“协议号”,如IP协议号)。因为计算机之间相互通信一般采用这两种通信协议。直接与接收方进行的连接,发送信息以后,可以确认信息是否到达。这种方式大多采用TCP协议;另一种不是直接与接收方进行连接,只管把信息放在网上发出去,而不管信息是否到达,也就是“无连接方式”。这种方式大多采用UDP协议,IP协议也是一种无连接方式。对应使用以上这两种通信协议的服务所提供的端口,也就分为“TCP协议端口”和“UDP协议端口”。

使用TCP协议的常见端口主要有以下几种。
    FTP:定义了文件传输协议,使用21号端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。 
    Telnet:它是一种用于远程登录的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。如以前的BBS是纯字符界面的,支持BBS的服务器将23号端口打开,对外提供服务。
     SMTP:定义了简单邮件传送协议,现在很多邮件服务器用的都是这个协议,用于发送邮件。如常用的免费邮件服务中用的是这种邮件服务器端口,所以在电子邮件设置中常看到有SMTP端口设置这个栏,服务器开放的是25号端口。 
     POP3:与SMTP对应,用于接收邮件。通常情况下,POP3协议所用的是110号端口。也是说,只要有相应的使用POP3协议的程序(例如Foxmail或Outlook),就可以不以Web方式登录进邮箱界面(如是163邮箱就没有必要先进入网易网站,再进入自己的邮箱来收信),直接用邮件程序就可以收到邮件。

使用UDP协议端口常见的有以下几种。
     HTTP:这是大家用得最多的协议,就是常说的“超文本传输协议”。上网浏览网页时,就得在提供网页资源的计算机上打开其80号端口以提供服务。常说的WWW服务、Web服务器用的是这个端口。
     DNS:用于域名解析服务。这种服务在Windows NT系统中用得最多。互联网上的每一台计算机都有一个网络地址与之对应,这个地址是常说的IP地址,它以纯数字的形式表示。然而这却不便记忆,于是出现了域名,访问计算机的时候只需要知道域名,域名和IP地址之间的变换由DNS服务器来完成。DNS用的是53号端口。 
     SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。 
     OQ:程序既接受服务,又提供服务,这样两个聊天的人才是平等的。OQ用的是无连接的协议,也是说它用的是UDP协议,其服务器使用8 000号端口,侦听是否有信息到来,客户端使用4 000号端口,向外发送信息。如果上述两个端口正在使用(有很多人同时和几个好友聊天),就顺序往上加。

二、关于绑定IP地址与端口号:

客户端

1. TCP客户端:
1) 当TCP客户未绑定IP地址,当它调用connect时内核会根据外出接口给它绑定一个IP地址和一个临时端口号。并且TCP服务器在接到这个连接后会以这个IP地址作为回应数据报的目的IP地址。
2) 当TCP客户绑定了IP地址,它就为发出的数据连接指定了一个源IP地址,并且TCP服务器在接到这个连接后会以这个IP地址作为回应数据报的目的IP地址。
3) TCP客户只能根据四元组(原端口号,原IP地址,目的端口号,目的IP地址)接受数据报。

2. UDP客户端:
1) 当UDP客户未绑定IP地址,当它调用sendto时内核会根据外出接口给它绑定一个IP地址和一个临时端口号。(UDP客户可以接收到达它绑定的临时端口的任何UDP数据报)。
2) 当UDP客户绑定了IP地址,它就为发出的数据报指定了一个源IP地址,并且UDP服务器在接到这个数据报后会以这个IP地址作为回应数据报的目的IP地址。(UDP客户只能接收到达它绑定的临时端口并且目的地址为它绑定的IP地址的UDP数据报)。
3) 当UDP客户调用connect,内核记录下对方的IP地址和端口号,它们包含在传递给connect的套接口地址结构中,并为UDP客户绑定了一个临时端口号和IP地址。(UDP客户只能接收目的IP地址为它绑定的IP地址和端口号并且源IP地址为它指定对方的IP地址和端口号的数据报)。

服务器端

1. TCP服务器:
1) 当TCP服务器绑定通配IP地址,套接口会接收到达它绑定端口的任何TCP连接。并以接收的目的IP地址作为它的源IP地址(用以确定四源组),以接收的源IP地址作为它的目的IP地址发回应答。
2) 当TCP服务器绑定本地IP地址,这就限制了套接口只接收到达它绑定端口并且目的地址为此IP地址的客户连接。以绑定的目的IP地址作为源IP地址(当然,绑定的IP地址肯定与接收连接的目的IP地址相同,否则它不会接收),并以接收的源IP地址作为它的目的IP地址发回应答。

2. UDP服务器:
1) 当UDP服务器绑定通配IP地址,套接口会接收到达它绑定端口的任何UDP数据报。并以数据报的外出接口的主IP地址为源IP地址,以接收到的源IP地址作为它的目的IP地址发回应答。
2) 当UDP服务器绑定本机IP地址,这就限制了套接口只接收到达它绑定端口并且目的地址为此IP地址的UDP数据报。并以绑定的IP地址作为源IP地址,以接收的源IP地址作为它的目的IP地址发回应答。
3) 当UDP服务器调用connect,内核记录下对方的IP地址和端口号,它们包含在传递给connect的套接口地址结构中,并为UDP服务器绑定了一个临时端口号和IP地址。(UDP服务器只能接收目的IP地址为它绑定的IP地址和端口号并且源IP地址为它指定对方的IP地址和端口号的数据报)。

时间: 2025-01-04 03:52:24

网络端口号的绑定,以及分类的相关文章

网络端口号大全

网络端口号大全 1 tcpmux TCP 端口服务多路复用5 rje 远程作业入口7 echo Echo 服务9 discard 用于连接测试的空服务11 systat 用于列举连接了的端口的系统状态13 daytime 给请求主机发送日期和时间17 qotd 给连接了的主机发送每日格言18 msp 消息发送协议19 chargen 字符生成服务:发送无止境的字符流20 ftp-data FTP 数据端口21 ftp 文件传输协议(FTP)端口:有时被文件服务协议(FSP)使用22 ssh 安全

网络端口号布局与分类

1. 什么是网络端口 在网络技术中,端口(Port)大致有两种意思: 一. 物理意义上的端口,比如,ADSL Modem.集线器.交换机.路由器用于连接其他网络设备的接口,如RJ-45端口.SC端口等等: 二. 逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等. 2.端口分类 (1)按端口号可分为3大类: <1> 公认端口(Well Known Ports):从0到1023,它们紧密绑定(bindin

网络端口号分类

一.概述: 在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型.物理端口指的是物理存在的端口,如集线器.交换机.路由器上用 于连接其他网络设备的接口,如RJ-45端口等.逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号是采用16位比特位来标识的,所以端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等.由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号. 二.端口号分类: (1).熟

网络端口号的划分

我们都知道,任何时候多个进程可能同时使用TCP,UDP,SCTP这3种传输层协议中的任何一种,这3种协议都使用16位整数的端口号来区分这些进程. 当一个客户想要跟一个服务器联系时,它必须标识想要与之通信的这个服务器.TCP.UDP,SCTP定义了一组众所周知的端口号用于标识众所周知的服务.客户通常使用短期存活的临时端口,这些端口号通常由传输层协议自动赋予客户我们通常不关心其临时端口的具体值,而只需确信该端口号在所在主机中是唯一的就行. 任何TCP/IP实现所提供的服务都是1-1023之间的端口号

TCP相关(控制位、3次握手、4次挥手、端口号分类TIME_WAIT状态...)

TCP报文格式 一.6个控制位中 URG和PSH的区别: (1)紧急URG(URGent), 当URG=1时, 表明紧急指针字段有效.它告诉操作系统此报文中有紧急数据,应尽快传输(相当于高优先级数据),而不要按照原来的排队顺序来传送.例如,已经发送了很长的一个程序要在远地的主机上运行,但后来发现了一些问题,需要取消该程序的运行.因为用户从键盘发送中断指令(Control+c),如果不使用紧急数据,那么两个字符将存储在接收TCP的缓存末尾.只有在所有的数据被处理完毕后,这两个字符才会被交付到接收方

TCP四次挥手时TIME_WAIT状态以及端口号的分类

TIME_WAIT(时间等待计时器)状态是什么? 简单来说,TIME_WAIT状态是四次挥手中服务器向客户端发送FIN终止连接后进入的状态. 四次挥手的过程: 可以看到TIME_WAIT状态存在于客户端收到服务器FIN并返回ACK时的状态. 当处于TIME_WAIT状态时,我们无法创建新的连接,因为端口被占用. 2. 为什么会有TIME_WAIT状态? 原因如下两点: <1> 可靠的终止TCP连接 若处于TIME_WAIT的客户端发送给服务器确认报文段丢失的话,服务器将在此重新发送FIN报文

tcp四次挥手中的time_wait状态、端口号的分类以及端口分类

TCP四次挥手 Tcp四次挥手,time_wait状态是在服务器给客户端发送Fin中断请求的时候,客户端处于的状态, 根据TCP协议定义的3次握手断开连接规定,发起socket主动关闭的一方 socket将进入TIME_WAIT状态.TIME_WAIT状态将持续2个MSL(Max Segment Lifetime),在Windows下默认为4分钟,即240秒.TIME_WAIT状态下的socket不能被回收使用. 具体现象是对于一个处理大量短连接的服务器,如果是由服务器主动关闭客户端的连接,将导

TCP端口号范围及分类

https://blog.csdn.net/my_heart_/article/details/52601924 端口号的范围是从1-65535 端口的概念:  在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem.集线器.交换机.路由器用于连接其他网络设备的接口,如RJ-45端口.SC端口等等.二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等. 我们这里将

关于绑定IP地址与端口号的见解

"端口",通俗地讲就是一个通信通道的"门",各种计算机服务和通信都是通过特定的端口与外部计算机进行通信,像常见的WWW.FTP.Telnet服务一样. 随着计算机网络技术的发展,原来物理上的接口(如键盘.鼠标.网卡.显示卡等输入/输出接口)已不能满足网络通信的要求,TCP/IP协议作为网络通信的标准协议就解决了这个通信难题.TCP/IP协议集成到操作系统的内核中,这就相当于在操作系统中引入了一种新的输入/输出接口技术.因为在TCP/IP协议中引入了一种称之为&quo