Configuring RWhois for IP address manager
Overview
Recent IPAM plugin update introduces ability to run your own RWhois server compatible with RWhois protocol v1.0 / v1.5.
RWhois server should work on port 4321 and this document explains how to set this service on your server with IPAM plugin
Configuring IPAM
After IPAM update, new tab should be available in your IPAM module - RWhois, as can be seen below:
Using this page, configure following for your RWhois server:
Server hostname - it will most likely your HostBill server (if rwhois service will run on same machine as HostBill). It will be displayed on rwhois "greeting" response
Default POC contact details:
If customer assigned to IP/network does not have their own contact for POC contact, default one will be used, you can set it here:Name
Email
Phone
Default Tech contact details:
If customer assigned to IP/network does not have their own contact for Tech contact, default one will be used, you can set it here:Name
Email
Phone
Network ID prefix
When sending response about network:ID, IPAM will use following template: {PREFIX}{ID}.{NETWORK}, where:{PREFIX} can be configured here
{ID} is internal network ID in HostBill database
{NETWORK} is network/IP address
Tech contact prefix
When sending response about network:Tech-Contact, IPAM will use following template: {PREFIX}{ID}.{NETWORK}, where:{PREFIX} can be configured here
{ID} is internal network ID in HostBill database
{NETWORK} is network/IP address
Configuring HostBill
Your clients may want to be a POC and/or Tech contacts for their networks. You can add new checkbox registration field to HostBill (can be admin-only) that will allow to point contact/main profile as a source of details for Tech/POC contacts.
To add said registration field for marking RWhois Tech contact, proceed to Clients → Registration fields in your HostBill
Click Add new field
Enter field name, set type to checkbox
Under Advanced tab, set field variable to rwhoistech, here you can also decide if this field is admin-only or if customer can control this field
Repeat steps above for RWhois POC contact, using rwhoispoc variable in step 4
Customer/profile details with checkboxes above enabled that are assigned to network will be used in contact: rwhois response part.
Configuring server
Please note that description below is for servers where HostBill is located under /home/hostbill/public_html/ directory, adjust details below if you use different location for your HostBill install.
Instructions/commands below are for CentOS (preferred OS for HostBill enterprise), if you use different OS/version you may need to adjust commands to suit it.
Ensure /includes/modules/Other/ipam/rwhois.php is executable:
chmod a+x /home/hostbill/public_html/includes/modules/Other/ipam/rwhois.php
Add file: /etc/systemd/system/rwhois@.service with following content:
[Unit] Description=RWhois Service After=network.target [Service] ExecStart=/usr/bin/php /home/hostbill/public_html/includes/modules/Other/ipam/rwhois.php User=hostbill Group=hostbill Restart=always StandardInput=socket
Add file: /etc/systemd/system/rwhois.socket with following content:
[Unit] Description=Socket for RWhois Service [Socket] ListenStream=4321 Accept=yes [Install] WantedBy=sockets.target
Add permission to files:
chmod a+x /etc/systemd/system/rwhois.socket chmod a+x /etc/systemd/system/rwhois@.service
Run the following commands to reload systemd, enable and start the socket:
systemctl daemon-reload systemctl enable rwhois.socket systemctl start rwhois.socket
Testing RWhois IPAM
Assign IP address in your IPAM to a customer
Issue whois command in linux shell.
Replace rwhois.hostbillapp.com with your actual HostBill hostname and IP address with one assigned in the step above:whois -h rwhois.hostbillapp.com -p4321 192.168.0.2
Your RWhois server should reply with something simmilar to:
%rwhois V-1.0,V-1.5:002090:00 rwhois.hostbillapp.com (HostBill RWhois Server V-1.0.0) autharea=192.168.0.0/28 xautharea=192.168.0.0/28 network:Class-Name:network network:Auth-Area:192.168.0.0/28 network:ID:NET-3.192.168.0.2 network:Network-Name: network:IP-Network:192.168.0.2 network:IP-Network-Block:192.168.0.2 network:Org-Name:Christopher Nolun network:Street-Address:Another network:City:Another network:State:Alabama network:Postal-Code:Another network:Country-Code:US network:Tech-Contact:TECH-3.192.168.0.2 network:Created:20171108110858000 network:Updated:20171108111756000 network:Updated-By:noc@hostbillapp.com contact:POC-Name:Network Administrator contact:POC-Email:noc@hostbillapp.com contact:POC-Phone: contact:Tech-Name:Christopher Nolun contact:Tech-Email:test@test.com contact:Tech-Phone:+1-123-12312311 %ok