问:我该如何发现哪种服务正在某个特定端口上监听呢?我如何发现哪一个程序正在一个特定端口上监听呢?

  答:在*NIX系统中,你可以使用下面的任何一个命令来得到在一个特定TCP端口上监听的列表。

  Lsof:其功能是列示打开的文件,包括监听端口。

  netstat :此命令象征性地展示各种与网络有关的数据和信息的内容。

  Lsof命令示例

  你可以输入下面的命令来查看IPv4端口:

  # lsof -Pnl +M -i4

  你可以输入下面的命令来查看IPv6协议下的端口列示:

  # lsof -Pnl +M -i6

  此例输出:

这里我们不妨解释一 下。第一栏是command,它给出了程序名称的有关信息。请注意标题的细节。例如,第二行的gweather* 命令从美国 NWS服务器(140.90.128.70)获取天气的报告信息,包括交互天气信息网络和其它的天气服务。在这里,我们解释一下命令各个参数。

  1. -P :这个选项约束着网络文件的端口号到端口名称的转换。约束转换可以使lsof运行得更快一些。在端口名称的查找不能奏效时,这是很有用的。

  2. -n : 这个选项约束着网络文件的端口号到主机名称的转换。约束转换可以使lsof的运行更快一些。在主机名称的查找不能奏效时,它非常有用。

  3. -l :这个选项约束着用户ID号到登录名的转换。在登录名的查找不正确或很慢时,这个选项就很有用。

  4. +M :此选项支持本地TCP和UDP端口映射程序的注册报告。

  5. -i4 :仅列示IPv4协议下的端口。

  6. -i6 : 仅列示IPv6协议下的端口。

  Netstaty命令举例

  请输入下面的命令:

  # netstat -tulpn

  或者是

  # netstat -npl

  请看输出结果::

  

 Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:6881 0.0.0.0:* LISTEN 6908/python

tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 5562/cupsd

tcp 0 0 127.0.0.1:3128 0.0.0.0:* LISTEN 6278/(squid)

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 5854/exim4

udp 0 0 0.0.0.0:32769 0.0.0.0:* 6278/(squid)

udp 0 0 0.0.0.0:3130 0.0.0.0:* 6278/(squid)

udp 0 0 0.0.0.0:68 0.0.0.0:* 4583/dhclient3

udp 0 0 0.0.0.0:6881 0.0.0.0:* 6908/python

  请注意,最后一栏给出了关于程序名称和端口的信息。在这里,我们解释一下各参数的含义:

  -t : 指明显示TCP端口

  -u : 指明显示UDP端口

  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)

  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。

  -n : 不进行DNS轮询(可以加速操作)

  关于/etc/services文件

  /etc/services是一个纯ASCII文件,它可以提供互联网服务的友好文本名称,还有其默认分配的端口号和协议类型。每一个网络程序都要进入这个文件得其服务的端口号(和协议)。你可以借助于cat命令或less命令等来查看这个文件:

  

$ cat /etc/services

$ grep 110 /etc/services

$ less /etc/services

转载于:https://www.cnblogs.com/balaamwe/archive/2011/12/07/2279314.html

linux 如何查看服务和端口相关推荐

  1. linux netstat服务,linux netstat查看服务和端口状态

    netstat可以查看linux系统中正在使用的服务和端口情况 常见参数 -a (all)显示所有选项,默认不显示LISTEN相关 -t (tcp)仅显示tcp相关选项 -u (udp)仅显示udp相 ...

  2. linux 服务端口查询,linux 怎么查看服务和端口

    (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt sourc ...

  3. linux(2):linux命令查看开放哪些端口

    linux命令查看开放哪些端口 netstat -nupl (UDP类型的端口) netstat -ntpl (TCP类型的端口) a 表示所有 n表示不查询dns t表示tcp协议 u表示udp协议 ...

  4. linux下查看进程占用端口和端口占用进程命令

    Linux下查看进程占用端口: 查看程序对应进程号:ps –ef|grep 进程名 REDHAT :查看进程号所占用的端口号:netstat –nltp|grep 进程号 ubuntu:查看进程占用端 ...

  5. 聊聊linux查看服务和端口状态命令netstat

    使用netstat命令可以查看linux系统中正在使用的服务和端口情况 常见参数 -a (all)显示所有选项,默认不显示LISTEN相关 -t (tcp)仅显示tcp相关选项 -u (udp)仅显示 ...

  6. Linux下常用服务的端口号超详细整理

    来源: http://blog.csdn.net/u013943420/article/details/65938696 大家在学习计算机的时候,对于最常用的几个端口比如80端口肯定有很深的印象,但是 ...

  7. linux命令查看开放哪些端口

    netstat -nupl (UDP类型的端口) netstat -ntpl (TCP类型的端口) a 表示所有 n表示不查询dns t表示tcp协议 u表示udp协议 p表示查询占用的程序 l表示查 ...

  8. linux 中 查看防火墙开放端口号 命令

    1.查看防火墙状态 查看防火墙状态 systemctl status firewalld 开启防火墙 systemctl start firewalld 关闭防火墙 systemctl stop fi ...

  9. linux查看php服务,linux如何查看服务

    服务(service) (推荐学习:linux运维) 服务相当于支持系统运行的一些必要程序,默默运行在系统后台的,他可以为应用程序提供一些更有特色的东西,比如播放MP3,开启一个播放MP3的服务,用户 ...

最新文章

  1. java spring框架 注解_史上最全的java spring注解
  2. Jquery元素判断是否存在
  3. 动态规划 4、基础背包问题总结(多重背包与多重背包的转化)
  4. JSP标准标签库(JSTL)--简介
  5. jmeter mysql 连接复用_JMeter 连接MySQL
  6. java 内存 开发 经验_有一到五年开发经验的JAVA程序员需要掌握的知识与技能!...
  7. Linux7添加syslog,请教linux下安装syslog的方法.是安装,不是配置
  8. esc指令检查打印状态_Z.115 胶片自助打印设备
  9. 【数据结构与算法基础】队列、栈、递归
  10. 机器学习代码实战——SVM(支持向量机)(使用不同核函数)
  11. jquery取复制函数注意点
  12. 〖Linux〗VirtualBox修改虚拟电脑硬盘(vdi)空间大小
  13. 剑指offer例题分享--6
  14. 零零散散的一些知识点(二)
  15. MySQL字符串拼接函数介绍
  16. Java 与或非 判断
  17. 【龙讯module小课堂】浅谈对gap的认识:PWmat中修正gap的module
  18. 【数据库】云数据库rds是什么意思?有什么优势?
  19. 常用视频质量评价库以及下载地址
  20. JVM探秘:垃圾收集器

热门文章

  1. SSH框架的简单搭建步骤
  2. python入门简介
  3. TimSort算法分析
  4. 视频直播技术详解(8)直播云 SDK 性能测试模型
  5. 背景建模与前景检测2(Background Generation And Foreground Detection Phase 2)
  6. 用 WEKA 进行数据挖掘,第 3 部分: 最近邻和服务器端库
  7. Slog64_项目上线之ArthurSlog个人网站上线3
  8. 中兴智能视觉大数据公交车专用道移动智能电子警察系统功能、特点及优势详细介绍...
  9. (1)51单片机NOP指令
  10. Popup窗口在XP+SP2下面受到限制