文档首页> 常见问题> Linux 服务器如何查看网络连接状态?

Linux 服务器如何查看网络连接状态?

发布时间:2025-04-22 22:45       

Linux服务器网络连接状态全面检测指南(8种实用命令详解)

作为Linux系统管理员,掌握网络连接状态检测技能至关重要。本文将深入讲解8种专业级网络检测命令,帮助您像网络侦探般精准定位服务器连接问题。

一、netstat命令:网络连接全景扫描仪

netstat -tulnp

参数解析:
-t: 显示TCP连接
-u: 显示UDP连接
-l: 仅显示监听状态连接
-n: 禁用域名解析(加速显示)
-p: 显示进程信息

典型应用场景:快速发现异常端口占用情况,识别未经授权的监听服务。

二、ss命令:netstat的超级升级版

ss -s # 显示摘要统计
ss -ltp # 显示监听TCP连接及进程

技术优势:
• 执行速度比netstat快3倍
• 支持更详细的过滤条件
• 显示TCP内部状态机信息

三、lsof命令:深度进程关联分析

lsof -i :80 # 检查80端口使用情况
lsof -iTCP -sTCP:LISTEN # 所有TCP监听连接

高阶技巧:结合grep实现复杂过滤
lsof -i | grep -E '(ESTABLISHED|CLOSE_WAIT)'

四、tcpdump:网络流量显微镜

tcpdump -i eth0 'port 22' # 监控22端口流量
tcpdump -nnvvXSs 1514 -i eth0 # 详细数据包分析

企业级应用:
• 抓取特定IP通信:tcpdump host 192.168.1.100
• 保存抓包数据:tcpdump -w packet.pcap

五、iftop:实时流量可视化

iftop -P -n -i eth0

参数说明:
-P: 显示端口号
-n: 禁用主机名解析
界面操作:
• 按s显示源端口
• 按d显示目标端口
• 按q退出

六、nmap:专业级端口扫描

nmap -sT -p 1-65535 localhost # 完整TCP扫描
nmap -sU -p 1-1024 localhost # UDP端口扫描

安全建议:
• 定期扫描检测开放端口
• 对比历史记录发现异常
• 结合防火墙规则分析

七、ip命令:现代网络配置工具

ip addr show # 显示所有接口
ip route show # 显示路由表
ip -s link # 显示接口统计

替代传统ifconfig的优势:
• 支持更多新特性
• 输出格式更规范
• 功能更强大

八、综合诊断流程

  1. 使用ss/netstat确认连接状态
  2. 通过lsof定位相关进程
  3. 用tcpdump分析具体通信
  4. 结合iftop查看流量特征
  5. 最终用nmap验证端口状态

典型问题解决方案:
TIME_WAIT过多:调整tcp_tw_reuse参数
CLOSE_WAIT堆积:检查应用程序socket处理
拒绝服务攻击:结合iptables限流

运维专家建议

建议将关键命令封装成监控脚本,定期检查以下指标:
1. 异常端口变化
2. 可疑外联连接
3. 非授权监听服务
4. 流量突增情况
掌握这些网络诊断技术,您将能快速应对90%以上的Linux服务器网络问题。