Linux如何查看端口

1、lsof -i:端口号 用于查看某一端口的占用情况,比如查看8000端口使用情况,lsof -i:8000

  1. # lsof -i:8000
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. lwfs 22065 root 6u IPv4 4395053 0t0 TCP *:irdmi (LISTEN)

可以看到8000端口已经被轻量级文件系统转发服务lwfs占用

2、netstat -tunlp |grep 端口号,用于查看指定的端口号的进程情况,如查看8000端口的情况,netstat -tunlp |grep 8000

  1. # netstat -tunlp
  2. Active Internet connections (only servers)
  3. Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
  4. tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 4814/rpcbind
  5. tcp 0 0 0.0.0.0:5908 0.0.0.0:* LISTEN 25492/qemu-kvm
  6. tcp 0 0 0.0.0.0:6996 0.0.0.0:* LISTEN 22065/lwfs
  7. tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 38296/dnsmasq
  8. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 5278/sshd
  9. tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 5013/cupsd
  10. tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 5962/master
  11. tcp 0 0 0.0.0.0:8666 0.0.0.0:* LISTEN 44868/lwfs
  12. tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 22065/lwfs
  1. # netstat -tunlp | grep 8000
  2. tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 22065/lwfs

说明一下几个参数的含义:

  1. -t (tcp) 仅显示tcp相关选项
  2.                                  -u (udp)仅显示udp相关选项
  3.                                  -n 拒绝显示别名,能显示数字的全部转化为数字
  4.                                  -l 仅列出在Listen(监听)的服务状态
  5.                                  -p 显示建立相关链接的程序名
  6.  

附加一个python端口占用监测的程序,该程序可以监测指定IP的端口是否被占用。

  1. 1 #!/usr/bin/env python
  2. 2 # -*- coding:utf-8 -*-
  3. 3
  4. 4 import socket, time, thread
  5. 5 socket.setdefaulttimeout(3) #设置默认超时时间
  6. 6
  7. 7 def socket_port(ip, port):
  8. 8 """
  9. 9 输入IP和端口号,扫描判断端口是否占用
  10. 10 """
  11. 11 try:
  12. 12 if port >=65535:
  13. 13 print u'端口扫描结束'
  14. 14 s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  15. 15 result=s.connect_ex((ip, port))
  16. 16 if result==0:
  17. 17 lock.acquire()
  18. 18 print ip,u':',port,u'端口已占用'
  19. 19 lock.release()
  20. 20 except:
  21. 21 print u'端口扫描异常'
  22. 22
  23. 23 def ip_scan(ip):
  24. 24 """
  25. 25 输入IP,扫描IP的0-65534端口情况
  26. 26 """
  27. 27 try:
  28. 28 print u'开始扫描 %s' % ip
  29. 29 start_time=time.time()
  30. 30 for i in range(0,65534):
  31. 31 thread.start_new_thread(socket_port,(ip, int(i)))
  32. 32 print u'扫描端口完成,总共用时:%.2f' %(time.time()-start_time)
  33. 33 # raw_input("Press Enter to Exit")
  34. 34 except:
  35. 35 print u'扫描ip出错'
  36. 36
  37. 37 if __name__=='__main__':
  38. 38 url=raw_input('Input the ip you want to scan: ')
  39. 39 lock=thread.allocate_lock()
  40. 40 ip_scan(url)

该程序执行结果如下:

  1. # python scan_port.py
  2. Input the ip you want to scan: 20.0.208.112
  3. 开始扫描 20.0.208.112
  4. 20.0.208.112 : 111 端口已占用
  5. 20.0.208.112 : 22 端口已占用
  6. 20.0.208.112 : 8000 端口已占用
  7. 20.0.208.112 : 15996 端口已占用
  8. 20.0.208.112 : 41734 端口已占用
  9. 扫描端口完成,总共用时:9.38

https://www.cnblogs.com/的更多相关文章

  1. 访问路径:https://i.cnblogs.com/posts?categoryid=925678

    https://i.cnblogs.com/posts?categoryid=925678

  2. URL https://i.cnblogs.com/EditPosts.aspx?opt=1

    URL url = new URL("https://i.cnblogs.com");URL url1 = new URL(url, "EditPosts.aspx?op ...

  3. 随笔二-https://www.cnblogs.com/shang1680/p/9657994.html

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...

  4. 211806189杨昊辰 https://www.cnblogs.com/honey1433223/

    211806189杨昊辰 https://www.cnblogs.com/honey1433223/

  5. https://www.cnblogs.com/h2zZhou/p/5440271.html

    https://www.cnblogs.com/h2zZhou/p/5440271.html

  6. https://www.cnblogs.com/soundcode/p/4174410.html

    https://www.cnblogs.com/soundcode/p/4174410.html 1.首先要在服务器端新建一个网站axpx页 然后再网站的后台写代码获取winform传过来的文件名. ...

  7. https://www.cnblogs.com/yudanqu/p/9467803.html

    https://www.cnblogs.com/yudanqu/p/9467803.html

  8. 转发自:一像素 十大经典排序算法(动图演示)原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删

    原链接:https://www.cnblogs.com/onepixel/articles/7674659.html     个人收藏所用   侵删 0.算法概述 0.1 算法分类 十种常见排序算法可 ...

  9. @无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 通篇引用

    无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 关于Async与Await的FAQ 关于Async与Await的 ...

  10. 211806385 黄存慧 https://www.cnblogs.com/huangch/ https://github.com/HuangCh327

    211806385 黄存慧 https://www.cnblogs.com/huangch/ https://github.com/HuangCh327

随机推荐

  1. Maven配置环境变量

    Windows: 1:新建系统M2_HOME变量,并把安装maven路径拷贝上去 ​ 2:配置path变量,并把maven路径拷贝上去,这次的maven路径到bin ​ 3:测试maven环境是否配置 ...

  2. 【图文教程】CentOS 7配置静态IP地址

    文档目标:帮助新手在刚刚安装好的CentOS 7上设置静态IP地址. 目标人群:本篇教程比较简单,针对的是初学者,专业人士请跳过,不喜勿喷.谢谢! 在vmware中安装好centos7(安装过程省略) ...

  3. machine learning(10) -- classification:logistic regression cost function 和 使用 gradient descent to minimize cost function

    logistic regression cost function(single example) 图像分布 logistic regression cost function(m examples) ...

  4. UML类图介绍

    一.概述 UML类图用来定义系统中的类,包括描述类的结构和类之间的关系.类图的主要作用于描述系统的静态结构. 类图的基本模型元素如下:

  5. C#经纬度加减运算(度°分′秒″格式)

    经度是分和秒是按60进位,如果要做运算第一步就是转换成浮点数,之后就是计算和还原. using System.Text.RegularExpressions; public static double ...

  6. [Angular] Using Pipe for function memoization

    Sometimes we might have some expensive function to calcuate state directly from template: <div cl ...

  7. php流程控制之if else语法

    php流程控制之if else语法 if和else语法 这是一个非常重要的章节,也是PHP当中的一个重要的语法. [注意]我对这个语法的定义级别为:默写级别.也就是你需要,闭着眼睛,都能够写出来的东西 ...

  8. MongoDB 如何使用内存?为什么内存满了?

    最近接到多个MongoDB内存方面的线上case及社区问题咨询,主要集中在: 为什么我的 MongoDB 使用了 XX GB 内存? 一个机器上部署多个 Mongod 实例/进程,WiredTiger ...

  9. 三十四.MySQL主从同步 、主从同步模式

    mysql51:192.168.4.51 主 mysql52:192.168.4.52 从 mysql50:192.168.4.50 客户机   1.MySQL一主一从   1.1 51,52 安装m ...

  10. 页面打开excel

    1. File => Stream / MemoryStream FileStream stream = new FileStream(path, FileMode.Open, FileAcce ...