内容简介:本文风哥教程参考Linux官方文档、Red Hat Enterprise Linux官方文档、Ansible Automation Platform官方文档、Docker官方文档、Kubernetes官方文档和Podman官方文档等内容,详细介绍了相关技术的配置和使用方法。
本文档风哥主要介绍Linux系统网络端口占用排查方法,包括netstat、ss、lsof等工具的使用,以及生产环境中的实战案例。
Part01-基础概念与理论知识
1.1 端口基础
0-1023 : 知名端口(系统端口)
1024-49151: 注册端口
49152-65535: 动态端口
# 常见端口
22 – SSH
80 – HTTP
443 – HTTPS
3306 – MySQL
6379 – Redis
Part02-生产环境规划与建议
2.1 端口排查工具
1. netstat – 网络统计工具
2. ss – socket统计工具
3. lsof – 列出打开的文件
4. nmap – 端口扫描工具
from PG视频:www.itpux.com
Part03-生产环境项目实施方案
3.1 端口查看
$ netstat -tuln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tc学习交流加群风哥微信: itpux-comp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
# 使用ss查看端口
$ ss -tuln
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
# 查看端口占用进程
$ lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 1234 root 6u IPv4 12345 0t0 TCP *:http (LISTEN)
Part04-生产案例与实战讲解
4.1 案例:端口被占用
$ nginx -t
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
# 排查步骤
# 1. 查看端口占用
$ lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 2345 root 4u IPv4 23456 0t0 TCP *:http (LISTEN)
# 2. 停止占用进程
$ systemctl stop httpd
# 3. 验证端口释放
$ lsof -i :80
# 无输出表示端口已释放
风哥提示:
