分页: 1 / 1

BSD和Linux查看端口和程序

发表于 : 2010-05-29 18:33
crzyfish
BSD系列:

查看系统使用端口:

代码: 全选

# netstat -anf inet
查询某端口为何程序占用:

代码: 全选

# sockstat -p68
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
root dhclient 236 5 udp *.bootpc *.*
#

Linux系列:

大家最能接受的是:

代码: 全选

nmap 127.0.0.1
呵呵,这个不用说,nmap不是一般好用,而且很通用,BSD下也一样,
虽然直接显示端口和所用程序,不过nmap参数复杂,基本是用来查别人机器时候多一点,不加参数只能显示可能开设了的程序使用了默认的端口,比如你把ftp端口改成2021的时候,不加参数就无法知道了呵呵。

还有就是老方法:

代码: 全选

netstat -tln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN

查询某端口正在使用的程序:

代码: 全选

lsof -i tcp:21 -n
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
pure-ftpd 13623 root 4u IPv4 17972 TCP *:ftp (LISTEN)

查看某個port被那些程式打開的語法如下:
lsof -i TCP:port -n
lsof -i UDP:port -n

lsof -i :port -n

# lsof -i tcp:1521 -n

更多使用方法请参照手册~