Project

General

Profile

Feature #244

DHCP collector for Infoblox

Added by Vladimir Bravov almost 10 years ago. Updated over 9 years ago.

Status:
New
Priority:
High
Start date:
01/18/2010
Due date:
03/31/2010
% Done:

80%

Estimated time:
80.00 h
Spent time:
Duration: 73

Description

DHCP-collector functionality.
The source data for DHCP collector is the infoblox syslog stream ,which is coming from relay host to the directory /home/nimi/dhcp_syslog on nimisrv system via pipe (FIFO) .
The DHCP collector code design to perform the following :
1 Select from syslog pipe-stream the active DHCP leases.
1.1 The information about DHCP leases should be available in real time
( syslog is one of the option which will be prefer )
1.2 DHCP source should (must) have 4 critical parameters :
- MAC address;
- IP given address;
- start time for this lease;
- end time of this lease.

2 create new data in NIMI DB for each given DHCP lease with Start time , User name , Mac address, Given IP address. Then store in NIMI DB like as an active lease.
3 Select from pipe-stream closed lease time and define : End time of lease, Duration ,Disconnection reason. Then updated active lease in NIMI DB .
4 Check regarding the consistence of old and active leases

DHCP_collect.graffle (159 KB) DHCP_collect.graffle Vladimir Bravov, 03/01/2010 04:55 PM
DHCP_collect.jpg (49.3 KB) DHCP_collect.jpg Vladimir Bravov, 03/01/2010 05:00 PM

History

#1 Updated by Vladimir Bravov over 9 years ago

  • % Done changed from 10 to 80
  • Estimated time changed from 70.00 h to 80.00 h

DHCP-collector functionality.
For version 2 :
The source data for DHCP collector is the infoblox syslog stream ,
which is coming from relay host to snmpbridge system.
DHCP leases are selected from the messages file in directory /var/log.
Version 2 of DHCP collector was designed to use Events stream mechanism.
The first part of DHCP collector( SendDHCPevent.py) :
The SendDHCPevent.py checks the /var/log/messages file and sends dhcp events to Event Dispatcher
under DHCP subscription (my-id). Dispatcher should be defined by host and port .
Location of this script is the snmpbridge system
or any other system which collets dhcp leases from infoblox.

The code design to perform the following :
1 Select from /var/log/messages the active DHCP leases.
2 DHCP lease have 3 critical parameters :
- MAC address;
- IP address,which was assigned Infoblox;
- valid duration time for particular lease;
3 Start time for this lease is defined by time stamp in the selected record;
4 End time of this lease is defined by calculating on base :start time and valid diration time.
5 Valid DHCP lease sends to Event Dispatcher ,which is located in production/development system(NIMISRVA/NIMISRV)
6 Termination the valid DHCP lease sends to Event Dispatcher.

Second part of DHCP collector(GetDHCPevent.py) is using event mechanizm to update the NIMI DB.
The code design to perform the following :
1 It received information about DHCP leases from Event Dispatcher using the "DHCP" subscrition for dhcp events.
2 create new data in NIMI DB for each given DHCP lease with Start time , calculated end time, User name , Mac address, Given IP address.
Then store in NIMI DB like as an active lease.
3 Select from Event Dispatcher the closed DHCP lease time and update this active lease in NIMI DB .
4 Check regarding the consistence of old and active leases.

The second part of DHCP collector is located in development system (NIMISRV) or production system(NIMISRVA).
The location depends on which NIMI DB will be used for updating DHCP leases



Also available in: Atom PDF