Some PHP SNMP scripting

I was digging through some of my old notes and came across a few SNMP networking PHP scripts that I put together for some Proxim AP-4000 access points. I put this script and many others together to help manage these standalone access points before there were wireless controllers. This particular PHP script sets up a while loop to modify some SNMP values to modify AP filters. The SNMP values within this script can be modified to be used in changing other values as well. Your setup will require PHP installed along with the SNMP package. Have fun. Continue reading »

Portable home lab virtualization server + gaming

Portable Options

I have a few PC’s that I use for testing, gaming, and other side projects. I wanted to pare down on a few systems, so I started looking into a portable gaming server VM home lab setup. I would like the system to be used for testing at least four different VM’s and also allow for some decent gaming performance utilizing VM hardware GPU pass-through.


I first pondered on the Intel NUC Skull Canyon. It’s pretty portable, tough looking, and powerful, but it lacked the ability to easily install an external GPU and the ability to install a hypervisor when it first launched. It’s also pretty expensive and I was trying to stay around the $500-$600 range. I started looking at a few mini ITX cases and remembered coming across the ASRock M8 Mini ITX design in the past. Continue reading »

Why NetDevOps/NetOps will become important for Network Administrators

dev ops codingBeing a network administrator/engineer typically requires typing in ssh consoles to get things going. At some point, being able to automate tasks or being able to manipulate configurations based on a certain outcome will become necessary. I’ve gathered a few thoughts on real world views to network automation. The buzzword floating around for this topic is NetDevOps.

NetOps/NetDevOps(my definition): Network automation using code to run commands that would normally have to be typed in manually into each device. Example: Run code that can parse or write through configs, logs, and snmp values in order to take action on a specific outcome.

I won’t go into the details of the ins and outs of NetOps/NetDevOps and how to get started with coding. I’ve provided a list of links with information that other really smart people came up with. Continue reading »

IPplan – IPAM (IP address management)

For those of you looking to track your IP space in something other than a shared excel sheet, take a look at open source IPplan. All you need is a linux box with apache and a few other components. Installation is not too hard. I would recommend that you use https to access your build that way your authentication is encrypted. If you were using excel, format your columns to the correct format that IP plan will take and export your excel sheet to a tab delimited file. You can then import that file into IPPlan.

IP-plan ip address management

You can easily select multiple addresses to make bulk changes as shown above. You have all the fields you need. There’s even a MAC field that’s visible when you click on the IP link. I like how the change field is updated with a time stamp after a modification. This way you can see who made the latest change.

ipplan request

Another nice feature is the request an IP address page. You can point all your internal clients to this page in order to submit a request for a static IP if you don’t have a ticketing system. You can then be emailed. You can manage DNS as well, but I haven’t dug into that. NMAP can also be implemented into the system to check which IP’s are being used. You can also have the system email you when ip subnets exceed a certain utilization level.

If your interested in a fully supported paid IPAM platform, check out infoblox. You can try out their IPAM software for free. Its highly limited compared to IPPlan, but if your looking to expand your DDI (DNS,DHCP, IPAM) services and you have a budget, this may be a better option for you.

FreeRadius multiple domains

We use freeradius to 802.1x auth our wireless users. We need to authenticate users that may be on one of two domains. We have an issue with trying to authenticate to the global catalog because we have duplicate user account names that have been created on each domain. That wasn’t my idea and it can’t be fixed, so I have to work around the issue. One way to fix the issue is to have the user append the domain when they authenticate, but we don’t want to make things harder for end users.

With freeRadius, I was able to use some freeRadius unlang. I wanted to share some of the config with you. I’m assuming you have most of your freeradius running at a point where you can authenticate against one domain via mschap. Basically my config tries to auth the user by specifying one of the domains in one mschap module and specifies the other domain in a new mschap module. If the user fails on authentication to the first domain, then the second mschap module fires off with the second domain specified.

First, I modified my mschap module found in the following directory: /etc/raddb/modules/mschap

ntlm_auth = “/usr/bin/ntlm_auth –configfile=/etc/samba/smb.conf –request-nt-key –username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} –domain=YourFirstDomainName –challenge=%{%{mschap:Challenge}:-00} –nt-response=%{%{mschap:NT-Response}:-00}”

I then created another mschap module instance by editing radius.conf found in the following directory: /etc/raddb/radius.conf

add the following:

mschap NameOfNewModule {
with_ntdomain_hack = yes
ntlm_auth = “/usr/bin/ntlm_auth –configfile=/etc/samba/smb.conf –request-nt-key –username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} –domain =YourSecondDomainName –challenge=%{mschap:Challenge:-00} –nt-response=%{mschap:NT-Response:-00}”

Modify your inner-tunnel file with some freeRadius unlang found in /etc/raddb/sites-available/inner-tunnel
Add the following in the authorize { section:


Then add the following unlang in the authenticate { section:


Auth-Type MS-CHAP {
mschap {
reject = 2
if (reject) {

Show me your dashboard…

Zenoss Core open source dashboard

network admin zenoss dashboard

We use zenoss core (open source) to monitor our devices. We have tried zabbix, nagios, and cacti, but Zenoss seems to be the easiest to manage and maintain. I can create custom snmp templates with thresholds that can overlay our rrd graphs. Zenoss also allows you to create email notification triggers based on the severity and threshold set on each graph template. You can see two of these custom graphs in the zenoss dashboard image above. I’m monitoring our wireless dhcp pools and each of the Enterasys Extreme N7 chassis slot CPU’s.

I also have weathermap installed on our linux server that’s also hosting zenoss and the link to the PNG file is placed on the zenoss dashboard. Weathermap is a nice open source network visualization tool. You can create a custom network map that will draw link speeds and colors based on rrd files. I set the weathermap config to point to the zenoss rrd files that can be located under each sub folder in the /opt/zenoss/perf/Devices main directory.