计算机传输层端口分类
本文最早发布于我的51cto博客,目前已迁移至博客园。
参考:port的英文*
简介
mac地址定义了数据包的下一跳地址。
ip地址定义了数据包最终应该传输到哪台计算机上。
而端口(port)则定义了数据包中的数据应该由计算机上的哪个进程来接收。
端口是一种逻辑上的概念,用来识别一个计算机上的一个进程或者一类网络服务。
端口一般和网络协议与ip地址相关联。
端口号由16位无符号二进制组成,2^16=65536,可表示的端口号数量为65536,端口号的范围为0~65535。
分类
特定的端口有特定的用途,端口的分类是由iana定义的。
周知端口
周知端口(well-known port),端口范围是0~1023,用于互联网常用的服务,在类unix操作系统中,可能需要具备root的权限才可以将管理使用周知端口的服务。常见的周知端口如下:
端口 | 描述 |
---|---|
20 | ftp数据连接主动模式 |
21 | ftp命令连接 |
22 | ssh |
23 | telnet |
25 | smtp |
80 | http |
443 | https |
... | ... |
注册端口
注册端口(register port),端口范围是1024~49151,一般用于那些不需要root权限的服务。常见的注册端口如下:
端口 | 描述 |
---|---|
10050 | zabbix-agent |
10051 | zabbix-server |
3306 | mysql or mariadb |
6379 | redis |
... | ... |
动态端口
动态端口(dynamic port),也叫作私有端口(private port)或者短命端口(ephemeral port),端口范围是49152~65535,这些端口是无法在iana上面注册的,一般用于c/s架构中client启用的高位端口作临时使用的。
如图所示,本机开了四个x shell会话(session)来连接虚拟机,每个会话占用一个连接(connection),每个连接在我的本机启用了一个动态端口,分别是:49618、49628、49629和49635。
# netstat -ntup active internet connections (w/o servers) proto recv-q send-q local address foreign address state pid/program name tcp 0 64 192.168.17.100:22 192.168.17.1:49618 established 2761/sshd tcp 0 0 192.168.17.100:22 192.168.17.1:49628 established 2790/sshd tcp 0 0 192.168.17.100:22 192.168.17.1:49629 established 2811/sshd tcp 0 0 192.168.17.100:22 192.168.17.1:49635 established 2832/sshd
上一篇: 跨站脚本执行漏洞详解与防护
下一篇: 男子“*”访问*色情网站,被行政处罚