phpIPAM 的全面 Terraform 自动化、安装与使用
随着网络规模的增长,手动整理、跟踪和管理 IP 地址会变得非常困难。对于小型组织来说,使用电子表格尚且可行,但在大型基础设施中,跟踪子网、VLAN 和网络设备会变得十分复杂。 phpIPAM 是一款 IP 地址管理解决方案,可以将这些信息集中起来,使网络管理更加有序。本文将说明它的功能、安装和使用方法,以及如何更新该平台。同时还将介绍 Terraform 如何自动化 IPAM 任务,并给出几个替代方案。
在本文中:
第 1 部分:什么是 phpIPAM?
phpIPAM 是一个免费的、基于 Web 的 IP 地址管理(IPAM)项目。它通过一个集中式界面来跟踪、管理和组织网络基础设施。管理员无需再依赖电子表格,而是可以通过该服务管理 IP 地址、子网、VLAN 以及已连接的设备。
特征:
- 监控 IPv4 和 IPv6 的分配情况、子网范围以及各个 IP 的状态。
- 自动 Ping 网络范围以检查 IP 状态、发现活动设备,并核对文档记录。
- 使用 VLAN 和 VRF 管理工具来组织网络分段。
- 提供 IPv4/IPv6 计算器、PowerDNS 集成、NAT 支持以及 REST API。
- 通过导入和导出 XLS、CSV 文件实现批量数据管理。
重要说明:该服务的功能相当于一个 IP 地址追踪器. 但与基础的 IP 追踪器不同,它在跟踪 IP 地址的同时,也对整个网络基础设施进行组织管理。
第 2 部分:如何安装 phpIPAM:完整 phpIPAM 教程
方法一:在 Linux(Ubuntu/Debian/CentOS)上的标准安装
此方法介绍如何在 Ubuntu Server 26.04 LTS 上使用 nginx 作为 Web 服务器来安装 phpIPAM。本指南基于一个无任何预装软件的全新 Ubuntu Server 26.04 LTS 服务器。
先安装所有所需的应用和服务,然后配置 php-fpm FastCGI 进程管理器。
配置 nginx Web 服务器和 MySQL/MariaDB 数据库,并加固 MariaDB 服务器安全。
在满足所有先决条件后,安装代码库并创建初始配置,然后安装数据库。
方法二:phpIPAM 的 Docker 部署
在通过 Docker 容器安装 phpIPAM 时,部署需要一个带 PHP 的 Web 服务器。该服务还需要计划任务来扫描网络并检查设备状态。最重要的是,需要一个用于存储全部信息的数据库(MariaDB)。
创建一个用于存放配置文件的文件夹,并进入该文件夹:
使用文本编辑器创建一个名为 docker-compose.yml 的文件,并写入以下内容:
跑过 docker compose up -d 命令以下载镜像并在后台模式启动容器。
打开浏览器,输入服务器的 IP 地址,并点击 全新 phpIPAM 安装(New phpIPAM installation).
选择 自动数据库安装(Automatic database installation) 并输入数据库凭据。
创建数据库后,设置新的管理员(Admin)密码和站点标题。
第 3 部分:如何使用 phpIPAM:分步指南
安装完成后,下一步就是学习如何使用 phpIPAM。你可以通过 Docker 或 Web 服务器来部署该服务。然后,运行自动数据库安装,并使用管理员账户登录。
进入 Administration(管理)并添加一个新的 Section(区域) 用于对网络进行分类。
点击 点击 Add Subnet(添加子网)创建一个 Master Subnet(主子网) 以定义主网络范围。 点击 Add New(添加新建).
点击 Nested Subnets(嵌套子网) 将网络划分为不同用途。 分配 VLAN 并配置名称服务器,以保持 IP 分配井然有序。
更新服务需要三个重要步骤:备份数据、更新应用程序代码以及更新数据库。建议在开始前备份 SQL 数据库并保存一份现有 config.php 文件的安全副本。以下是更新 phpIPAM 的快速步骤:
第 4 部分:如何更新 phpIPAM
在此之前,先备份 SQL 数据库,并为现有的 config.php 文件制作一份安全副本。
使用 git branch 检查当前分支,或选择:
Check your current branch using git branch or choose:
- 在 master 分支上使用 Git: 拉取新代码并更新所有子模块。
- 在指定分支上使用 Git: 切换到你偏好的分支并更新所有子模块。
- 手动升级发行版本: 从 GitHub Releases 下载最新的发行版归档文件。
请选择以下选项之一来更新服务的数据库:
- 自动数据库升级: 打开网页浏览器并按照升级流程操作。
- 手动导入查询: 通过运行以下命令查看差异升级查询 php functions/upgrade_queries.php 1.5.
第 5 部分:phpIPAM 与 Terraform:基础设施自动化
社区版 phpIPAM Terraform Provider 使你能够将 IP 地址分配自动化,并以代码方式管理网络资源。通过将 API 集成到你的自动化部署脚本中,你可以自动分配 IP、更新使用状态并记录主机名。
第 6 部分:phpIPAM 替代方案
1. NetBox
NetBox 是一款基础设施资源建模工具,结合了 IPAM 和 DCIM 功能。你可以 更改 IP 地址 通过查找一个已有的 IP 地址记录,修改其属性并保存更改来完成操作。该服务还可以跟踪 IPv4/IPv6 前缀、单个 IP 地址、VLAN 和 VRF。
2. Infoblox
Infoblox 提供集成 DNS、DHCP 和 IP 地址管理的企业级网络服务。它是 phpIPAM 的一种替代方案,可自动扫描物理和虚拟网络,在无需人工输入的情况下获取 MAC 地址、交换机端口名称以及虚拟机租户 ID。
3. SolarWinds IP Address Manager
SolarWinds IP Address Manager 提供 IP 跟踪、子网发现、地址冲突检测以及 DNS/DHCP 管理等功能。它可以将受支持网络服务中的信息汇总到一个集中的界面中。
4. GestioIP
GestioIP 是一款基于 Web 的 IP 地址管理应用,用于组织和管理网络地址空间。它消除了手工维护电子表格的需求,用自动化的网络发现和状态跟踪来取而代之。它还可以帮助你规划子网并管理 VLAN 分配。
额外内容:对网络管理员有用的工具
网络管理员需要的不仅仅是像 phpIPAM 这样的 IP 地址管理平台。根据不同任务,其他工具还可以帮助进行网络测试、故障排除、设备管理以及基于位置的测试。
imyPass iLocaGo 是一款位置修改工具,可以更改 GPS 位置。该软件不会管理 IP 地址、子网或网络资源。相反,当你测试依赖设备地理位置的应用或服务时,可以将它作为辅助工具使用。借助它,在检查基于位置的应用时,你可以模拟不同位置。它可以在地图应用、LBS 游戏、交友应用和社交媒体应用中伪造 GPS 位置。iLocaGo 还可以使用一站模式、多站模式和摇杆模式在地点间规划路线或模拟移动。
结论
phpIPAM 有助于网络管理员简化 IP 地址管理。它提供一种集中方式来组织 IP 地址、子网、VLAN、设备和网络资源。除了 IP 地址管理之外,网络管理员还可能需要用于基于位置测试和设备管理的工具。 imyPass iLocaGo 可以通过更改或模拟设备的 GPS 位置,来补充网络管理工具集。
热门解决方案
-
GPS定位
-
解锁iOS
-
iOS 技巧
-
解锁 Android