夜雨聆风学习资料网

ARTICLE · 1216442

还在用 Excel 管 IP?这个开源神器该上岗了:phpIPAM

还在用 Excel 管 IP?这个开源神器该上岗了:phpIPAM

运维最怕的一句话不是“网络断了”,而是:“这个 IP 到底谁在用?目前IP空闲率多少?” 今天推荐一款博主一直使用的开源IP地址管理系统:phpIPAM —— 轻量、免费、能打的开源 IP 地址管理系统。

了解phpIPAM

phpIPAM是一个免费的开源 IP 地址管理工具,支持 IPv4/IPv6、VLAN 管理、REST API 和 Docker 部署。不仅如此,也可以把phpIPAM当作轻量的资产管理系统,这得益于它开放的代码、以及支持自定义字段的设计。

phpIPAM 官网:https://phpipam.net

Github仓库:https://github.com/phpipam

功能支持

模块分类
功能项
IP 管理
IPv4 / IPv6 地址管理 · 分区 / 子网管理 · 子网自动空闲空间显示 · 可视化子网显示 · IP 状态检查 · 自动扫描
网络结构
VLAN 管理 · VRF 管理 · RIPE 子网导入 · 子网站点层级展示
设备 & 资产
设备 / 设备类型管理 · 机架管理 · 地点模块 · 自定义字段
集成 & 自动化
REST API · PowerDNS 集成 · NAT 支持 · IP 请求模块 · 邮件通知
权限 & 审计
AD / LDAP / RADIUS 认证 · 分 Section / 子网权限 · 变更日志
导入导出 & 工具
XLS / CSV 子网导入 · IPv4/IPv6 计算器 · IP 数据库搜索 · 多语言支持

开源跨平台

phpIPAM是基于PHP语言开发的IP地址管理系统,支持跨平台,也就是说你可以部署在Windows系统中,也可以部署在Linux系统中,更可以直接用Docker直接跑起来。

部署phpIPAM

系统依赖

  • Web服务:nginx 或 Apache
  • 数据库:Mysql(5.1+) 或 Mariadb
  • PHP
    • pdo, pdo_mysql: 数据库操作模块
    • session:增加持久会话支持
    • sockets:sockets支持
    • openssl:openSSL 的支持
    • gmp:对dev-libs/gmp(GNU MP库)->的支持以计算IPv6网络
    • ldap:LDAP支持(轻量级目录访问协议——也适用于AD)
    • crypt:对密码加密的支持
    • SimpleXML:SimpleXML(可选,适用于 RIPE 查询,若需要则支持 API)
    • json: JSON 体的支持
    • gettext:支持翻译
    • filter:过滤支持
    • pcntl:对进程创建功能的支持(可选,扫描必不可少)
    • cli:可选,扫描和状态检查必不可少
    • mbstring:mbstring 支持
    • PHP(5.3+),尽量安装最新版
    • PHP模块:
  • php PEAR PHP 扩展和应用代码库,通常大多数PHP模块都是内置在默认PHP安装中,如果没有需要手动处理。

安装

  1. 下载最新的phpIPAM代码包上传至你的Web服务器上,并配置对应的Web服务配置,指向你的phpIPAM目录。
  2. 访问 http://你的IP:端口/install ,首次访问会自动跳转安装界面

把phpIPAM当轻量资产系统

添加自定义字段

  • 设备类型
  • 设备型号
  • 设备序列号
  • 维保到期
  • ... 等等

利用API更新字段

  • 更新MAC:需配合自定义脚本,从网关设备中获取ARP信息
  • 更新设备名称、序列号、型号:如摄像头,这个需要利用到厂商开放接口,比如海康的ISAPI
  • 统计在线率:比如统计摄像头类型的设备在线率等
  • ... 等等,可以根据需求进行设计

总结

  • phpIPAM 是一个开源的 Web 化 IP 地址管理工具(IPAM),它主要干一件事:把“IP 地址、网段、VLAN、VRF、设备、用途、负责人”管起来。
  • phpIPAM不是万能 CMDB,但比 Excel 强十倍。
  • Docker部署的话,不建议一键拉去所有镜像,只需要一个phpipam-web 即可,数据库不建议使用docker。

相关学习资料