一、端口号的概念
在网络技术中,端口一般有两个意思,一个是物理端口,一个是逻辑意义上的端口。
物理端一般有ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。
逻辑上的端口有TCP/IP协议中的端口,端口号的范围从0到65535,每个端口号又有不同的含义,有HTTP中的80端口等。
(1)端口号的理解
我们知道一个IP对应一台物理主机,对应一张网卡,所有由外界发送的数据包网卡都会接收,但此时存在于一个问题,网卡给程序提供了接口,只要程序监听我,消息来了我就转发给你,这样程序就能收到数据了,但是问题来了,如果此时有两个程序A和程序B都需要监听网卡收到的数据,此时网卡说我把数据给你们俩,你们自己看吧,于是程序A和程序B就相互竞争收到数据,最后都很累。
所以此时网卡说那我给你们个标记吧,你们之间可以选择用一个号码来作为表示,网卡和A就用1来表示,如果外界发送数据给1号表示的数据我就转发给A,你监听的时候就要监听1。其他的程序每一个都要弄一个自己等端口号,这样大家都不会重复,也不会竞争了。
所以设计到最后,一个端口号只能被一个应用程序监听,如果多个程序监听一个标识端口号,那么此时就会产生问题,传送的数据A和B都收到了,这样数据的安全性无法保证。
所以这个标识号就是端口。
其实网卡都是被系统层封装了,端口和进程之间的关系也是系统封装好的。我们只需要用socket就行,给定一个端口号就行了。其他的事都交给操作系统去做。
二、端口号的分类
按照端口号可分为三大类。
第一类:公认端口:(0~1023)它们紧密绑定一些服务,一般来用这些端口的通讯来表明某种服务的协议。(比如HTTP通讯的80端口。21端口分配给FTP服务,25端口分配给SMTP(简单邮件传输协议)服务,135端口分配给RPC(远程过程调用)服务等等)
第二类:注册端口(1024~49151):它们松散的绑定于一些服务。有许多服务绑定于这些端口,这些端口也同样用于许多其他目的。(系统处理动态端口从1024开始)
第三类:动态/或私有端口(49152~65535)一般不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。
三、常用的端口
0 通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用一种通常的闭合端口连接它时将产生不同的结果。一种典型的扫描:使用IP地址为0.0.0.0,设置ACK位并在以太网层广播。
端口号 | 端口服务名称 | 解释 |
---|---|---|
1 | tcpmux | TCP Port Service Multiplexer 传输控制协议端口服务多路开关选择器 |
2 | compressnet | Management Utility compressnet 管理实用程序 |
3 | compressnet | Compression Process 压缩进程 |
5 | rje | Remote Job Entry 远程作业登录 |
7 | echo | Echo 回显 |
9 | discard | Discard 丢弃 |
1 | systat | Active Users 在线用户 |
1 | daytime | Daytime 时间 |
1 | qotd | Quote of the Day 每日引用 |
1 | msp | Message Send Protocol 消息发送协议 |
1 | chargen | Character Generator 字符发生器 |
2 | ftp – data | File Transfer[Default Data] 文件传输协议(默认数据口) |
2 | ftp | File Transfer[Control] 文件传输协议(控制) |
2 | ssh | SSH Remote Login Protocol SSH远程登录协议 |
2 | telnet | Telnet 终端仿真协议 |
24 | any | private mail system 预留给个人用邮件系统 |
25 | smtp | Simple Mail Transfer 简单邮件发送协议 |
27 | nsw – fe | NSW User System FE NSW 用户系统现场工程师 |
29 | msg – icp | MSG ICP MSG ICP |
31 | msg – auth | MSG Authentication MSG验证 |
33 | dsp | Display Support Protocol 显示支持协议 |
35 | any | private printer server 预留给个人打印机服务 |
37 | time | Time 时间 |
38 | rap | Route Access Protocol 路由访问协议 |
39 | rlp | Resource Location Protocol 资源定位协议 |
41 | graphics | Graphics 图形 |
42 | nameserver | WINS Host Name Server WINS 主机名服务 |
43 | nicname | Who Is “绰号” who is服务 |
44 | mpm – flags | MPM FLAGS Protocol MPM(消息处理模块)标志协议 |
45 | mpm | Message Processing Module[recv] 消息处理模块 |
46 | mpm – snd | MPM[default send] 消息处理模块(默认发送口) |
47 | ni – ftp | NI FTP NI FTP |
48 | auditd | Digital Audit Daemon 数码音频后台服务 |
49 | tacacs | Login Host Protocol(TACACS) TACACS登录主机协议 |
50 | re – mail – ck | Remote Mail Checking Protocol 远程邮件检查协议[未结束] |
51 | la – maint | IMP Logical Address Maintenance IMP(接口信息处理机)逻辑地址维护 |
52 | xns – time | XNS Time Protocol 施乐网络服务系统时间协议 |
53 | domain | Domain Name Server 域名服务器 |
54 | xns – ch | XNS Clearinghouse 施乐网络服务系统票据交换 |
55 | isi – gl | ISI Graphics Language ISI图形语言 |
56 | xns – auth | XNS Authentication 施乐网络服务系统验证 |
57 | any | private terminal access 预留个人用终端访问 |
58 | xns – mail | XNS Mail 施乐网络服务系统邮件 |
59 | any | private file service 预留个人文件服务 |
60 | Unassigned | 未定义 |
61 | ni – mail | NI MAIL NI邮件 |
62 | acas | ACA Services 异步通讯适配器服务 |
63 | whois + whois + WHOIS + | |
64 | covia | Communications Integrator(CI) 通讯接口 |
65 | tacacs – ds | TACACS – Database Service TACACS数据库服务 |
66 | sql*net | Oracle SQL*NET Oracle SQL*NET |
67 | bootps | Bootstrap Protocol Server 引导程序协议服务端 |
68 | bootpc | Bootstrap Protocol Client 引导程序协议客户端 |
69 | tftp | Trivial File Transfer 小型文件传输协议 |
70 | gopher | Gopher 信息检索协议 |
71 | netrjs – 1 | Remote Job Service 远程作业服务 |
72 | netrjs – 2 | Remote Job Service 远程作业服务 |
73 | netrjs – 3 | Remote Job Service 远程作业服务 |
74 | netrjs – 4 | Remote Job Service 远程作业服务 |
75 | any | private dial out service 预留给个人拨出服务 |
76 | deos | Distributed External Object Store 分布式外部对象存储 |
77 | any | private RJE service 预留给个人远程作业输入服务 |
78 | vettcp | vettcp 修正TCP ? |
79 | finger | Finger 查询远程主机在线用户等信息 |
80 | http | World Wide Web HTTP 全球信息网超文本传输协议 81 hosts2 – ns HOSTS2 Name Server HOST2名称服务 |
82 | xfer | XFER Utility 传输实用程序 |
83 | mit – ml – dev | MIT ML Device 模块化智能终端ML设备 |
84 | ctf | Common Trace Facility 公用追踪设备 |
85 | mit – ml – dev | MIT ML Device 模块化智能终端ML设备 |
86 | mfcobol | Micro Focus Cobol Micro Focus Cobol编程语言 |
87 | any | private terminal link 预留给个人终端连接 |
88 | kerberos | Kerberos Kerberros安全认证系统 |
89 | su – mit – tg | SU / MIT Telnet Gateway SU / MIT终端仿真网关 |
90 | dnsix | DNSIX Securit Attribute Token Map DNSIX 安全属性标记图 |
91 | mit – dov | MIT Dover Spooler MIT Dover假脱机 |
92 | npp | Network Printing Protocol 网络打印协议 |
93 | dcp | Device Control Protocol 设备控制协议 |
94 | objcall | Tivoli Object Dispatcher Tivoli对象调度 |
95 | supdup | SUPDUP |
96 | dixie | DIXIE Protocol Specification DIXIE协议规范 |
97 | swift – rvf | (Swift Remote Virtural File Protocol)快速远程虚拟文件协议 |
98 | tacnews | TAC News |