Linux - netstat 查看系统端口占用和监听情况

简介: netstat 查看系统端口占用和监听情况

@[toc]

在这里插入图片描述


功能

netstat 命令用于显示各种网络相关信息,比如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 Multicast Memberships等等


语法

在这里插入图片描述

列几个比较常用的

  • -t (tcp) 仅显示tcp相关选项
  • -u (udp)仅显示udp相关选项
  • -n 拒绝显示别名,能显示数字的全部转化为数字
  • -l 仅列出在Listen(监听)的服务状态
  • -p 显示建立相关链接的程序名
  • -a或--all:显示所有连线中的Socket;
  • -A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
  • -c或--continuous:持续列出网络状态;
  • -C或--cache:显示路由器配置的快取信息;
  • -e或--extend:显示网络其他相关信息;
  • -F或--fib:显示FIB;
  • -g或--groups:显示多重广播功能群组组员名单;
  • -h或--help:在线帮助;
  • -i或--interfaces:显示网络界面信息表单;
  • -l或--listening:显示监控中的服务器的Socket;
  • -M或--masquerade:显示伪装的网络连线;
  • -n或--numeric:直接使用ip地址,而不通过域名服务器;
  • -N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
  • -o或--timers:显示计时器;
  • -p或--programs:显示正在使用Socket的程序识别码和程序名称;
  • -r或--route:显示Routing Table;
  • -s或--statistice:显示网络工作信息统计表;
  • -t或--tcp:显示TCP传输协议的连线状况;
  • -u或--udp:显示UDP传输协议的连线状况;
  • -v或--verbose:显示指令执行过程;
  • -V或--version:显示版本信息;
  • -w或--raw:显示RAW传输协议的连线状况;
  • -x或--unix:此参数的效果和指定"-A unix"参数相同;
  • --ip或--inet:此参数的效果和指定"-A inet"参数相同。

示例

显示 tcp,udp 的端口和进程

在这里插入图片描述

 netstat -tunlp

这里我们简单科普一下网络连接状态State的含义 :

  • LISTEN:(Listening for a connection.)侦听来自远方的TCP端口的连接请求
  • SYN-SENT:(Active; sent SYN. Waiting for a matching connection request after having sent a connection request.)再发送连接请求后等待匹配的连接请求
  • SYN-RECEIVED:(Sent and received SYN. Waiting for a confirming connection request acknowledgment after having both received and sent connection requests.)再收到和发送一个连接请求后等待对方对连接请求的确认
  • ESTABLISHED:(Connection established.)代表一个打开的连接
  • FIN-WAIT-1:(Closed; sent FIN.)等待远程TCP连接中断请求,或先前的连接中断请求的确认
  • FIN-WAIT-2:(Closed; FIN is acknowledged; awaiting FIN.)从远程TCP等待连接中断请求
  • CLOSE-WAIT:(Received FIN; waiting to receive CLOSE.)等待从本地用户发来的连接中断请求
  • CLOSING:(Closed; exchanged FIN; waiting for FIN.)等待远程TCP对连接中断的确认
  • LAST-ACK:(Received FIN and CLOSE; waiting for FIN ACK.)等待原来的发向远程TCP的连接中断请求的确认
  • TIME-WAIT:(In 2 MSL (twice the maximum segment length) quiet wait after close. )等待足够的时间以确保远程TCP接收到连接中断请求的确认
  • CLOSED:(Connection is closed.)没有任何连接状态

Show both listening and non-listening sockets

# netstat -a | more : To show both listening and 
non-listening sockets.

在这里插入图片描述


List all tcp ports.

# netstat -at : To list all tcp ports.

List all udp ports

# netstat -au : To list all udp ports.

List only listening ports

# netstat -l : To list only the listening ports.

List only listening TCP ports.

# netstat -lt : To list only the listening tcp ports.

List only listening UDP ports.

# netstat -lu : To list only the listening udp ports.

List only the listening UNIX ports

# netstat -lx : To list only the listening UNIX ports

List the statistics for all ports.

# netstat -s : To list the statistics for all ports.

List the statistics for TCP (or) UDP ports.

# netstat -st(TCP) : To list the statistics for TCP ports.

在这里插入图片描述

# netstat -su(UDP) : List the statistics for UDP ports.

Display PID and program names in the output.

# netstat -pt : To display the PID and program names.

Print the netstat information continuously.

# netstat -c : To print the netstat information continuously.

The kernel routing information.

# netstat -r : To get the kernel routing information.

The port on which a program is running.

# netstat -ap | grep ssh : To get the port
on which a program is running.

Which process is using a particular port:

# netstat -an | grep ':80' : To get the process
which is using the given port.
相关文章
|
7天前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
120 78
|
11天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
45 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
7天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
57 13
|
25天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
1月前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
32 3
|
7天前
|
Ubuntu Linux C++
Win10系统上直接使用linux子系统教程(仅需五步!超简单,快速上手)
本文介绍了如何在Windows 10上安装并使用Linux子系统。首先,通过应用商店安装Windows Terminal和Linux系统(如Ubuntu)。接着,在控制面板中启用“适用于Linux的Windows子系统”并重启电脑。最后,在Windows Terminal中选择安装的Linux系统即可开始使用。文中还提供了注意事项和进一步配置的链接。
25 0
|
18天前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
5月前
|
弹性计算 应用服务中间件 Linux
阿里云服务器开放端口完整图文教程
笔者近期开发完成的服务端程序部署在阿里云的ECS云服务器上面,一些应用程序配置文件需要设置监听的端口(如Tomcat的8080、443端口等),虽然通过CentOs 7系统的的「防火墙」开放了对应的端口号,任然无法访问端口号对应的应用程序,后面了解到原来还需要设置云服务器的「安全组规则」,开放相应的端口权限,服务端的接口才能真正开放。
739 1
|
5月前
|
弹性计算 运维 数据安全/隐私保护
云服务器 ECS产品使用问题之如何更改服务器的IP地址或端口号
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
4月前
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题