首先确认是否是台湾vps或CN2链路本身的问题,还是应用或防火墙导致的抖动。建议按从外到内的顺序进行排查,优先判断网络层连通性,再看主机性能与防火墙配置。
使用 ping、mtr 或 traceroute 检测到目标节点的丢包与跳数异常,观察是否在出境链路(到 CN2 节点)或在 ISP 回程发生抖动。
1) 在本地以及 VPS 上分别运行 mtr -rw 目标IP,比对丢包发生位置;
2) 检查 VPS 的网络接口错误:ifconfig 或 ip -s link,注意 RX/TX 错误与丢包;
3) 查看主机负载与中断:top、vmstat、dmesg 是否有关联;
4) 检查防火墙(iptables/nftables/cloud 防护)和安全组是否限制了 ICMP 或特定端口。
可部署定时检测脚本(cron)定期执行 mtr 或 ping,一旦检测到连续丢包或 RTT 突增则自动重启网络服务(systemctl restart networking 或 /etc/init.d/networking restart)并将结果上报监控平台。
网站不可达或响应慢既可能是网络问题,也可能是 Web 服务、数据库或资源耗尽导致。排查时需要同时检查网络、Web 服务日志、数据库性能和磁盘/内存使用情况。
查看 Web 服务器(如 Nginx/Apache)是否运行、是否有大量 5xx 错误,数据库连接是否超时,以及系统资源是否被耗尽(CPU/内存/IO)。
1) 检查进程与端口:ss -tlnp | grep :80 或 systemctl status nginx;
2) 查看访问日志与错误日志,定位是否为应用层异常或后端超时;
3) 检查数据库连接数与慢查询:MySQL 使用 SHOW PROCESSLIST 与慢查询日志;
4) 使用 iostat、iotop 检测磁盘 IO,避免 IO 瓶颈导致响应变慢。
可实现健康检查脚本:若检测到 Web 进程崩溃则自动重启服务并清理临时文件;若检测到数据库连接溢出,可触发重启连接池或发送告警并执行滚动重启策略。结合监控阈值(如 90% CPU/IO)自动触发扩容或流量限流策略。
域名解析异常常见于域名解析记录被误修改、DNS 服务商故障或 VPS 本地 DNS 缓存问题。对使用 CDN 或负载均衡的场景还需检查上游解析与回源配置。
通过多节点 dig 查询比对各地解析结果,确认是全局解析异常还是单点解析问题;同时检查域名在 DNS 面板的解析记录是否被误改或 TTL 配置过长。
1) 本地与外部查询:dig @8.8.8.8 yourdomain.com A +short 与 dig yourdomain.com;
2) 检查 VPS 的 /etc/resolv.conf 是否被篡改或指向不可用 DNS;
3) 若使用 DNS 轮询或负载,确认所有记录一致且未过期;
4) 检查 DNSSEC 或 CAA 等安全配置是否误配置导致解析失败。
可以配置脚本定时对比 DNS 记录与预期值,一旦发现不一致自动通过 API 恢复 DNS 记录(多数 DNS 服务商支持 API),并发送变更通知;本地可配置双 DNS 并在主 DNS 异常时切换到备用 DNS。
邮件异常包括无法发信、退信或被归类为垃圾邮件。排查时需同时确认端口连通、DNS 反向解析(PTR)、SPF/DKIM/DMARC 设置与黑名单状态。
确认 SMTP 服务端口(25/465/587)在 VPS 上可达且服务运行正常,查看邮件队列与日志,检查是否存在大量退信或被对端拒绝的记录。
1) 检查端口连通:telnet yourmaildomain 25 或 nc -vz yourmaildomain 587;
2) 查看邮件队列:Postfix 使用 postqueue -p 或 mailq;
3) 验证 PTR、SPF、DKIM、DMARC:确保 PTR 指向主机域名,SPF 包含发信 IP,DKIM 签名有效;
4) 查询 IP 是否列入垃圾邮件黑名单(如 Spamhaus、DNSBL)。
可实现周期性自检脚本:检测 SMTP 端口与服务状态,若服务死亡则重启;自动检测 PTR/SPF/DKIM 配置变更并通知运维;若 IP 被列入黑名单,自动触发工单或脚本向黑名单运营方申请解除封禁并记录证据。
磁盘、内存或 inode 耗尽是虚拟主机常见故障源。预防与自动修复策略应包括监控、日志轮转、临时文件清理与报警联动。
监控磁盘使用率、inode 使用、内存/交换分区使用、进程数和系统负载。对日志文件、缓存目录、备份目录实施配额与清理策略。
1) 部署监控(Prometheus/Zabbix/云监控),设置磁盘/内存告警阈值;
2) 定期执行日志轮转(logrotate),对应用日志与访问日志实施按大小或按时间轮转;
3) 编写清理脚本:清理 /tmp、旧备份、缓存文件,并在清理前打包并备份重要文件以防误删;
4) 对于 inode 耗尽,查找小文件占用量并清理重复缓存或临时文件。
结合监控平台,当磁盘或 inode 超过阈值时自动触发清理脚本并发送 Slack/邮件告警;对于无法通过清理解决的情况,自动触发扩容工单或调用云厂商 API 扩展磁盘。同时记录事件并进行事后分析以避免复发。
