ipam-docs/docs/index.md

2.5 KiB

IPAM

IPAM is a cli based IP Address Management built with Go using Cobra and Viper with optional PowerDNS API integration.

Download IPAM on Codeberg

Features

ipam is a cli based IPAM. It supports:

  • Adding, listing, viewing and deleting subnets
  • Adding, viewing and deleting single IP addresses with FQDNs
  • automatic addition and deletion of forward and reverse records
  • import and export configuration

But why?

In my career as a Network Engineer I worked at a company that developed their own internal CMDB that was set up as a cli application. I really liked the ease of use and the way you could quickly do stuff.

So I sat down and started my first Go project and started developing this ipam.

Usage

ipam is built as a cli app. Once you installed ipam and added it to your $PATH, you can

  • add prefixes with ipam subnet add 192.168.0.0/24 fancy-subnet-name
  • add IPs to those prefixes with ipam ip add 192.168.0.1 fqdn.example.com
  • add the next free IP in a prefix with ipam ip add 192.168.0.0/24 fqdn2.example.com
  • much more (see ipam (command) --help for examples)

If PowerDNS integration is enabled in $HOME/.ipam/ipam.yml, forward and reverse DNS records are automatically managed when you add or delete IP addresses with hostnames.

CLI Example

Contributing

The main development is happening at https://codeberg.org/lauralani/ipam.

If you find a bug or would like a feature to get added you can create a new issue or collaborate by forking the repository and create a new pull request.

If you have any questions please also feel free to create a new Issue!

License

Copyright 2023 Laura Kalb <dev (at) lauka.net>

This program is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.