转自http://blog.csdn.net/sharp_up/article/details/72772473
一、端口号概念
在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型。物理端口指的是物理存在的端口,如ADSL Modem、集线器、交换机、路由器上用 于连接其他网络设备的接口,
如RJ-45端口、SC端口等等。逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。
由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号。
二、端口号涵义
端口包括物理端口和逻辑端口。物理端口是用于连接物理设备之间的接口,逻辑端口是逻辑上用于区分服务的端口。TCP/IP协议中的端口就是逻辑端口,通过不同的逻辑端口来区分不同的服务。
一个IP地址的端口通过16bit进行编号,最多可以有65536个端口。端口是通过端口号来标记的,端口号只有整数,范围是从0 到65535。
三、端口号使用
1. 列出所有端口 (包括监听和未监听的)
列出所有端口 netstat -a
# netstat -a | more Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:30037 *:* LISTEN udp 0 0 *:bootpc *:* Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 6135 /tmp/.X11-unix/X0 unix 2 [ ACC ] STREAM LISTENING 5140 /var/run/acpid.socket
列出所有 tcp 端口 netstat -at
# netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:30037 *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp 0 0 *:smtp *:* LISTEN tcp6 0 0 localhost:ipp [::]:* LISTEN
列出所有 udp 端口 netstat -au
# netstat -au Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 *:bootpc *:* udp 0 0 *:49119 *:* udp 0 0 *:mdns *:*
2. 列出所有处于监听状态的 Sockets
只显示监听端口 netstat -l
# netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:ipp *:* LISTEN tcp6 0 0 localhost:ipp [::]:* LISTEN udp 0 0 *:49119 *:*
只列出所有监听 tcp 端口 netstat -lt
# netstat -lt Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:30037 *:* LISTEN tcp 0 0 *:smtp *:* LISTEN tcp6 0 0 localhost:ipp [::]:* LISTEN
只列出所有监听 udp 端口 netstat -lu
# netstat -lu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 *:49119 *:* udp 0 0 *:mdns *:*
只列出所有监听 UNIX 端口 netstat -lx
# netstat -lx Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 6294 private/maildrop unix 2 [ ACC ] STREAM LISTENING 6203 public/cleanup unix 2 [ ACC ] STREAM LISTENING 6302 private/ifmail unix 2 [ ACC ] STREAM LISTENING 6306 private/bsmtp
3. 显示每个协议的统计信息
显示所有端口的统计信息 netstat -s
# netstat -s Ip: 11150 total packets received 1 with invalid addresses 0 forwarded 0 incoming packets discarded 11149 incoming packets delivered 11635 requests sent out Icmp: 0 ICMP messages received 0 input ICMP message failed. Tcp: 582 active connections openings 2 failed connection attempts 25 connection resets received Udp: 1183 packets received 4 packets to unknown port received. .....
显示 TCP 或 UDP 端口的统计信息 netstat -st 或 -su
# netstat -st # netstat -su
4. 在 netstat 输出中显示 PID 和进程名称 netstat -p
netstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。
# netstat -pt Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 1 0 ramesh-laptop.loc:47212 192.168.185.75:www CLOSE_WAIT 2109/firefox tcp 0 0 ramesh-laptop.loc:52750 lax:www ESTABLISHED 2109/firefox
5. 在 netstat 输出中不显示主机,端口和用户名 (host, port or user)
当你不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。
同样可以加速输出,因为不用进行比对查询。
# netstat -an
如果只是不想让这三个名称中的一个被显示,使用以下命令
# netsat -a --numeric-ports # netsat -a --numeric-hosts # netsat -a --numeric-users
6. 持续输出 netstat 信息
netstat 将每隔一秒输出网络信息。
# netstat -c Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 ramesh-laptop.loc:36130 101-101-181-225.ama:www ESTABLISHED tcp 1 1 ramesh-laptop.loc:52564 101.11.169.230:www CLOSING tcp 0 0 ramesh-laptop.loc:43758 server-101-101-43-2:www ESTABLISHED tcp 1 1 ramesh-laptop.loc:42367 101.101.34.101:www CLOSING ^C
逻辑意义上的端口有多种分类标准,下面将介绍常见的按端口号分布的分类:
(1)知名端口(Well-Known Ports)
知名端口即众所周知的端口号,范围从0到1023,这些端口号一般固定分配给一些服务。比如21端口分配给FTP(文件传输协议)服务,25端口分配给SMTP(简单邮件传输协议)服务,80端口分配给HTTP服务,135端口分配给RPC(远程过程调用)服务等等。
网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在 地址栏上指定端口号,方法是在地址后面加上冒号“:”(半角),再加上端口 号。比如使用“8080”作为WWW服务的端口,则需要在地址栏里输入“www.cce.com.cn:8080”。
但是有些系统协议使用固定的端口号,它是不能被改变的,比如139 端口专门用于NetBIOS与TCP/IP之间的通信,不能手动改变。
(2)动态端口(Dynamic Ports)
动态端口的范围从1024到65535,这些端口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配一个供该程序使用。比如1024端口就是分配给第一个向系统发出申请的程序。在关闭程序进程后,就会释放所占用的端口号。
不过,动态端口也常常被病毒木马程序所利用,如冰河默认连接端口是7626、WAY 2.4是8011、Netspy 3.0是7306、YAI病毒是1024等 。
(3)保留端口号
Unix系统有保留端口号的概念。只有具有超级用户特权的进程才允许给它自己分配一个保留端口号。
这些端口号介于1~1023之间,一些应用程序(如有名的Rlogin,26.2节)将它作为客户与服务器之间身份认证的一部分。
知名端口号
端口号 |
端口服务名称 |
端口说明 |
||||
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 |
安全Shell(SSH)服务 |
||||
23 |
telnet |
Telnet服务 |
||||
25 |
smtp |
简单邮件传输协议(SMTP) |
||||
37 |
time |
时间协议 |
||||
39 |
rlp |
资源定位协议 |
||||
42 |
nameserver |
互联网名称服务 |
||||
43 |
nicname |
WHOIS目录服务 |
||||
49 |
tacacs |
用于基于TCP/IP验证和访问的终端 访问控制器访问控制系统 |
||||
50 |
re-mail-ck |
远程邮件检查协议 |
||||
53 |
domain |
域名服务(如BIND) |
||||
63 |
whois++ |
WHOIS++,被扩展了的WHOIS服务 |
||||
67 |
bootps |
引导协议(BOOTP)服务;还被动态 主机配置协议(DHCP)服务使用 |
||||
68 |
bootpc |
Bootstrap(BOOTP)客户;还被动态 主机配置协议(DHCP)客户使用 |
||||
69 |
tftp |
小文件传输协议(TFTP) |
||||
70 |
gopher |
Gopher互联网文档搜寻和检索 |
||||
71 |
netrjs-1 |
远程作业服务 |
||||
72 |
netrjs-2 |
远程作业服务 |
||||
73 |
netrjs-3 |
远程作业服务 |
||||
73 |
netrjs-4 |
远程作业服务 |
||||
79 |
finger |
用于用户联系信息的Finger服务 |
||||
80 |
http |
用于万维网(WWW)服务的超文本传输协议(HTTP) |
||||
88 |
kerberos |
Kerberos网络验证系统 |
||||
95 |
Supdup |
Telnet协议扩展 |
||||
101 |
hostname |
SRI-NIC机器上的主机名服务 |
||||
端口号 |
端口服务名称 |
端口说明 |
||||
102 |
iso-tsap |
ISO开发环境(ISODE)网络应用 |
||||
105 |
csnet-ns |
邮箱名称服务器;也被CSO名称服务器使用 |
||||
107 |
rtelnet |
远程Telnet |
||||
109 |
pop2 |
邮局协议版本2 |
||||
110 |
pop3 |
邮局协议版本3 |
||||
111 |
sunrpc |
用于远程命令执行的远程过程调用(RPC)协议, 被网络文件系统(NFS)使用 |
||||
113 |
auth |
验证和身份识别协议 |
||||
115 |
sftp |
安全文件传输协议(SFTP)服务 |
||||
117 |
uucp-path |
UNIX到UNIX复制协议(UUCP)路径服务 |
||||
119 |
nntp |
用于USENET讨论系统的网络新闻传输协议(NNTP) |
||||
123 |
ntp |
网络时间协议(NTP) |
||||
137 |
netbios-ns |
在红帽企业Linux中被Samba使用的 NET BIOS名称服务 |
||||
138 |
netbios-dgm |
在红帽企业Linux中被Samba使用的 NET BIOS数据报服务 |
||||
139 |
netbios-ssn |
在红帽企业Linux中被Samba使用的 NET BIOS会话服务 |
||||
143 |
imap |
互联网消息存取协议(IMAP) |
||||
161 |
snmp |
简单网络管理协议(SNMP) |
||||
162 |
snmptrap |
SNMP的陷阱 |
||||
163 |
cmip-man |
通用管理信息协议(CMIP) |
||||
164 |
cmip-agent |
通用管理信息协议(CMIP) |
||||
174 |
mailq |
MAILQ |
||||
177 |
xdmcp |
X显示管理器控制协议 |
||||
178 |
nextstep |
NeXTStep窗口服务器 |
||||
179 |
bgp |
边界网络协议 |
||||
191 |
prospero |
Cliffod Neuman的Prospero服务 |
||||
194 |
irc |
互联网中继聊天(IRC) |
||||
199 |
smux |
SNMP UNIX多路复用 |
||||
201 |
at-rtmp |
AppleTalk选路 |
||||
202 |
at-nbp |
AppleTalk名称绑定 |
||||
204 |
at-echo |
AppleTalk echo服务 |
||||
206 |
at-zis |
AppleTalk区块信息 |
||||
209 |
qmtp |
快速邮件传输协议(QMTP) |
||||
210 |
z39.50 |
NISO Z39.50数据库 |
||||
213 |
ipx |
互联网络分组交换协议(IPX),被 Novell Netware环境常用的数据报协议 |
||||
220 |
imap3 |
互联网消息存取协议版本3 |
||||
245 |
link |
LINK |
||||
347 |
fatserv |
Fatmen服务器 |
||||
363 |
rsvp_tunnel |
RSVP隧道 |
||||
369 |
rpc2portmap |
Coda文件系统端口映射器 |
||||
370 |
codaauth2 |
Coda文件系统验证服务 |
||||
372 |
ulistproc |
UNIX Listserv |
||||
389 |
ldap |
轻型目录存取协议(LDAP) |
||||
端口号 |
端口服务名称 |
端口说明 |
||||
427 |
svrloc |
服务位置协议(SLP) |
||||
434 |
mobileip-agent |
可移互联网协议(IP)代理 |
||||
435 |
mobilip-mn |
可移互联网协议(IP)管理器 |
||||
443 |
https |
安全超文本传输协议(HTTP) |
||||
444 |
snpp |
小型网络分页协议 |
||||
445 |
microsoft-ds |
通过TCP/IP的服务器消息块(SMB) |
||||
464 |
kpasswd |
Kerberos口令和钥匙改换服务 |
||||
468 |
photuris |
Photuris会话钥匙管理协议 |
||||
487 |
saft |
简单不对称文件传输(SAFT)协议 |
||||
488 |
gss-http |
用于HTTP的通用安全服务(GSS) |
||||
496 |
pim-rp-disc |
用于协议独立的多址传播(PIM) 服务的会合点发现(RP-DISC) |
||||
500 |
isakmp |
互联网安全关联和钥匙管理协议(ISAKMP) |
||||
512/tcp |
exec |
用于对远程执行的进程进行验证 |
||||
512/udp |
biff [comsat] |
异步邮件客户(biff)和服务(comsat) |
||||
513/tcp |
login |
远程登录(rlogin) |
||||
513/udp |
who [whod] |
登录的用户列表 |
||||
514/tcp |
shell [cmd] |
不必登录的远程Shell(rshell)和远程复制(rcp) |
||||
514/udp |
syslog |
UNIX系统日志服务 |
||||
515 |
printer [spooler] |
打印机(lpr)假脱机 |
||||
517/udp |
talk |
远程对话服务和客户 |
||||
518/udp |
ntalk |
网络交谈(ntalk),远程对话服务和客户 |
||||
519 |
utime [unixtime] |
UNIX时间协议(utime) |
||||
520/tcp |
efs |
扩展文件名服务器(EFS) |
||||
520/udp |
router [route, routed] |
选路信息协议(RIP) |
||||
521 |
ripng |
用于互联网协议版本6(IPv6)的选路信息协议 |
||||
525 |
timed [timeserver] |
时间守护进程(timed) |
||||
526/tcp |
tempo [newdate] |
Tempo |
||||
530/tcp |
courier [rpc] |
Courier远程过程调用(RPC)协议 |
||||
531/tcp |
conference [chat] |
互联网中继聊天 |
||||
532 |
netnews |
Netnews |
||||
533/udp |
netwall |
用于紧急广播的Netwall |
||||
535 |
iiop |
互联网内部对象请求代理协议(IIOP) |
||||
538 |
gdomap |
GNUstep分布式对象映射器(GDOMAP) |
||||
540/tcp |
uucp [uucpd] |
UNIX到UNIX复制服务 |
||||
543/tcp |
klogin |
Kerberos版本5(v5)远程登录 |
||||
544/tcp |
kshell |
Kerberos版本5(v5)远程shell |
||||
546 |
dhcpv6-client |
动态主机配置协议(DHCP)版本6客户 |
||||
547 |
dhcpv6-server |
动态主机配置协议(DHCP)版本6服务 |
||||
548 |
afpovertcp |
通过传输控制协议(TCP)的Appletalk 文件编制协议(AFP) |
||||
556 |
remotefs [rfs_server, rfs] |
Brunhoff的远程文件系统(RFS) |
||||
554 |
rtsp |
实时流播协议(RTSP) |
||||
端口号 |
端口服务名称 |
端口说明 |
||||
563 |
nntps |
通过安全套接字层的网络新闻传输协议(NNTPS) |
||||
565 |
whoami |
whoami |
||||
587 |
submission |
邮件消息提交代理(MSA) |
||||
610 |
npmp-local |
网络外设管理协议(NPMP) 本地/分布式排队系统(DQS) |
||||
611 |
npmp-gui |
网络外设管理协议(NPMP) GUI /分布式排队系统(DQS) |
||||
612 |
hmmp-ind |
HMMP指示/ DQS |
||||
631 |
ipp |
互联网打印协议(IPP) |
||||
636 |
ldaps |
通过安全套接字层的轻型目录访问协议(LDAPS) |
||||
674 |
acap |
应用程序配置存取协议(ACAP) |
||||
694 |
ha-cluster |
用于带有高可用性的群集的心跳服务 |
||||
749 |
kerberos-adm |
Kerberos版本5(v5)的“kadmin”数据库管理 |
||||
750 |
kerberos-iv |
Kerberos版本4(v4)服务 |
||||
765 |
webster |
网络词典 |
||||
767 |
phonebook |
网络电话簿 |
||||
873 |
rsync |
rsync文件传输服务 |
||||
992 |
telnets |
通过安全套接字层的Telnet(TelnetS) |
||||
993 |
imaps |
通过安全套接字层的互联网消息存取协议(IMAPS) |
||||
994 |
ircs |
通过安全套接字层的互联网中继聊天(IRCS) |
||||
995 |
pop3s |
通过安全套接字层的邮局协议版本3(POPS3) |
||||
1080 |
socks |
SOCKS网络应用程序代理服务 |
||||
1236 |
bvcontrol [rmtcfg] |
Garcilis Packeten远程配置服务器[a] |
||||
1300 |
h323hostcallsc |
H.323电话会议主机电话安全 |
||||
1433 |
ms-sql-s |
Microsoft SQL服务器 |
||||
1434 |
ms-sql-m |
Microsoft SQL监视器 |
||||
1494 |
ica |
Citrix ICA客户 |
||||
1512 |
wins |
Microsoft Windows互联网名称服务器 |
||||
1524 |
ingreslock |
Ingres数据库管理系统(DBMS)锁定服务 |
||||
1525 |
prospero-np |
无特权的Prospero |
||||
1645 |
datametrics [old-radius] |
Datametrics /从前的radius项目 |
||||
1646 |
sa-msg-port [oldradacct] |
sa-msg-port /从前的radacct项目 |
||||
1649 |
kermit |
Kermit文件传输和管理服务 |
||||
1701 |
l2tp [l2f] |
第2层隧道服务(LT2P)/第2层转发(L2F) |
||||
1718 |
h323gatedisc |
H.323电信守门装置发现机制 |
||||
1719 |
h323gatestat |
H.323电信守门装置状态 |
||||
1720 |
h323hostcall |
H.323电信主持电话设置 |
||||
1758 |
tftp-mcast |
小文件FTP组播 |
||||
1759 |
mtftp |
组播小文件FTP(MTFTP) |
||||
1789 |
hello |
Hello路由器通信端口 |
||||
1812 |
radius |
Radius拨号验证和记账服务 |
||||
1813 |
radius-acct |
Radius记账 |
||||
1911 |
mtp |
Starlight网络多媒体传输协议(MTP) |
||||
端口号 |
端口服务名称 |
端口说明 |
||||
1985 |
hsrp |
Cisco热备用路由器协议 |
||||
1986 |
licensedaemon |
Cisco许可管理守护进程 |
||||
1997 |
gdp-port |
Cisco网关发现协议(GDP) |
||||
2049 |
nfs [nfsd] |
网络文件系统(NFS) |
||||
2102 |
zephyr-srv |
Zephyr通知传输和发送服务器 |
||||
2103 |
zephyr-clt |
Zephyr serv-hm连接 |
||||
2104 |
zephyr-hm |
Zephyr主机管理器 |
||||
2401 |
cvspserver |
并行版本系统(CVS)客户/服务器操作 |
||||
2430/tcp |
venus |
用于Coda文件系统(codacon端口)的 Venus缓存管理器 |
||||
2430/udp |
venus |
用于Coda文件系统(callback/wbc interface 界面)的Venus缓存管理器 |
||||
2431/tcp |
venus-se |
Venus传输控制协议(TCP)的副作用 |
||||
2431/udp |
venus-se |
Venus用户数据报协议(UDP)的副作用 |
||||
2432/udp |
codasrv |
Coda文件系统服务器端口 |
||||
2433/tcp |
codasrv-se |
Coda文件系统TCP副作用 |
||||
2433/udp |
codasrv-se |
Coda文件系统UDP SFTP副作用 |
||||
2600 |
hpstgmgr [zebrasrv] |
HPSTGMGR;Zebra选路[b] |
||||
2601 |
discp-client [zebra] |
discp客户;Zebra集成的Shell |
||||
2602 |
discp-server [ripd] |
discp服务器;选路信息协议守护进程(ripd) |
||||
2603 |
servicemeter [ripngd] |
服务计量;用于IPv6的RIP守护进程 |
||||
2604 |
nsc-ccs [ospfd] |
NSC CCS;开放式短路径优先守护进程(ospfd) |
||||
2605 |
nsc-posa |
NSC POSA;边界网络协议守护进程(bgpd) |
||||
2606 |
netmon [ospf6d] |
Dell Netmon;用于IPv6的OSPF 守护进程(ospf6d) |
||||
2809 |
corbaloc |
公共对象请求代理体系(CORBA)命名服务定位器 |
||||
3128/tcp |
squid |
Squid万维网代理缓存 |
||||
3130 |
icpv2 |
互联网缓存协议版本2(v2);被 Squid代理缓存服务器使用 |
||||
3306 |
MySQL数据库服务 |
|||||
3346 |
trnsprntproxy |
Trnsprnt代理 |
||||
4011 |
pxe |
执行前环境(PXE)服务 |
||||
4321 |
rwhois |
远程Whois(rwhois)服务 |
||||
4444 |
krb524 |
Kerberos版本5(v5)到版本4(v4)门票转换器 |
||||
5002 |
rfe |
无射频以太网(RFE)音频广播系统 |
||||
5308 |
cfengine |
配置引擎(Cfengine) |
||||
5999 |
cvsup [CVSup] |
CVSup文件传输和更新工具 |
||||
6000 |
x11 [X] |
X窗口系统服务 |
||||
7000 |
afs3-fileserver |
Andrew文件系统(AFS)文件服务器 |
||||
7001 |
afs3-callback |
用于给缓存管理器回电的AFS端口 |
||||
7002 |
afs3-prserver |
AFS用户和组群数据库 |
||||
7003 |
afs3-vlserver |
AFS文件卷位置数据库 |
||||
7004 |
afs3-kaserver |
AFS Kerberos验证服务 |
||||
7005 |
afs3-volser |
AFS文件卷管理服务器 |
||||
7006 |
afs3-errors |
AFS错误解释服务 |
||||
端口号 |
端口服务名称 |
端口说明 |
||||
7007 |
afs3-bos |
AFS基本监查进程 |
||||
7008 |
afs3-update |
AFS服务器到服务器更新器 |
||||
7009 |
afs3-rmtsys |
AFS远程缓存管理器服务 |
||||
9876 |
sd |
会话指引器 |
||||
10080 |
amanda |
高级Maryland自动网络磁盘归档器(Amanda)备份服务 |
||||
11371 |
pgpkeyserver |
良好隐私(PGP)/ GNU隐私卫士(GPG)公钥服务器 |
||||
11720 |
h323callsigalt |
H.323调用信号交替 |
||||
13720 |
bprd |
Veritas NetBackup请求守护进程(bprd) |
||||
13721 |
bpdbm |
Veritas NetBackup数据库管理器(bpdbm) |
||||
13722 |
bpjava-msvc |
Veritas NetBackup Java / Microsoft Visual C++ (MSVC)协议 |
||||
13724 |
vnetd |
Veritas网络工具 |
||||
13782 |
bpcd |
Vertias NetBackup |
||||
13783 |
vopied |
Veritas VOPIED协议 |
||||
22273 |
wnn6 [wnn4] |
假名/汉字转换系统[c] |
||||
26000 |
quake |
Quake(以及相关的)多人游戏服务器 |
||||
33434 |
traceroute |
Traceroute网络跟踪工具 |