我最近遇到一个有趣案例,再次验证了"信任但需验证"的原则。作为渗透测试顾问,我的家庭实验室配有光纤专线和/28 IPv4地址块。当同事Sally请求搭建KALI Linux使用MASSCAN(GitHub链接:https://github.com/robertdavidgraham/masscan)进行客户扫描时,这个号称能在6分钟内扫遍全网的工具,却在400包/秒的低速下就导致ISP提供的Adtran 3140路由器疯狂丢包。
问题根源在于连接状态跟踪——当并行扫描数百个IP的65535个TCP端口时,路由器需要瞬时跟踪65万+连接状态。在获得ISP直连以太网端口后,我将扫描速率提升至1000包/秒,却导致Linux路由器的CPU飙升至100%。原来ISP将我的设备作为/28网段的末跳路由,这意味着需要手动配置IP转发规则:
|
|
通过conntrack -L
命令发现状态表暴增至50万+条目后,最终解决方案是使用iptables的RAW表禁用DMZ网段的状态跟踪:
|
|
该规则使得来自DMZ网段且目标为外网的流量跳过状态跟踪,成功解决了高速扫描时的系统过载问题。这次经历不仅实现了直连ISP、提升网络性能的目标,更验证了"保持冷静,继续裸奔式黑客"的哲理。