搜索结果: "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 :80 rr

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]

K8s 多集群 + Istio 灰度发布 — 全球多活流量治理生产指南

tcp:

Pod 排障 — CrashLoopBackOff / Exit Code 排查 / OOM / 探针 / 依赖服务 / ConfigMap

# 容器内有 curl/nc/dig/ss/tcpdump 等全套网络工具

Service 与网络排障 — Endpoints / DNS / kube-proxy / CNI / NetworkPolicy / Ingress

# 正常输出:TCP :80 rr → :8081 Masq 1 0 0

生产级 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"