搜索结果: "tcp"
共找到 44 个页面
TCP 连接数爆表:攻击还是 Bug 排查指南
标题匹配title: TCP 连接数爆表:攻击还是 Bug 排查指南
tags: [networking, tcp, troubleshooting, linux, security, case-study]
- raw/articles/TCP连接数爆表-是攻击还是Bug.md
# TCP 连接数爆表:攻击还是 Bug 排查指南
当服务器 TCP 连接数飙升(如 10 万+)时,快速分辨是 **DDoS/CC 攻击** 还是 **代码 Bug/配置错误**,是应急响应的核心能力。
服务器网络排障方法论 — 分层定位七步法
firewall-cmd --add-port=8080/tcp --permanent
### ⑥ 向外追踪:ping / traceroute / tcpdump
traceroute -T -p 80 www.baidu.com # TCP(绕过 ICMP 过滤)
**tcpdump 终极抓包:**
tcpdump -i eth0 port 8080 -nn # 实时监控
线上故障排查清单 — CPU/磁盘/内存/GC/网络 四维速查
tcpdump -i eth0 tcp -w /tmp/capture.cap
tcpdump -i eth0 -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
出现 `Connection reset by peer` 用 tcpdump 抓包验证 RST:
tcpdump -i eth0 tcp -w rst.cap
| [[tcp-connection-attack-vs-bug]] | TCP 连接数爆表排查:攻击 vs Bug |
K8s 探针机制 — Liveness / Readiness / Startup 配置指南 + 百万级故障复盘
| **TCP Socket** | 无 HTTP 接口的服务(Nginx、Redis) | 检查端口是否开放 |
### 场景 2:Nginx TCP 探测
tcpSocket:
tcpSocket:
tcpSocket:
Linux 系统调优实战 — 接口响应从 500ms 降到 100ms 全复盘
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_tw_reuse = 1
Linux 运维工程师 30 个高频命令速查手册
netstat -tunlp # 所有 TCP/UDP 监听端口 + 进程
### 24. tcpdump — 网络抓包
tcpdump -i eth0 port 80 # 抓 HTTP 流量
tcpdump -i any host 10.0.0.1 -w dump.pcap # 保存到文件
tcpdump -r dump.pcap # 读取 pcap
Linux 高并发内核优化手册 — 文件句柄/网络/内存/调度/I/O/安全七维调优
tags: [linux, performance, networking, security, tcp, memory, scheduling]
net.ipv4.tcp_tw_reuse = 1 # 允许复用 TIME_WAIT 端口
net.ipv4.tcp_tw_recycle = 0 # 关闭 TIME_WAIT 快速回收(NAT 场景必须关)
net.ipv4.tcp_max_tw_buckets = 50000 # 防止 TIME_WAIT 占满端口和内存
net.ipv4.tcp_syncookies = 1 # 开启 SYN 防攻击
生产环境 Linux 内核参数调优 — 6 个必调参数
## ② net.core.somaxconn — TCP 全连接队列
**作用:** 限制已完成 TCP 三次握手、等待 `accept()` 处理的全连接队列长度。
**调优原因:** 默认仅 **128**,是高并发 TCP 服务最常见的隐性瓶颈。应用内设置再大也被此参数截断。队列溢出时内核直接丢弃新连接,客户端出现 `connection refused` 或超时。
**调优原因:** 默认仅 ~**212KB**,远不能满足高带宽要求。缓冲区不足会压制 TCP 吞吐,导致物理网卡带宽无法跑满。
## ⑤ net.ipv4.tcp_max_syn_backlog — TCP 半连接队列
Linux 服务器性能排查实战手册 — 三板斧/案例/阈值/参数速查
# 统计各 TCP 状态连接数
netstat -an | awk '/^tcp/{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -10
# TCP 优化
net.ipv4.tcp_syncookies = 1 # 防 SYN Flood
net.ipv4.tcp_tw_reuse = 1 # TIME_WAIT 复用
Linux 端口探查三工具 — ss / netstat / lsof 完全指南
# 所有 TCP/UDP 连接(含 ESTABLISHED)
# 只显示 TCP 监听端口
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=845,fd=3))
| Netid | 协议类型(tcp/udp/tcp6/udp6) |
### TCP 状态诊断
服务器性能五维排查 — CPU/内存/磁盘/网络/文件系统深度解析
# 第 36~45s: sar -n DEV 1 3 + sar -n TCP,ETCP 1 3
| `sar -n TCP,ETCP 1 3` | TCP 连接状态 | 重传率 | 重传异常升高 → 网络质量问题 |
### 生产验证的 TCP 参数
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_fin_timeout = 15 # FIN_WAIT2 超时(默认 60)
服务器安全加固清单 — 新机器上线前必做的 20 件事
sudo firewall-cmd --add-port=22/tcp --permanent # 先放行 SSH
sudo firewall-cmd --add-port=80/tcp --permanent # 按需添加
sudo ufw allow 22/tcp
net.ipv4.tcp_syncookies = 1
sudo firewall-cmd --add-port=2222/tcp --permanent
Nginx 典型配置错误复盘 — 20+ 个踩坑点详解
**根因:** 每个请求都新建 TCP 连接到 upstream,未使用长连接。
### 误区一:sendfile / tcp_nopush / tcp_nodelay 三选一
tcp_nopush on; # 等到数据包足够大再发,配合 sendfile 减少小包
tcp_nodelay on; # 禁用 Nagle 算法,小包立即发送(对交互式 API 重要)
**策略:** 对大文件下载(静态资源)用 `sendfile on + tcp_nopush on` 提升吞吐;对 API 代理用 `tcp_nodelay on` 降低延迟。三者可以同时开启——`tcp_nopush` 确保缓冲区满再发,`tcp_nodelay` 对个别小包突破此规则立即发送,互不矛盾。
生产级 Nginx 性能优化 — 从内核到 K8s 全链路
第一道防线:OS 内核调优(文件句柄 + TCP 协议栈)
### TCP 协议栈压榨
net.ipv4.tcp_tw_reuse = 1
# ⚠️ 绝对不要开启 tcp_tw_recycle(新内核已废弃,NAT 下严重丢包)
net.ipv4.tcp_fin_timeout = 15
Nginx 实时推送生产实践全解:SSE 与 WebSocket 的原理、架构、工程化与生产级落地
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
Wiki Log
- 说明:Linux 网络排障三工具实操指南(ss/netstat/lsof),TCP 状态诊断、实战场景、命令速查
| 2026-05-26 11:12 | create | tcp-connection-attack-vs-bug | tags: networking,tcp,troubleshooting,linux,security,case-study | source: 王璐宇 2025-08-29 | 5 cross-refs, tcp tag registered |
| 2026-05-26 11:24 | create | tcp-connection-attack-vs-bug | tags: networking,tcp,troubleshooting,linux,security,case-study | source: 王璐宇 2025-08-29 | P2 auto-publish, 5 cross-refs |
| 2026-05-28 10:22 | create | linux-kernel-tuning-guide | tags: linux,performance,networking,security,tcp | source: Linux沐风 2026-05-11 | P2 auto-publish, 4 cross-refs |
| 2026-05-29 11:25 | create | k8s-capacity-planning-qos-cost-optimization | tags: kubernetes,architecture,performance,monitoring,java,golang,messaging,tcp | source: 小随小看 2026-05-23 | P2 auto-publish, 8 cross-refs |
Docker 生产环境踩坑指南 — 10 + 5 个常见问题
**现象:** 服务器被入侵,挖矿程序通过 Docker 逃逸到宿主机;公网任何人可通过 `docker -H tcp://server:2375 ps` 操作远程容器。
**原理:** Docker daemon 默认不开放 TCP 端口。若管理员暴露到公网,任何能访问该端口的人都能以 root 权限运行任意容器→读取所有文件→通过逃逸获宿主机 root。
# 修改 systemd unit,不要加 -H tcp://0.0.0.0:2375
| [[tcp-connection-attack-vs-bug]] | TCP 连接数爆表排查:攻击 vs Bug |
运维工程师面试 50 题 — 经典 Linux/网络/数据库基础全覆盖
| 4 | 传输层 | 端到端传输 | TCP, UDP |
### 3. TCP 三次握手与四次挥手
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
| tcpdump | 抓包分析 | L2-L7 |
Kubernetes 负载均衡深度实践:Service 数据面到生产级流量治理全链路
| 协议支持 | HTTP/HTTPS/gRPC/TCP | HTTP/HTTPS/gRPC/TCP/ UDP | HTTP/HTTPS/TCP | HTTP/HTTPS |
2. 缩短 `net.netfilter.nf_conntrack_tcp_timeout_time_wait`(默认 120s → 建议 30s)
6. 抓包确认:`tcpdump -i any port
4. 抓包分析长尾连接:`tcpdump -i any -s 0 -w capture.pcap`
K8s 服务访问排查 — 从 Pod、Service 到 Ingress 十步工作流
# KUBE-SVC-XXXXXXXX tcp -- anywhere 10.109.12.34 tcp dpt:80
# KUBE-SEP-XXXXXXXX tcp -- anywhere 10.244.1.15 tcp dpt:8080
# TCP
tcpSocket:
Wiki Index
- [[linux-essential-commands-reference]] — Linux 运维工程师 30 个高频命令速查手册(ls/cd/grep/find/top/ss/tcpdump 等全覆盖)
- [[network-troubleshooting-order]] — 服务器网络排障方法论:分层定位七步法(IP/路由/防火墙/tcpdump)
- [[online-troubleshooting-checklist]] — 线上故障排查速查清单:CPU/磁盘/内存/GC/网络 四维快速参考(含 jstack/jmap/jstat/tcpdump)
- [[tcp-connection-attack-vs-bug]] — TCP 连接数爆表时快速分辨是 DDoS/CC 攻击还是代码 Bug — 连接状态分析、源 IP 分析、攻防鉴别表、应急与根因治理
DevOps 技术面试指南 — 容器/云原生/内核 59 题
| 9 | TCP/IP 协议栈分层? | 应用层(HTTP) → 传输层(TCP/UDP) → 网络层(IP) → 链路层(以太网) | — |
| 10 | 网络故障排查? | ping(连通) → traceroute(路由) → netstat(连接) → tcpdump(抓包) → 防火墙 | [[network-troubleshooting-order]] |
| 52 | TCP 协议栈优化+Pod 网络? | 缓冲区增大 + tcp_fastopen + BBR + Calico DSR + MTU 调整 + eBPF + SR-IOV | [[linux-kernel-tuning-production]] |
Jenkins 多 Master 架构部署方案 — K8S + Gateway API
resourceRequestCpu: "500m"
resourceLimitCpu: "1"
resourceRequestCpu: "100m"
Linux 服务器 CPU 飙高排查 — 完整方法论 + 应急响应实战
sar -n DEV,EDEV,TCP,ETCP 1 5
| `SYN-RECV` 很多 | 连接风暴、半连接队列不足 | 调大 `somaxconn`、`tcp_max_syn_backlog` |
| [[online-troubleshooting-checklist]] | 四维排查速查清单(CPU/磁盘/内存/网络 + Java 工具 jstack/jmap/jstat/tcpdump) |
NFS 挂载参数全解析 — 测试与调优指南
| `proto=tcp/udp` | NFSv3 | 传输协议(v4 强制 TCP) |
| `nconnect` | NFSv4.1+ | 多 TCP 连接数,提升并发吞吐 |
- [[network-troubleshooting-order]] — 网络排障(NFS 依赖 TCP 网络层)
NFS 故障排查 SOP — 7 步法 / 6 类故障 / 实战案例
mount -t nfs -v -o vers=4.2,tcp,hard,intr,rsize=1048576,wsize=1048576 \
tcpdump -i any port 2049 -w nfs_trace.pcap &
| 挂载参数 | vers=4.2,tcp,hard,intr,rsize=1048576,wsize=1048576,timeo=14,retrans=3,\_netdev,noatime |
SSH 暴力破解防御指南 — 公钥认证 / fail2ban / 2FA / 入侵检测 / 连接限制 / 蜜罐
iptables -A INPUT -p tcp -s <运维IP> --dport 2222 -j ACCEPT
# 修改 listen_endpoints = tcp:2222:interface=0.0.0.0
AllowTcpForwarding no
K8s 滚动更新无损发布误区 — RollingUpdate 真相与真正无感发布体系
| 基础存活 | 进程存活 | `/healthz` 或 TCP 端口 |
不配置优雅终止的后果:Pod 删除瞬间 TCP 连接被强断,请求失败、长连接中断。
Linux 入侵检测与应急响应 — AIDE/rkhunter/auditd 安全事件排查实战
# rsyslog 远程转发(TCP 保证可靠)
| 日志转发丢失数据 | rsyslog 使用 UDP 网络抖动 | 改用 TCP(`@@`)+ 启用磁盘队列缓冲 |
Linux 内存管理深潜 — Buffer/Cache/Page Cache/Slab/回收/OOM 全链路
| TCP | TCP 缓冲区 | 大量网络连接 |
- [[online-troubleshooting-checklist]] — 四维排查速查清单(CPU/磁盘/内存/网络 + Java 工具 jstack/jmap/jstat/tcpdump)
服务器负载过高排查 — 案例实战 / Netflix 60 秒法 / 常见根因
sar -n TCP,ETCP 1 3 # TCP retransmits, listen drops
| **TIME_WAIT 堆积** | ss -s 大量 timewait, listen drops | `tcp_tw_reuse` + 连接池 |
Nginx 502/504/Connection Reset 深度排查指南
### ④ 检查 TCP backlog
| [[network-troubleshooting-order]] | 基础网络连通性排障(防火墙/路由/tcpdump) |
Wiki Schema
- tcp: TCP 协议与连接排查
CNI 网络插件深度对比 — Flannel vs Calico vs Cilium
- **丰富的可观测性**:Hubble 提供 L3-L7 流量可视化、服务依赖图、TCP 指标
注册中心选型 — Nacos / Zookeeper / Consul 深度对比
| 健康检查 | HTTP / TCP / gRPC / Script / TTL — 模型最丰富 |
Redis 连接管理与熔断治理 — 连接数打满 / 僵尸连接 / 雪崩防护
| `tcp-keepalive` | 300 | TCP keepalive 间隔(秒) |
K8s 架构与核心概念深度解析 — 面试通关秘籍(一)
- Service:L4 负载均衡(TCP/UDP)
K8s 容量规划、Pod QoS 与成本优化实战指南
tags: [kubernetes, architecture, performance, monitoring, java, golang, messaging, tcp]
Pod 排障 — CrashLoopBackOff / Exit Code 排查 / OOM / 探针 / 依赖服务 / ConfigMap
# 容器内有 curl/nc/dig/ss/tcpdump 等全套网络工具
Service 与网络排障 — Endpoints / DNS / kube-proxy / CNI / NetworkPolicy / Ingress
# 正常输出:TCP
生产级 Linux 磁盘 IO 调优 — 从核心概念到实战落地
- [[online-troubleshooting-checklist]] — 四维排查速查清单(CPU/磁盘/内存/网络 + Java 工具 jstack/jmap/jstat/tcpdump)
Keepalived + Nginx 高可用实战 — VRRP / VIP 漂移 / 主备切换
- [ ] VRRP 通信正常(`tcpdump -i eth0 vrrp -n`)
Terraform 基础设施即代码实战 — 从入门到生产
ip_protocol = "tcp"