/ipam-web

Primary LanguageJavaScriptMIT LicenseMIT

IPAM Web

About

This project provides readonly access to IPAM (IP address management) data, based on the static site generator Jekyll and JavaScript.

For IPAM Web, the primary design goal was to provide a web UI for accessing Microsoft IPAM, which is available via the server management console, only. Keeping that in mind, the design of this project mostly fits the needs for that specific IPAM. However, any other IPAM is supported, as long as its data can be transformed into the defined API model of this project.

Usage

  1. Build the contents of this project. If a GitLab instance is available, this project simply can be forked into the local instance and assets will be generated by the CI automatically. For manual builds, see the configuration of GitLab CI for instructions.

    NOTE: If IPAM Web will reside in a subdirectory (e.g. for GitLab Pages),path needs to be set accordingly. For GitLab CI, the IPAM_BASE_URL variable can be set.

  2. Generate IPAM data according to the API specifications. For some IPAM systems scripts can be found in the bin folder. See their contents for usage information.

  3. Place the full contents in a designated webspace.

API

Data displayed by IPAM Web is stored in plain JSON files. Therefore, these can be used by other systems like any other API. These files are:

File Description
/api/[v4|v6]/block.json IP blocks
/api/[v4|v6]/subnet.json IP subnets
/api/[v4|v6]/ranges.json IP ranges
/api/[v4|v6]/ip.json IP addresses
/api/update Timestamp of last API update (ISO-8601)

The specification of each data file can be found in the related API description file.

License

This project is licensed under the MIT License. For copyright details see the license file.