We’ll do this with the script included with Netdot, which uses the package manager yum to install quite a few dependencies.įirst navigate to the directory where you extracted the files from the Netdot repository: cd /usr/local/src/netdot/ Now you need to install the dependencies. Get the latest source for Netdot from GitHub: cd /usr/local/src/ In the first part of this tutorial, we’ll install and access Netdot.
In this tutorial, we’ll show you how to add devices to Netdot, and how to use it to map and manage your IP address space.
You are advised to update your ntc-template library. I have seen that there is a BUG fix for ntc-template on GitHub since 2 months ago. # Please also post the result here (with masking the MAC addresses for confidential purpose) Print(output2) # Make sure you got the data return to you have all the mac addresses (not only 1 mac address per port) Try to add the below printing for troubleshooting To debug on the issue, you are advised to confirm the library ntc-template would return you a correct data. Your script have the correct logic to list out all the mac address per interfaces. Make sure the intention (space) in the above is correct. The objective is to put all the MAC addresses against an interface in column 11. The above writes to the excel file but only the last MAC address against an interface. Ws.cell(row = x, column = 11, value=macaddress) Ws.cell(row = x, column = 9, value=interface) Ws.cell(row = x, column = 8, value=interface) Ws.cell(row = x, column = 7, value=switchserialnumber) Ws.cell(row = x, column = 6, value=switchsiteaddress) Ws.cell(row = x, column = 5, value=switchsitename) Ws.cell(row = x, column = 4, value=switchcountry) Ws.cell(row = x, column = 3, value=switchregion) Ws.cell(row = x, column = 2, value=switchaddress) Ws.cell(row = x, column = 1, value=switchname) Output2 = net_nd_command ("show mac address-table", use_textfsm = True)
Output = net_nd_command ("show interfaces status", use_textfsm = True) If ws.cell(row=row, column=1).value = switchname: Wbwr = openpyxl.load_workbook("dot1x.xlsx") Logfile_open = open("dot1xLog - " + str(actual_time) + ".txt", "a") #Load the file portcounters to which the output will be written.Store the file in same directory where the script is or else define the path using oscwdĪctual_time = strftime("%Y-%m-%d_%H-%M-%S") Switch = ws.cell(row= row, column = 4).value Switch = ws.cell(row= row, column = 5).value Switch = ws.cell(row= row, column = 8).value Switch = ws.cell(row= row, column = 7).value Switch = ws.cell(row= row, column = 3).value
Switch = ws.cell(row= row, column = 2).value Switch = ws.cell(row= row, column = 1).value Wbswitches = openpyxl.load_workbook("switchenv1.xlsx") Store the file in same directory where the script is or else define the path using oscwd #Load the Switch inventory file which has switchname in column 1 and IP address in Column 2. Following is current code.įrom netmiko import ConnectHandler,ssh_exception