Integration between BILLmanager and IPmanager

From ISPWiki
Jump to: navigation, search

To quickly track and manage your IPs, set policies to allocate IP addresses to services and clients from a single web-interface, you can integrate IPmanager control panel with BILLmanager.

If you want to provide shared hosting, VPS hosting or dedicated servers, you will need to configure IPmanager integration when adding a new processing module.

IPmanager can be installed into the server with BILLmanager, or on a separate server.

IPmanager configuration

After you have installed IPmanager, login to the control panel as administrator. Navigate to the Networks module and create a network, which will be used by the processing module. In other words, you should add the networks from which IP addresses will be allocated to VPS and dedicated servers, or to shared hosting users.

Navigate to the Users module and create a new user for integration. Click Permissions in the Users module to choose IP addresses that will be allocated to this user. When allocating a block of IP addresses to your user, note the followings:

  • public - IP addresses are allocated to VPS/dedicated servers; IP addresses are public.
  • private - IP addresses are allocated to VPS/dedicated servers; IP addresses are private.
  • alias - IP addresses will be allocated to shared hosting users.

Or you can cancel blocks of IP addresses:

Thus, in IPmanager we create a user who will be allocated IP addresses from a certain range. We will need this user to configure integration between IPmanager and BILLmanager.

BILLmanager configuration

Log into BILLmanager --> Integration -> IPmanager and add IPmanager. Enter the URL to IPmanager, the IPmanager user that you have created above, and its password.



Once completed, you will be able to select IPmanager in the processing module configuration form.

In BIllmanager you can configure integration with multiple IPmanager panels, if IP addresses should be allocated from different ranges for different processing modules.

Notes. When you add ISPmanager as a processing module, the billing system will ask you to install and configure IPmanager. If you are not going to allocate IP addresses to virtual hosting users, you can create "false" integration between BILLmanager and IPmanager. In the tariff plan configuration form select the corresponding check box to forbid users to order additional IP addresses, otherwise a "false" IP address will be allocated.


If you integrate BILLmanager + IPmanager, BILLmanager will be the master panel, and will start synchronization of IP addresses in IPmanager and BILLmanager.

Every day at 03:15 a.m. the fix.moduleip cron job starts synchronization of IP addresses.

  • If IP address is already allocated in IPmanager, but is not added in BILLmanager, BILLmanager will send a request to IPmanager to release that IP.
  • If IP address is free in IPmanager, but is assigned to a service in BILLmanager, the billing system will mark it "allocated" in IPmanager.

If you don't want all IP addresses to be synchronized, you can define types of IP addresses during configuration:


where "IP types" are groups of IP addresses created in IPmanager -> "Groups of IP addresses".

PRT records won't be synchronized during IP synchronization. PRT record will be changed in IPmanager only when you call the IP edit function in BILLmanager. In order to synchronize PTR records for all IP addresses in BILLmanager, execute the following request to MySQL:

select concat('/usr/local/mgr5/processing/', pm.module, ' -c editip --ip ', from ip join item ci on = ip.item join item i on = ci.parent join processingmodule pm on = i.processingmodule where i.status in (2,3,5) and ip.status in (1,2,3);

You will get a list of commands that you should execute in the console. .