服务器被攻击后要换 IP 吗?换了还会被打吗
被攻击之后,很多人的第一反应是「赶紧换个 IP」。换 IP 有用,但只是暂时的,而且很多人换完几天又被打了,不知道为什么。
先说结论:换 IP 能止血,但如果你不解决「IP 是怎么泄露的」,新 IP 早晚还会被找到。正常情况下一到两周就会被重新扫到。
什么时候必须换 IP
三种情况,换 IP 是必要动作:
- IP 已经进入公开的攻击目标列表——攻击者手里有你的 IP,会反复打
- IP 被运营商或机房拉黑——不换的话连正常访问都受影响
- 攻击已经持续多天且不停止——说明对方盯上你了,不换会一直挨打
什么时候不用换
两种情况,换 IP 没意义:
- 一次性试探——打了几分钟就停了,说明只是扫描或测试,换了反而暴露你在意
- 攻击打的是域名而不是 IP——比如 CC 攻击,换 IP 完全无效,因为对方请求的是域名
怎么判断:看攻击目标。如果攻击流量直接指向 IP(可以用抓包或机房流量分析确认),换 IP 有用;如果攻击的是域名解析后的地址、且请求带正常 Host 头,那是 CC,换 IP 无效。
换 IP 之后为什么还会被打
因为 IP 泄露的渠道没堵住。常见六条:
1. DNS 历史记录
你把域名解析改到新 IP,但旧记录在很多第三方「DNS 历史查询」站点上永久保存。攻击者一查就知道。
对策:换 IP 前先查一遍自己的域名在 DNS 历史库里的记录,评估暴露程度。这个没法彻底清除,只能靠后面的手段兜底。
2. 证书透明度日志
申请 SSL 证书时,域名和服务器信息会被记录到公开的 CT 日志。如果证书是直接签给源站 IP 的,就暴露了。
对策:证书只签给域名,不要签给 IP;源站不直接对外提供 HTTPS。
3. 子域名没走防护
主站走了盾机,但 api.xxx.com、admin.xxx.com、test.xxx.com 直接解析到源站。
对策:把所有子域名过一遍,没用的删掉解析,有用的统一走防护。
4. 邮件头泄露
服务器发邮件(比如注册验证码、告警通知)时,邮件头里会带发信服务器的 IP。
对策:邮件走第三方 SMTP 服务,不要用源站自己发。
5. 扫描器主动发现
这个最防不住。全网有大量扫描器在持续扫端口,你的游戏端口一开放,快的话几小时内就会被记录。
对策:这是为什么「隐藏 IP」比「换 IP」更根本——只要源站还在公网上监听端口,早晚会被扫到。
6. 第三方服务回调
支付回调、推送回调、监控探针,这些配置里如果写了源站 IP,也会泄露。
正确顺序:先藏,再换
很多人顺序搞反了:先换 IP,再想防护。正确顺序是反过来:
- 先把源站 IP 藏起来——接入盾机,源站只允许盾机节点回源,其他来源一律拒绝
- 再换 IP——此时新 IP 从公网不可达,攻击者扫不到,换了才真正有效
- 清理泄露渠道——子域名、邮件、证书、回调配置逐项检查
如果顺序反了,新 IP 在换完的那一刻就暴露在公网上,等于白换。
验证方法:换完之后,用一台外网机器(不是你的办公网络)直接访问源站 IP 的游戏端口。如果连得上,说明藏得不够——防护形同虚设。
换 IP 的具体操作要点
- 选在低峰期——通常凌晨 3-6 点,玩家最少
- 提前降低 DNS TTL——换之前 24 小时把 TTL 从 3600 改成 300,切换时生效快
- 客户端要能自动跟随——如果客户端里写死了 IP,换 IP 等于让所有玩家重装。这是最容易被忽略的坑
- 保留旧 IP 一段时间——不要立刻释放,观察是否有遗漏的配置还指向旧 IP
最容易踩的坑:客户端把服务器 IP 写死在代码或配置里。这时候换 IP 意味着要发新版本、让所有玩家更新。接入盾机的一个附带好处就是——客户端连的是盾机域名,源站换 IP 对玩家完全无感。