如何查看在同一网段内的IP

目录

几种方法:

1、bash脚本

2、使用nmap工具

3、arp-scan工具

4、fping工具

[5、ip neigh](#5、ip neigh)


自己用过的几种方法:

1、写一个bash脚本 通过ping命令,保留ping的通的IP

2、nmap工具

3、arp-scan工具

4、fping

5、ip neigh

1、bash脚本

写一个脚本,通过循环ping命令,将ping的通的保存下来。

ping的-c命令,等待超时,否则会永久等待。

例子:./ping.sh 192.168.4.*

复制代码
#!/bin/bash

# 检查是否提供了网段参数
if [ -z "$1" ]; then
    echo "用法: $0 <网段前缀,例如 192.168.4.*>"
    exit 1
fi

# 获取网段前缀
network_prefix=$(echo "$1" | sed 's/\.\*//')

# 定义输出文件
output_file="reachable_ips.txt"

# 清空输出文件
> "$output_file"

# 遍历网段的所有 IP
for i in {1..254}; do
    ip="$network_prefix.$i"
    # Ping 每个 IP 地址,超时时间设为 1 秒,只发送一次请求
    if ping -c 1 -W 1 "$ip" > /dev/null 2>&1; then
        echo "$ip 可达"
        # 记录可达的 IP 地址
        echo "$ip" >> "$output_file"
    fi
done

echo "Ping 完成。所有可达 IP 地址已记录在 $output_file 中。"
2、使用nmap工具

介绍:nmap可以扫描网络工具,可以快速发现网段内活动设备。

nmap工具需要下载安装 sudo apt install nmap

命令:

复制代码
# 扫描网段内的所有活动 IP 地址
nmap -sn 192.168.4.0/24
  • -sn 参数表示只进行主机发现(不进行端口扫描)。
  • 192.168.4.0/24 表示扫描整个网段。
3、arp-scan工具

介绍:arp-sacn是基于arp协议局域网扫描工具,可以发现所有设备的ip和mac地址

命令:

复制代码
# 扫描网段内所有设备
sudo arp-scan --interface=eth0 192.168.4.0/24
  • 需要以 sudo 权限运行,并指定正确的网络接口 (eth0 是示例,需根据实际情况修改)。
  • 扫描结果包含 IP 和 MAC 地址。
4、fping工具

介绍:fing是并行的ping工具,速度快,并发。

命令:

复制代码
# 扫描指定网段内的所有 IP
fping -a -g 192.168.4.0/24 2>/dev/null
  • -a 选项只显示存活的主机。
  • -g 选项用于生成指定网段范围的 IP 地址。
5、ip neigh

介绍:同样可以查看arp缓存中的局域网设备信息,通过vpn连接的网络好像不行

代码:

复制代码
# 列出 ARP 表中的设备
ip neigh

说明:只列出与本机通信的网络,可以arp -a一下再用。不会主动扫描网段

相关推荐
Ll13045252981 天前
如何在校园网让虚拟机联网并固定IP
网络·网络协议·tcp/ip
ha20428941941 天前
Linux操作系统学习之---初识网络
linux·网络·学习
陌路201 天前
Linux 34TCP服务器多进程并发
linux·服务器·网络
爱喝矿泉水的猛男1 天前
单周期Risc-V指令拆分与datapath绘制
运维·服务器·risc-v
科技块儿1 天前
【IP】公有&私有IP地址?
服务器·网络协议·tcp/ip
灵神翁1 天前
自建node云函数服务器
运维·服务器
3***49961 天前
前端WebSocket教程,实时通信案例
网络·websocket·网络协议
TangDuoduo00051 天前
【IO模型与并发服务器】
运维·服务器·网络·tcp/ip
FOREVER-Q1 天前
Windows 下 Docker Desktop 快速入门与镜像管理
运维·服务器·windows·docker·容器
武子康1 天前
Java-172 Neo4j 访问方式实战:嵌入式 vs 服务器(含 Java 示例与踩坑)
java·服务器·数据库·sql·spring·nosql·neo4j