Configuration Example, Management
IPplan – IP address management
A lot of customers have different methods for their IP address management. Most of them use some kind of static documentation, like an Excel sheet. In the past I implemented IPplan multiple times. I like this tool, because it dynamically scans multiple IP subnets, using ICMP and/or Nmap. Another advantage of IPplan is its ability to perform hostname lookups.
Often I install IPplan on an active management system, like CactiEZ. The following howto shows the steps to implement IPplan under CactiEZ.
The first step is downloading the appropriate tar.gz file and extract his file in /var/www/html, like shown below.
tar zxvf ipplan-4.92a.tar.gz
Next I change the ownership and permissions of the ipplan directory.
chown –R apache:apache ipplan
chmod –R 750 ipplan
After changing the permissions I create the necessary database for ipplan.
mysql –u root –p
mysql> create database ipplan;
This creates a database called ipplan. Now we need to create a user with the appropriate permissions for the ipplan database.
mysql> GRANT SELECT,INSERT,UPDATE,DELETE on ipplan.* \
-> TO ipplan@localhost IDENTIFIED by ‘password’;
You can change the value ‘password’ to a password you wish. Change the credentials, configured in the previous step, in the file called config.php.
Open a web browser and point it to the installation script in the admin directory (http://ip-address/ipplan/admin/install.php). You will be prompted to create the database schema. The user created above does not have enough permissions to create tables so you will need to either copy the statements into the database, or temporarily change the database password in the config.php file to a database user that has enough rights to do this. You could be asked to enter user credentials for the website. This user credentials can be found in config.php.
I always load the statements by copying the display output from the install.php script into a file (ipplan.sql) and then executing the file using mysql statements.
mysql –u root –p ipplan < ipplan.sql
The basic installation is now complete. We will now go ahead and create a private menu. Open the file config.php and find the section START OF MENU EXTENSION. Change this section into the following to create a private menu.
// private menu extensions to the ipplan menu system
define(“MENU_PRIV”, TRUE);
define(“MENU_EXTENSION”,
“.|4IP
..|Show used area’s|http://<ip address>/ipplan/user/modifyarearange.php?cust=1
..|Show used subnets|http://<ip address>/ipplan/user/treeview.php
..|Create new subnets|http://<ip address>/ipplan/user/createsubnetform.php
..|Edit subnets|http://<ip address>/ipplan/user/modifybaseform.php
“
);
The IPplan poller needs to be added to the crontab configuration. The IPplan poller uses a custom file to know which IP addresses the scan. I normally create a .txt file. The following output show the syntax for the .txt file.
172.22.2.0/24
10.10.0.0/22
I configure the poller to run every day at 9, 12 and 15. You can edit the crontab with the command:
crontab –e
# Crontab for IPplan poller
0 9,12,15 * * * php /var/www/html/ipplan/contrib/ipplan-poller.php -hostnames -c 1 -f /var/www/html/ipplan/4IP-Networks.txt
There is one last step to take. When you manually execute the command above, you will receive the following error message:
Cannot find NMAP!
The last step is to install NMAP and configure its location in config.php. CactiEZ uses yum to install packages. So I use the following command to install nmap.
yum install nmap
Nmap can be found in the directory /usr/bin/. Look for the nmap section in config.php and change the nmap configuration to the following.
//define(“NMAP”, ”);
define(“NMAP”, ‘/usr/bin/nmap’);
The rest of the configuration needs to be done through the web interface. My advise is to configure some user groups and users, before adding subnets to IPplan. You can also change more settings in config.php to match it to your own environment, like the e-mailserver and helpdesk e-mail address.
Sometimes you receive Fatal error: require_once(): Failed opening required ‘../adodb/adodb.inc.php’ message. I resolved this issue by changing line 42 & 43 in ipplan-poller.php from:
require_once(“../adodb/adodb.inc.php”);
require_once(“./config.php”);
to
require_once(“/var/www/html/ipplan/adodb/adodb.inc.php”);
require_once(“/var/www/html/ipplan/config.php”);
This should solve the problem.
René Jorissen
Latest posts by René Jorissen (see all)
- MacOS Big Sur and SSLKEYFILELOG - November 23, 2021
- ClearPass, Azure AD, SSO and Object ID - August 12, 2021
- ClearPass – custom MPSK - July 20, 2021
Nice explanation of IPPlan.
We’re testing with it at the moment and it seems a really great and timesaving tool.
I also created a simple vbscript which let you easily transform an export of IPPlan to an import file for the poller. You can find the script on my site.
Just landed on this post via Google research. I love it. This situation switch my perception and I am getting the RSS feeds. Cheers.
Hi, your installation tutorial was very helpful for me. I Just run into a problem with the automatic scanning configured in crontab. Every time it runs displays a message for all networks configured:
No IPplan subnet found for address 10.11.212.1
No IPplan subnet found for address 10.11.212.5
No IPplan subnet found for address 10.11.212.8
No IPplan subnet found for address 10.11.212.9
No IPplan subnet found for address 10.11.212.51
………………………………………..
the crontab configuration is exactly as yours:
0 9,12,15 * * * php /var/www/html/ipplan/contrib/ipplan-poller.php -hostnames -c 1 -f /var/www/html/ipplan/networks.txt
Is there any workaround for this?
Did you add the subnet 10.11.212.0/24 to the configuration of IPPlan through the web interface?
I started getting the “No IPplan subnet found for address” error and realized that I only get it when I search on the special “ALL” customer as controlled by the -c option.