Cisco has a set of OID that can be used to copy things to and from a router using SNMP. Continue reading “copying Cisco configs using snmp”
Following up on my Formating mac addresses using python post I have a better way of using Mac addresses. I have been using the netaddr library for ip and mac address manipulations. To convert a binary mac address to an EUI object you can use the following code
import netaddr from netaddr import EUI def convertMac(octet): """ This Function converts a binary mac address to a hexadecimal string representation """ return EUI(netaddr.strategy.eui48.packed_to_int(octet))
with the EUI object you have multiple options to format with.
>>> from netaddr import EUI >>> import netaddr >>> mac = EUI('01-23-45-67-89-0A') >>> print mac 01-23-45-67-89-0A >>> >>> mac.dialect = netaddr.mac_cisco >>> print mac 0123.4567.890a >>> >>> mac.dialect = netaddr.mac_unix >>> print mac 1:23:45:67:89:a >>> >>> mac.dialect = netaddr.mac_bare >>> print mac 01234567890A >>> >>> mac.dialect = netaddr.mac_unix_expanded >>> print mac 01:23:45:67:89:0a >>> mac.dialect = netaddr.mac_eui48 >>> print mac 01-23-45-67-89-0A
As I have been working with different routers I have squired a small repository of configuration files that I use for examples, backups, and ways of remembering the way the network was set up before a change. At the start I maintained each config as a separate file, usually containing the date (i.e. router1-071012.cfg). While that worked for a while it got cumbersome when I wanted to track more than one legacy version of a config file. Continue reading “Mercurial for Tracking Cisco Configs”
A better way to do this is using the netaddr library. as shown in this post Better way of formatting mac addresses in python
I have a large set of shell script that I had written in shell, which I have been converting to python based scripts. I found using python I could better extend my scripts and reuse code. I also appreciate that python is a full object oriented programming language, with a very powerful set of standard libraries and many optional third party libraries.
Continue reading “Formating Mac addresses using python”