Author: Josh O'Brien

A Few Easy Steps: Cisco IOS, Setup for Automation

In this session of A Few Easy Steps, we will be doing the initial setup for automation on a Cisco IOS Device. In General this will work on any Cisco IOS Device.  Session Prerequisites:

  • You have a Cisco Console Cable
  • You have a serial port
  • You have a Terminal Program that you can access your Serial Port

Session Assumptions:

  • Hostname is already set
  • Domain name is:  SPC.DEV
  • RSA modulus is  1024 bits
  • Our Admin interface is:  FA0/0
  • The Interface has already had its IP Address assigned
  • Enable Password is: password
  • Username is : pytest
  • Password is:  pytest
  • We are using VTY ports 0-5

Our goals of this session are:

  • Setup IP Domain Name
  • Create RSA key for SSH
  • Set Enable Password
  • Setup Username
  • Setup Password
  • Turn interface FA0/0 on
  • Enable SSH on VTY 0-5
  • Set Login to Local Authentication

Read more

What did you Expect? Part 4, Working with Flat Files.

So far so good.  In Part 1 we connected to a Cisco switch and and performed basic Authentication with Expect.  Part 2 we expanded on that and added configuration to our code that added a VLAN and configured an interface.  But as I have already stated we are writing quite a bit of code just to configure a single switch.  So the next step is to add multiple devices and flat files.  I mean yeah we could setup a static list in our code and add our devices to that but why?  Our real goal here is to create functional code that we can use to do real things in real networks.  So that means pulling a list of devices from NMS, IPAM or even our nasty old excel files.  Plus this helps us address  the idea of adding authentication files and other flat file resource pools.  Eventually we will transition the use of flat files into databases so we can do even more cool stuff but we will hold off on that for now.

Read more

What did you Expect? Part 3, Fixing Stuff and Scaling Out.

When you setup to learn new things you are bound to get a bit sideways once and awhile.  With writing code I think that is even more the case.  You start out with an idea and if your lucky like I have been so far it starts to flow and things just work.  But in the spirit of learning in manageable chunks and sharing the experience with you I started targeting a single host.  When I tried to make the leap to multiple hosts things got interesting.  Along with that it became clear that these posts were going to get messy quick.  So lets clean all that up and move on to the cool stuff. Read more

Setup GNS3 Automation Network in OSX

I have been working to learn how to use Python to automate interactions with network devices.  Due to what I have in my lab and the fact that we have GNS to model Cisco Networks I started with IOS.  In order to really test out the automation scripts I have been building, I felt it was necessary to run them against at least ten devices to make sure they would scale out and recover well from errors.  In order to do that I had to build out a 10 device lab.  This is how I did it. Read more

NAT Store: The books you read and the stuff you use.

One of the lines that I have taken to heart in Life is  “your only difference between now and ten years from now will be the books you read and the people you meet”.  I read it years ago and since then I have doubled down on my reading.  Prior to this I was reading lots of fiction and technical documents around doing my jobs as a network engineer.  Since then I have expanded into Finance, Marketing, Strategy and more.  I can’t begin to tell you the difference in my life it made.  While I won’t go into details actions I took as a direct result of what I was reading helped me go from a mid five figure salary to a solid six figure salary and on a pace that made me part of the businesses I was with not just an employee. Read more