首页
/ WatchYourLAN项目:自定义MAC地址厂商标识的配置方法

WatchYourLAN项目:自定义MAC地址厂商标识的配置方法

2025-06-05 10:04:57作者:廉皓灿Ida

背景介绍

在WatchYourLAN网络管理项目中,设备识别是一个重要功能。系统通过MAC地址前6位(OUI)来识别设备厂商,但有时会遇到以下情况:

  1. 特殊设备(如Proxmox虚拟化平台)使用非标准MAC地址
  2. 私有部署环境中自定义了MAC地址前缀
  3. 新出现的设备厂商尚未被标准数据库收录

标准解决方案

WatchYourLAN默认使用arp-scan的ieee-oui.txt数据库进行厂商识别。该数据库由IEEE官方维护,包含全球注册的MAC地址前缀与厂商对应关系。数据库会定期更新,反映厂商变更和所有权转移。

自定义MAC厂商标识方法

方法一:通过挂载配置文件

  1. 创建本地映射文件

    • 在宿主机上创建目录:/docker_stacks/watchyourlan/_data/arp-scan
    • 在该目录下创建mac-vendor.txt文件
  2. 文件格式要求

    • MAC地址前缀必须大写(如BC2411)
    • 使用制表符(Tab)分隔MAC前缀和厂商名称
    • 示例:BC2411 ProxmoxVE
  3. 容器挂载配置

    • 在docker-compose.yml中添加卷映射:/docker_stacks/watchyourlan/_data/arp-scan:/etc/arp-scan
  4. 应用变更

    • 重启WatchYourLAN容器
    • 清除旧数据库(位于/data/WatchYourLAN)或通过GUI手动删除旧记录

方法二:更新标准数据库

对于需要全面更新数据库的情况,可以使用以下脚本:

#!/bin/bash
wget -O /tmp/oui.csv "http://standards-oui.ieee.org/oui/oui.csv"
wget -O /tmp/cid.csv "http://standards-oui.ieee.org/cid/cid.csv"
wget -O /tmp/iab.csv "http://standards-oui.ieee.org/iab/iab.csv"
wget -O /tmp/mam.csv "http://standards-oui.ieee.org/oui28/mam.csv"
wget -O /tmp/oui36.csv "http://standards-oui.ieee.org/oui36/oui36.csv"

>/usr/share/arp-scan/ieee-oui.txt
for file in iab.csv oui36.csv oui.csv cid.csv mam.csv
do
   echo "#from $file" >>/usr/share/arp-scan/ieee-oui.txt
   cat /tmp/$file | grep -v Registry | awk -F ',' '{print $2 "\t" $3}' >>/usr/share/arp-scan/ieee-oui.txt 
done

注意事项

  1. 自定义条目优先级高于标准数据库
  2. 已识别的设备信息会被缓存,更新后可能需要手动刷新
  3. MAC地址格式必须严格遵守规范(大写、无分隔符)
  4. 对于私有MAC地址段,建议在部署初期就建立完整的自定义映射

最佳实践建议

  1. 对于实验室环境,建议结合两种方法:

    • 使用标准数据库保持通用设备识别
    • 使用自定义映射处理特殊设备
  2. 定期更新标准数据库(特别是生产环境)

  3. 为自定义MAC前缀建立文档记录,便于团队协作

通过以上方法,用户可以灵活地定制WatchYourLAN的厂商识别功能,满足各种特殊场景下的网络管理需求。

登录后查看全文
热门项目推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
262
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
863
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
596
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K