In this section, I would like to share my experience with the raspberry pi and how I used it to help me manage in an intelligent way my home network.
In my home, I have a number of networked devices ranging from basic network infrastructure to IoT’s. In total they exceed the number of 58 unique IP’s ranging from routers and switches to servers, network cameras, etc…
Having all these network devices, it was quite challenging to keep up with their health status and in general their management… and that’s where raspberry pi came in to help me.So, after some research on the friendly web, I decided to setup the pi with the following:
- My Ubiquiti management controller for the access points
- A webmin console where I can control and review the status of the services running on the pi
- Bind9 – to use as a DNS for my local networks as well as a caching server for DNS lookups
- DHCP – to cover the needs of the DHCP server in my local letworks
- Cacti – as my “nms” platform to view the status of the devices plus to monitor the bandwidth consumption
- A syslog server where I collect the messages from all the devices
Initially, I setup the pi with a 32GB SD card but I soon realized that both the performance and the data to be stored would have exhausted the card’s space quite fast.
As a result, I used an SSD disk (which I connected via a USB port on the pi) and moved the root partition from the SD card to the SSD in order to satisfy both speed and future capacity requirements.
The final result is just amazing working perfectly and producing the results I wanted.
Outline of steps used for this:
1. Install Raspbian
2. Configure Pi with a static IP
3. Update all packages
4. Install the following packages: apache2 php5 mysql-client mysql-server php5-mysql php5-snmp php5-gd php5-ldap rrdtool snmp snmpd
Configure apache, mysql, php and snmp
5. Install Cacti
Configure Cacti and prepare graphs for monitored nodes
7. Install DNS (through webmin)
Configure DNS as a caching server for the network and assign it as a master Name Server
7. Install DHCP (through webmin)
Configure DHCP server with range and the necessary options for the networks that will be served and assign it as the authoritative DHCP server
In the next sections, I will go through the process and I will add all the steps with images from the installation.