Hosting Quota Notifications 1.X For WHMCS
Contents
|
About IP Manager For WHMCS
IP Manager For WHMCS allows you to conveniently add and manage IP subnet, and automatically assign IP addresses to your servers, products, addons or configurable options. With our module you will be also able to assign an IP subnet to a specified client, integrate with 3rd party applications like cPanel, export IP subnets or view clear graphs. |
- Admin Area Features:
✔ Create Multiple Configurations For Multiple Scenarios Of IP Addresses Assignment |
✔ Create Multiple Relations In One Configuration For Products, Addons, Configurable Options & Servers |
✔ Add IP Pools: |
✔ CIDR Notation |
✔ IP Addresses Range (IPv4 Only) |
✔ IP Addresses List (IPv4 Only) |
✔ Add IPv6 Block In CIDR Notation |
✔ Export IP Pools To XML And CSV Format |
✔ Import IP Pools From XML And CSV Files |
✔ Synchronize IP Addresses Used By Products In WHMCS With IP Manager |
✔ Exclude Selected IP Addresses From IP Pool During Its Creation |
✔ Integrate With 3rd Party Applications: |
✔ cPanel |
✔ cPanel Extended |
✔ Plesk |
✔ Parallels Cloud Server |
✔ SolusVM Extended VPS |
✔ Proxmox VPS |
✔ Create New Integration Modules |
✔ Assign/Unassign IP Addresses From IP Pool For Specified Client Service |
✔ Omit Dedicated IP Address Fields For Specific Configuration |
✔ Define Custom Field Usage |
✔ Receive Automatic Email Reminder Sent When Specified Usage Percentage Of Any IP Pool Has Been Exceeded |
✔ Define Configuration Of Integration Method (cPanel & cPanel Extended) |
✔ Set Up IP Addresses Cleaner - Ensures That All Assigned IP Addresses Are In Use |
✔ View IP Pool Usage Statistics And Graphs |
✔ View Logs |
- IP Pool Features:
✔ Lock IP Pool To Client |
✔ Filter Data In IP Addresses List |
✔ View IP Addresses Of IP Pool |
✔ Delete Single IP Address From Pool |
✔ Bulk Actions - Assign/Unassign/Delete IP Addresses |
✔ Create Custom Fields For IP Pool Or IP Address |
✔ Generate Free IP Addresses |
- IP Block Features:
✔ View IP Pools Of Block |
✔ View IP Addresses Of IP Pool |
✔ Assign/Unassign/Delete Any IP Pool |
✔ Create Custom Fields For IP Pools |
✔ Generate Free IP Pools |
- Client Area Features:
✔ View Assigned IP Addresses |
✔ Unassign IP Addresses |
✔ Order Additional IP Addresses |
- General Info:
✔ Supports IPv4 and IPv6 |
✔ Supported All Types Of Configurable Options |
✔ IPv6 Pools Relying On IP Addresses Range And Assigned IP Addresses (Free IPv6 Addresses Are Not Stored In Database) |
✔ Block Assignment Of IP Addresses For IPv6 |
✔ Multi-Language Support |
✔ Supports WHMCS Templates Five and Six |
✔ Supports WHMCS V5 and V6 |
Installation
This tutorial will show you how to successfully install and configure IP Manager For WHMCS. We will guide you step by step through the whole installation and configuration process. |
1. Log in to your client area and download IP Manager For WHMCS. |
File:IPM2 1.png |
2. Upload and extract the module into the main WHMCS directory. Files in your WHMCS directory should look like this. |
File:IPM2 2.png |
3. When you install IP Manager for the first time, you have to rename 'license_RENAME.php' file. File is located in 'modules/addons/IPM2_anager2/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
File:IPM2 3.png |
4. In order to configure your license key, you have to edit a previously renamed 'license.php' file. Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area → 'My Products'. |
File:IPM2 4.png |
5. Remove all files from 'tempates_c' folder located in your WHMCS root directory. |
6. Now, you have to activate the module in your WHMCS system. Log in to your WHMCS admin area and go to 'Setup' → 'Addon Modules'. |
7. In the next step you need to permit the access to the module. Click on 'Configure' button, tick desired admin roles and press 'Save Changes'. |
8. The last step is setting chmod 755 to 'storage' folder. Folder is located in 'you_whmcs/modules/addons/IPM2_anager2'. |
File:IPM2 6.1.png |
9. You have just successfully installed IP Manager! You can access your module in 'Addons' → 'IP Manager'. |
Configuration and Management
IP Manager For WHMCS allows you to manage dedicated IP addresses' pools, automatically assign them to clients/products/servers/addons/configurable options. IP Manager supports both IPv4 and IPv6. |
Subnets
To manage any Subnet via IP Manager you have to add it first. To add a new subnet press 'Create New Subnet' and follow further instructions. |
Create Subnet
To begin, add a new IP addresses subnet, press 'Create New Subnet' button. |
To add subnets 'Classless Inter-Domain Routing (CIDR)' can be used. First of all, select IP version: IPv4 or IPv6, type the first IP address from the subnet and a correct bitmask.
Note: The first IP from the subnet should be compatible with CIDR notation. |
You can exclude any number of IP addresses from the pool. To do so, enter them into 'Excluded IP Addresses:' textarea, one IP address or IP range per line. |
If you want to set nameservers and gateway click on 'Toggle Advanced Settings'. |
File:IPM2 10x.png |
Enter nameservers and gateway address into textboxes as shown on the screen below (This step is optional). Afterwards, confirm the creation of an IP pool through pressing 'Add Subnet' button. |
Available IP Subnets and Child-Subnets
Once you have added some IP pools you can preview some details on them and manage the IP addresses.
As you can see on the following screen, you can find here a list of IP Pools in a tree view. Press any of added IP Pools to see its details. |
Subnet
To view IP pool details press on its address as shown on the following screen. |
In 'Subnet ' field, you can find information about current assignment of IP addresses in the pool and manually manage their assignment. |
Bulk Actions
IP Manager For WHMCS supports actions on multiple IP addresses. To issue such action, mark involved IP addresses and choose desired action under subnet details. |
File:IPM2 16.png |
Additionally, it removes IP addresses from external servers.
|
Excluded IP Addresses
List of excluded IP addresses. You can remove some addresses from the list or add new ones. Remember to 'Save Changes' later on. |
Custom Fields
IP Manager allows you to add custom fields per IP pool. To add a new custom field, press 'Create a New Custom Field'. |
Additionally, you can assign a custom field to IP address. Some 3rd party integration submodules may need additional information provided along with IP address (like MAC address) this it the place to add them. |
Afterwards, fill in 'Custom Field Name' and 'Custom Field Value', press 'Save Changes'. |
Assigned Client/Service
If you wish to assign an IP pool to a client or specific service, our module makes it available to you. You can achieve that through using auto-complete textbox to choose the client and/or service.
Again, remember to 'Save Changes'. |
IP Addresses List
The easiest possible way of creating IP addresses within the created pool. Simply press 'Create IP Address' and a new address in the pool will be generated. |
Once the address is generated, you can proceed to its assignment. Use action buttons to do do so. |
Assign Single IP Address
You are now redirected to a page where you can assign this specific IP address to a service by entering a domain or a username, using 3rd party integration module or custom assignment. |
Tree View
To clarify, a comfortable tree vie of your created subnets and child-subnets is available. Let's take a look at it to summarize the divisions. |
As on the screen below |
IP Assignment Mechanism
It is crucial to understand mechanism of automatic IP addresses assignment. In this section we will clarify it to you. 'IP Quantity' field defines the quantity of IP addresses added to the ordered product by triggering a specific relation.
Orders listed below will trigger different relations:
|
Automatic IP Assignment
The main reason, why this module has been created, was to automate IP addresses assignment. Here we will show you how to set up its configuration. In order to start, go to 'Configuration' → 'Create Configuration'. |
Now you have to assign at least one IP pool to configuration. You can do it through 'Assigned Pools' or 'Assigned Blocs' button. Note: It is possible to assign IPs using either pools or blocks! You are not allowed to assign both to one configuration. |
Next, choose an IP pool from a dropdown menu and press 'Add Pool' button. Keep in mind that you can assign multiple pools to a single configuration. |
If you wish you can assign IP using blocks assignment. You can also assign blocks to the configuration. To do so, press Assigned Blocks in the configuration. |
Select block from the list of available and press Assign A Block button. |
File:IPM2 29.png |
Added block will appear on the list of below. |
File:IPM2 30.png |
Keep in mind that you can add more than one block to a single configuration. |
Advanced Configuration
Let's say, that you want to set multiple IP assignment to specific product, it is available with our module! Here we will show you how to set up multiple IP addresses assignment to configurable option 'Extra IP Addresses'. |
Afterwards, mark checkboxes next to configurable options you want to assign IP addresses to. Enter quantity of IP addresses which will be assigned to each configurable option and press 'Save Changes'. |
Usage Graph
In each configuration you can find a graph, which shows the statistics of IP addresses assignment. |
File:IPM2 33.png |
3rd Party Integration
In this tab you can set up 3rd party integration which allows you to manage IP through our module in your WHMCS and synchronize changes on 3rd party servers. Note 1: Some of these integration submodules require free IP pools (cPanel) or IP addresses (Plesk) on servers to be set up. |
Enabling 3rd Party Integration
Activation of all integration modules looks similar, there is only a difference in cPanel and cPanel Extended integration submodules. Start by pressing 'Activate' button next to a module you want to activate. |
Press 'Configure' button and assign configurations to it. Confirm through clicking 'Save Changes' . |
cPanel and cPanel Extended additionally allow you to choose the method of the integration. 1. Creates a DNS zone for each IP address assigned to a product. |
As you can see on the following screen, you can easily check the quantity of configurations assigned to each 3rd party integration. |
Integration With Proxmox VPS/Cloud For WHMCS
Integration with Proxmox VPS For WHMCS & Proxmox Cloud For WHMCS are the only integrations which are set up on both IP Manager For WHMCS and integrated module sides. Due to that, setting up the integration consists of 3 steps: |
Integration With SolusVM Extended VPS For WHMCS
Integration with SolusVM Extended VPS For WHMCS is tricky. IP Manager For WHMCS cannot inject the first IP address to VPS, due to the way SolusVM API works. |
Test Integration Module
This module logs information about IP processing for 'Autorelease' type products. Your order should look similar to the one on the screen below. |
File:IPM2 38.png |
Creation of Integration Submodule
You can create your own integration, all you need is knowledge of PHP programming language. You can do it through using 'Autorelease' submodule file. |
File:IPM2 39.png |
2. Rename copy to your new submodule name. Note: File name has to end with 'Integration', for example 'NewSubmoduleIntegration.php'. |
File:IPM2 40.png |
3. Edit the file, start by entering basic settings.
1. Class name should be the same as the file name. 2. Submodule name visible in IP Manager. 3. Submodule description displayed in IP Manager. 4. Place here an integrating module name ( the best way is to copy a folder name of the module ). |
File:IPM2 41.png |
4. Now, it is time to implement integration part, you will need integrated module documentation to do that.
1. Configuration of 3rd party integration submodule. 2. Code assigning IP address to module product goes here. 3. You can add a code to unassign IP address here. |
4. In order to view a submodule you have just created, log in to your WHMCS and go to 'Addons' → 'IP Manager' → '3rd Party Integration'. |
Export
You can export your IP pools to CSV and XML files. To export, go to 'Export' tab, choose IP pool to export and file format. |
Import
In 'Import' tab you can find tools to synchronize IP addresses from your WHMCS as well as import them from a file. Synchronization
There are three available cron commands: |
IP Logs
'Logs' page stores the history of actions ordered on each IP address. |
Settings
Along with great power comes great responsibility. IP Manager For WHMCS allows you to define its behavior, therefore make sure you configure settings that suit you needs. |
Show Settings
Module Settings
Below, you can find description of each option.
|
IP Addresses Cleaner
IP Addresses Cleaner allows you to restore/remove IP addresses form WHMCS/IP Manager/both depending on chosen settings.
Important: After making any changes in those settings, press 'Update Settings'. |
IP Addresses Cleaner allows you to automatically find and fix broken IP addresses assignment. For example, when you manually remove a product with IP addresses assigned or remove an IP pool. |
IP Reservation
You can automate the process of IP assignment by adding some rules that will be then executed while assigning IP addresses from a subnet to clients or services. 'IP Reservation' rules can be configured under 'Settings' section. |
Use the rules consciously because they will be then taken into consideration while assigning any IP from any subnet in your IP manager. Like it is stated in the guide visible on the screen you must stick to some standards while personalizing your assignment process. |
New Rules
To add a new rule, type in the required value in the 'Rule' field and describe it in the text box nearby. |
To illustrate: Enter n in the 'Rule' textarea. Then the first IP address from a subnet will be always excluded. It will be reserved and it will not be assigned to any client or service. |
You can add more that one rule. If you do it thoughtfully, you will have much less work later on while creating new subnets because customized rules will substitute the need to fill out the 'Excluded IP Addresses' area. |
Rules In Practice
. |
Default Custom Fields
New Custom Fields
Integration Code
Integration described below is not obligatory. Module allows your customers to view IP addresses assigned to their product and order additional ones. |
Integration in WHMCS V6
Correctly placed code is presented on the following screen. |
In the client area it should look like on the screen below. |
Integration in WHMCS V5
Correctly placed code is presented on the following screen. |
In the client area it should look like on the screen below. |
To allow your customers to buy a new IP address you need to set up a product addon for product and assign the addon to a configuration in IP Manager. |
The above described integration works for all products without exception. However, in case you wish to restrict the integration to limited number of products, please insert the below codes instead of the one suggested in the addon.
{if $moduleclientarea} <div class="moduleoutput">;{$moduleclientarea|replace:'modulebutton':'btn'} {if $pid == 26 || $module == 'proxmoxCloud' || $module == 'proxmoxVPS'} {$IPM2_anager_integration} {/if} </div> {/if}
|
Once such code is inserted in the template, IP Manager will be displayed for product with ID that equals 26 or if the product is based on 'proxmoxCloud/proxmoxVPS' modules. Extend the IP Manager integration according to your needs. The above code is just an example which can undergo modifications. |
Client Area
Your clients can view and manage their IP addresses and IP pools thanks to installed IP Manager For WHMCS module. To remove any IP address or pool from a product, simply press 'Unassign' button. |
Your client can also order a new IP address. Press 'Order Additional IP Addresses' as shown below. |
File:IPM2 55.png |
As soon as the addon is active, new IP address is granted. |
Add IP via Addon
Setting up an addon allows your client to add an IP address to their product using integration. Go to 'Setup' → 'Products/Services' → 'Product Addons' and press 'Add New Addon' . |
File:IPM2 57.png |
Afterwards, enter addon name, addon description and select applicable products. Set pricing for addon by choosing 'Billing Cycle' and typing price. |
File:IPM2 58.png |
Now, go to 'Addons' → 'IP Manager' and use configuration created before or create a new one. Remember to add a previously created addon as a configuration relation. |
File:IPM2 59.png |
Tick checkbox next to addon and enter the quantity of IP addresses to be added. Afterwards, click 'Save Changes' button. |
File:IPM2 60.png |
If you enabled integration for the client area, your client should be able to order new IP addresses. |
Management of Custom Hooks
Our module allows you to use custom hooks. All you have to do is create some functions using PHP programming language. Here you can see possible hooks: before_ip_assign_hook($ip, $serviceid, $relation, $configid) after_ip_assign_hook($ip, $serviceid, $relation, $configid) before_ip_integrating_hook($ip, $service, $server) after_ip_integrating_hook($ip, $service, $server) before_ip_disintegrating_hook($ip, $service, $server) after_ip_disintegrating_hook($ip, $service, $server) |
To find details about hooks read 'custom_hooks.php' file. You can find there all hooks, information about their time of run, returned values and parameters. Logger::factory()->log('Custom hook was triggered'); It should look like on the screen below: |
How To Update
In order to upgrade your module, follow Modules Update article. |
Tips
1. If your client orders a product that is combined with two configurations (e.g. by product type and configurable option), IP Manager will add IP addresses from both configurations. |
2. If you have used IPv6 block before the update to IP Manager 2.2.0, all of them will be migrated to corresponding subnets. Note that migration is done automatically for you. |
Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |
2. If you see something like this when moving to 'Addon' → 'IP Manager', remove content of 'template_c' folder. |
3. If you export file and it is empty, check your 'Storage' folder chmod, it should be set to 755. Folder is located in 'your_whmcs/modules/addons/IPM2_anager2' . If you still have that problem, set chmod 777. |