博客
关于我
Linux查看服务器端口打开情况
阅读量:804 次
发布时间:2023-02-04

本文共 2200 字,大约阅读时间需要 7 分钟。

查看服务器网络连接状态

网络管理员在日常系统管理中常需要了解服务器的网络连接状态。本文将介绍几种常用的命令和方法,帮助您轻松查看和分析服务器的网络连接情况。

一、常用命令:netstat

netstat 是一个强大的网络统计工具,可以用来显示网络连接、路由表、接口状态等信息。它是每个 Linux 系统必备的网络管理工具。

1. 基本用法

运行 netstat 时,默认会显示当前网络连接的状态。如果需要更详细的信息,可以通过参数来调整输出内容。

例如:

netstat -ano

输出将包括:

  • Proto:协议类型(如 TCP、UDP、IPv6)
  • Recv-Q/Send-Q:接收/发送队列的长度
  • Local Address/Foreign Address:本地地址和远程地址
  • State:连接状态(如 LISTEN, ESTABLISHED 等)
  • Tim:连接的建立时间

2. 常用参数说明

  • -a:显示所有网络接口的状态,默认只显示非 root 用户的接口。
  • -n:将网络地址转换为友好格式(避免数字形式)。
  • -l:显示 Listen 状态的端口。
  • -o:显示 PID 和进程名称(需要 root 权限)。
  • -x:显示协议扩展信息(如 TCP 协议的 Sockets)。

3. 示例:查看所有网络连接

netstat -ano | more

输出示例:

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTENtcp        0      0 127.0.1.1:53            0.0.0.0:*               LISTENtcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTENtcp        0     36 172.20.0.253:22         172.20.0.133:6576       ESTABLISHEDtcp6       0      0 :::8080                 :::*                    LISTENtcp6       0      0 :::22                   :::*                    LISTENudp        0      0 0.0.0.0:5353            0.0.0.0:*               CLOSE...

4. 查看特定端口的连接

netstat -tuln | grep ':80'

输出将只显示以端口 80 相关的连接。

5. 查看用户进程的网络连接

如果需要查看特定用户的网络连接(如 root 用户),可以使用以下命令:

sudo netstat -nelutp

输出将显示:

  • PID/Program Name:进程 ID 和名称
  • User:所属用户
  • Inode:文件描述符

6. 查看路由表

netstat -r

输出将显示内核的路由表,包括:

  • Destination:目标地址
  • Gateway:默认网关
  • Genmask:子网掩码
  • Flags:路由标志

2. 另一种方法:使用 lsof

lsof(List Open Files)是另一种查看网络连接的工具,专门用于显示系统中打开的文件描述符信息。

1. 安装 lsof(CentOS 7)

sudo yum install lsof -y

2. 查看所有网络连接

sudo lsof -i

输出将包括:

  • COMMAND:正在运行的进程名称
  • PID:进程 ID
  • USER:所属用户
  • FD:文件描述符类型和编号
  • TYPE:文件类型(如 TCP、UDP)
  • DEVICE:设备类型(如 IPv4、IPv6)
  • SIZE/OFF:文件大小和偏移量
  • NODE:文件节点 ID
  • NAME:文件名称

3. 查看特定端口的连接

sudo lsof -i :80

3. 网络连接的其他常见用法

1. 查看本地路由表

netstat -r

2. 查看本地网卡信息

netstat -i

输出将包括:

  • Iface:网络接口名称
  • MTU:最大传输单元大小
  • RX-OK/RX-ERR:接收有效/错误包数
  • TX-OK/TX-ERR:发送有效/错误包数

3. 统计网络协议数据

netstat -s

输出将包括:

  • Ip InOut:输入/输出字节数
  • Udp InOut: UDP 输入/输出字节数
  • Tcp InOut: TCP 输入/输出字节数
  • Icmp InOut: ICMP 输入/输出字节数

4. 持续统计网络数据

netstat -c 5

参数 -c 表示每隔 5 秒刷新统计信息。

4. 注意事项

  • 权限说明:部分 netstat 命令需要 root 权限,记得在执行时加上 sudo
  • 防火墙设置:外部主机访问服务器的某些端口可能需要开启防火墙规则。本文不详细说明防火墙配置。
  • 网络环境:以上命令在不同的网络环境下可能会有所不同,建议根据实际情况调整。

通过以上方法,您可以轻松查看服务器的网络连接状态,分析系统运行中的网络问题,确保服务器的稳定性和安全性。

转载地址:http://vikfk.baihongyu.com/

你可能感兴趣的文章
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 模型中的偏差和公平性检测
查看>>
Vue3.0 性能提升主要是通过哪几方面体现的?
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP、CV 很难入门?IBM 数据科学家带你梳理
查看>>
NLP三大特征抽取器:CNN、RNN与Transformer全面解析
查看>>
NLP入门(六)pyltp的介绍与使用
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>
NLP度量指标BELU真的完美么?
查看>>
NLP的不同研究领域和最新发展的概述
查看>>
NLP的神经网络训练的新模式
查看>>
NLP采用Bert进行简单文本情感分类
查看>>
NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
查看>>
NLP项目:维基百科文章爬虫和分类【02】 - 语料库转换管道
查看>>
NLP:从头开始的文本矢量化方法
查看>>
NLP:使用 SciKit Learn 的文本矢量化方法
查看>>
NLTK - 停用词下载
查看>>