Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/debops/phpipam-scripts
A set of scripts designed to access phpIPAM database
https://github.com/debops/phpipam-scripts
Last synced: 3 days ago
JSON representation
A set of scripts designed to access phpIPAM database
- Host: GitHub
- URL: https://github.com/debops/phpipam-scripts
- Owner: debops
- License: gpl-3.0
- Created: 2014-03-28T09:58:44.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2023-11-23T12:30:20.000Z (12 months ago)
- Last Synced: 2024-02-14T21:26:52.430Z (9 months ago)
- Language: Python
- Size: 36.1 KB
- Stars: 31
- Watchers: 6
- Forks: 17
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## phpipam-scripts
This is a set of scripts designed to access [phpIPAM](http://phpipam.net/)
database from a DHCP/DNS server.### phpipam-hosts
`phpipam-hosts` will let you generate customized host lists which can be included
in ISC DHCP Server or dnsmasq configuration. You can also create `/etc/hosts`
and `/etc/ethers` files.To include a generated host list in any section of the ISC DHCP Server
configuration, you can add in the dhcpd configuration file:include "/path/to/host-list";
To see available configuration options, run `phpipam-hosts -h`
#### Features
- generate multiple host lists from one database and automatically restart
DHCP server if any list changed
- filter hosts by phpIPAM sections, subnets and host state (active, reserved,
offline, dhcp)
- check MAC address validity and automatically comment out invalid hosts in
the finished configuration file
- optionally generate host list with only invalid hosts for easier debugging#### Requirements
- Python
- `python-mysqldb`
- installed and configured [phpIPAM](http://phpipam.net/) (can be installed on
a different host than `phpipam-hosts`)#### Installation
Install `phpipam-hosts` in a directory in your `$PATH`, for example
`/usr/local/sbin`. Save provided example configuration file in
`/etc/dhcp/phpipam.conf` and modify default database configuration to
reflect your environment.`phpipam-hosts` is designed to run periodically from `cron`, access phpIPAM
database and generate specified host lists. You can either add entries with
specified arguments in cron directly (run `phpipam-hosts --help` to see list
of available options) or write your configuration in main configuration file
(`/etc/dhcp/phpipam.conf` by default) and access it using `--group`
option.Example `cron` entry which generates a single host list and restarts `dhcpd`
daemon if host list is changed:*/5 * * * * root /usr/local/sbin/phpipam-hosts -o /etc/dhcp/dhcpd-hosts.conf -x
You can use an example `phpipam-hosts-wrapper` script to generate multiple host
files and restart dhcpd if any one of them changes. To do that, you should
configure different host files with the same trigger file.j### License and copyright
License: GPLv3
Copyright (C) 2014 Maciej Delmanwski
Homepage: [https://github.com/debops/phpipam-scripts/](https://github.com/debops/phpipam-scripts/)
phpIPAM homepage: [http://phpipam.net/](http://phpipam.net/)