Network Engineer your job Tools

amb1s1amb1s1 Member Posts: 408
This is for all engineers, what are the tools that you use on a daily basic. Mines are;
Secure CRT
Excel <--- to write configs
Word <-- writing documentation
Visio <-- for diagram
Onenote <-- to save all my notes

I'm looking into start writing my config on notepad++ suggested by an INE instructor. I don't have any troubleshooting tools since I don't do troubleshoot unless there is a problem on my design. I would like to see what you guys use and what you guys think about notepad++. Also anybody use excel to write configs? Thanks
David G.
http://gomezd.com <
My Tshoot test Blog
http://twitter.com/ipnet255

Comments

  • ColbyGColbyG Member Posts: 1,264
    I use Excel religiously. It's the best tool ever for generating configs.
  • amb1s1amb1s1 Member Posts: 408
    Any tips for excel use? Since I only have couple of month using it as my main config editor?
    David G.
    http://gomezd.com <
    My Tshoot test Blog
    http://twitter.com/ipnet255
  • epicdeanepicdean Member Posts: 50 ■■□□□□□□□□
    I have never used excel for writing configs can some of you elaborate on it.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    ColbyG wrote: »
    I use Excel religiously. It's the best tool ever for generating configs.

    I suppose it depends on your source material. Excel can be useful, but I can do it faster with bash/awk/sed/grep to actually generate the script, then I can feed that to an expect script to actually login and apply it hehe.

    Visio is one that's going to be in every network engineers toolkit, like it or not. Besides my bash ninja tools, I also make frequent use of tcpdump. Confluence is my knowledgebase/wiki. Beyond that, we have a crapload of custom tools for various things, and in the event that a tool doesn't exist, I tend to write my own.
  • amb1s1amb1s1 Member Posts: 408
    I used it like a regular notepad the only difference is that you Highlight comments, noted, line that might want to review and you can separate configs in different sheet. It is easy because let see that you have two core switches and they usually have the same configs so you can have both config in two different column and you can see if you are missing something. Also, you can have your basic config on one sheet and then have the QOS in another. I used this way, but again I'm been doing it for couple of month, so I guarantee there is more tricks that I don't know yet.
    David G.
    http://gomezd.com <
    My Tshoot test Blog
    http://twitter.com/ipnet255
  • ColbyGColbyG Member Posts: 1,264
    I suppose it depends on your source material. Excel can be useful, but I can do it faster with bash/awk/sed/grep to actually generate the script, then I can feed that to an expect script to actually login and apply it hehe.

    This is interesting. I'm weak at everything scripting, sadly. What do you use as your source for bash/awk/etc scripts.

    In a recent case, for instance, I did a migration from an old DC access setup to a new one. I had the customer put all of their servers on a sheet with name and VLAN info (among other irrelevant information). With some predefined command syntax and concatenate in the top cell, all I had to do was drag from top to bottom and I had ~300 ports configured. Could I be doing this better? I feel like I'll end up with the spreadsheet either way as it is useful for more than simply generating config, but if there's a better/more flexible way to do these things, I'd love to know.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    ColbyG wrote: »
    This is interesting. I'm weak at everything scripting, sadly. What do you use as your source for bash/awk/etc scripts.

    Whatevers provided to me. Some of my tools have to scrape a web page and parse through the data because that's all the information I get. Some info is provided on Excel spreadsheets, which I have to convert to CSV and parse. Other stuff, I have to pull via SNMP or from a database. Since no one was nice enough to write glue utils to make the data inputs consistent, I have to do it myself, and if I'm doing that, might as well process it at the same time as well.
    In a recent case, for instance, I did a migration from an old DC access setup to a new one. I had the customer put all of their servers on a sheet with name and VLAN info (among other irrelevant information). With some predefined command syntax and concatenate in the top cell, all I had to do was drag from top to bottom and I had ~300 ports configured. Could I be doing this better? I feel like I'll end up with the spreadsheet either way as it is useful for more than simply generating config, but if there's a better/more flexible way to do these things, I'd love to know.

    Well, it depends. I could do the same thing by pulling down the spreadsheet, converting it to CSV (plenty of commandline utils to do it exist, so I don't need to open Excel at all), generate my outputs, and then feed that to another script to login and apply that configuration (if appropriate), **** it to a text file and then ftp/tftp it up to a server for later use, or pretty much whatever else I can imagine with it, even **** the parsed data back into a CSV and then convert that to an Excel spreadsheet hehe. Generally speaking, anything that's service effecting, I ftp up to a server for storage and review, or directly to the device if it's one of the platforms that I can just feed it a text file and it executes the commands therein (beats the crap out of copy and paste on massive configs, let me tell you....). Anything that's non service effecting, I just login and run right away (most commonly, I'm moving modems around due to capacity concerns)
  • ColbyGColbyG Member Posts: 1,264
    Can you post some of your scripts/tools? I'd love to add them to the arsenal. And, hopefully one day, I can even build on them.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    To give you a few practical examples:

    Every week, we get a capacity report, showing which upstreams and downstreams are close to being overloaded. The only way this is delivered is via a web page. So I my script wgets the web page, I run that through sed to filter out the garbage, then I awk out the box names and the ports in question. I feed those to an expect script which logs into each box, and pulls a list of modems on those ports. The script then looks at those modems, identifies which ones need to be moved, and looks at the rest of the box configuration and determines the appropriate port to move the modem to. It generates the config to move the modem, then logs back into the box and moves it. Prior to me coming on board, this was an entirely manual process. They split the boxes out among team members, and everyone was responsible for getting their work done before the next report came out. Sometimes it didn't happen, because we got overloaded, or folks were out sick, etc. I put up with that **** for about 2 weeks before I said I could do it better, and started scripting. Now, it takes about 5 hours, and I run the thing nightly, which frees us up from doing tedious stuff and results in better service for our customers.

    There are some configurations within the division that should be consistent on every box, but with a network of this scale, ain't. This used to require manual auditing. Then I figured out that all of our boxes configurations are stored in a central database. Now, if something needs to be standardized across the board, I feed it a list of boxes (or just grab them all), identify which ones have the improper configuration, generate the correct one, log in to the box, and apply it. Again, this was a tedious and boring process, especially since every market configures their crap differently, and it's basically been reduced to 'run the script'. We do not do this for anything service effecting, we want a real person to do that on purpose, so for anything service effecting, I just generate the config and put it somewhere else, and someone gets to review it, and then copy/paste it, or execute the text file as a sanity check.

    Some of my data is provided in the form of an Excel spreadsheet with just a box name, and some data item. ipv6 configuration is the most common. Our IP management guys are an entirely separate team, and they're not network engineers, so they don't do configuration. They just hand us a spreadsheet with things like a box name and an interface and the IP that needs to go on it, or a static route that needs to be applied. I convert the Excel spreadsheet to csv, parse it, generate the config, and then have it login to the box and apply it.

    These are just a few examples, but suffice it to say, having these skills in my toolbox have been very good for me. In four months, I've managed to increase the efficiency of my team a good bit, which is good because we're understaffed. And it's been noticed by upper management. My boss jokingly reminds me that I'm his guy, because I've got folks coming to me from other teams for help with their stuff.

    My goals are pretty simple. Our folks are smart and skilled people, and wasting time on tedious stuff is a waste of our skills. My goal is to reduce all of that crap to 'run the script'.

    Now, there is some danger in that. It has the potential to erode the knowledgebase, as people become dependent on the script to do all of that work. Upgrades or other changes may break it, and at some point I might not be around to fix it, and there might not be anyone else available with the skillset to do so. This is why, in addition to providing the script, I provide thorough and very detailed documentation on the process the script is performing, so in the event that the script is non-functional for some reason, the knowledge to perform the process is still available.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    ColbyG wrote: »
    Can you post some of your scripts/tools? I'd love to add them to the arsenal. And, hopefully one day, I can even build on them.

    I'm really not sure it would help. Alot of it, I would have to sanitize as it contains potentially sensitive information, and what I didn't have to sanitize wouldn't make alot of sense without having the inputs to correlate it to (and for obvious reasons, I'm not sharing the inputs!)

    This is one of my heavy lifters, it's the expect script I use to login to boxes and apply configurations. It takes two commandline arguments, the first being an IP or FQDN, the second a text file containing the commands to be run after logging into the box.
    #!/usr/bin/expect -f
    set timeout -1
    #exp_internal 1
    set address [lrange $argv 0 0]
    set commands [lrange $argv 1 1]
    set fp [open "$commands" r]
    set data [read $fp]
    log_file -noappend ./$address.log
    spawn /usr/bin/telnet $address
    expect "Username:"
    "send <USERNAME SANITIZED>\r"
    expect "Enter PASSCODE:"
    send "<PASSCODE SANITIZED>\r"
    expect -re "#" {
    	send "$data";
    }
    interact
    close $fp
    
  • 7of97of9 Member Posts: 76 ■■■□□□□□□□
    Wow...this really is some ninja-level stuff! icon_cool.gif

    A related question...rather than giving us the script sources...can you point out some good resources for LEARNING script skills like these? I've tried a few times to learn scripting and have never quite gotten the hang of it, but I think now might be a good time to try again, particularly hearing about the level of automation you've been able to achieve. Books, websites...anything you've got that you've found helpful?

    Thanks!

    Oh...as far as tools...besides the usual...

    Airmagnet - I use this extensively for surveying and troubleshooting RF issues.
    Cisco Spectrum Expert - Finding RF interference, troubleshooting
    Wireshark - Of course
    SecureCRT - I hate putty
    Angry IP - quick port scanner
    Kiwi CatTools - Used to be more useful before Solarwinds bought them
    Snmpcrawler

    Other than that, I think my toolkit is pretty standard and could definitely be updated.
    Working on Security+ study, then going back to re-do my Cisco Certs, in between dodging moose and riding my Harley
  • 7of97of9 Member Posts: 76 ■■■□□□□□□□
    One other question - Do you use Confluence at work, for the group you work with, or do you use it for your own personal wiki/knowledgebase? Either way, why did you pick it above other choices?

    Thanks!
    Working on Security+ study, then going back to re-do my Cisco Certs, in between dodging moose and riding my Harley
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    7of9 wrote: »
    Wow...this really is some ninja-level stuff! icon_cool.gif

    A related question...rather than giving us the script sources...can you point out some good resources for LEARNING script skills like these? I've tried a few times to learn scripting and have never quite gotten the hang of it, but I think now might be a good time to try again, particularly hearing about the level of automation you've been able to achieve. Books, websites...anything you've got that you've found helpful?

    The best way to learn scripting is to have a need for something, and then try to build it. Just trying to acquire scripting as a skill without any need in mind for it is just going to bore you, it's alot easier to retain it and stick with it when you're working towards a goal. My early scripting attempts were ugly and nasty, and I've refined my skills over the years, but while my early code may have been ugly as sin... it worked.

    I personally used the O'Reily bash, awk & sed, and expect books. I purchased paper copies of them, and I also have the electronic editions on my ipad in case I need them for reference. awk & sed are great for script integration, but I actually learned them for text processing when I was a unix admin, as they're absolutely killer tools for extracting pertinent information out of log files. bash scripting and expect were things I learned specifically for scripting. I also do alot of googling for concepts that I think of that might not necessarily be in the books and I can usually find code that leads me in the right direction.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    7of9 wrote: »
    One other question - Do you use Confluence at work, for the group you work with, or do you use it for your own personal wiki/knowledgebase? Either way, why did you pick it above other choices?

    Thanks!

    Both. I was introduced to it when I worked for Dell, and liked it enough that I purchased the starter license (it's only 10 bucks for 10 users) and set it up on a VM in my lab for personal use, replacing MediaWiki. I was very happy when I got to my current job and found it in use as well.

    As for why I picked it, I think it's a better platform than MediaWiki, and I detest Sharepoint, and realistically, those are the only other platforms that could meet my needs.
  • mattaumattau Member Posts: 218
    The best way to learn scripting is to have a need for something, and then try to build it. Just trying to acquire scripting as a skill without any need in mind for it is just going to bore you, it's alot easier to retain it and stick with it when you're working towards a goal. My early scripting attempts were ugly and nasty, and I've refined my skills over the years, but while my early code may have been ugly as sin... it worked..


    +1 to that.
    before I even got into cisco I tried briefly at c++ programming. Just reading through books etc trying various things. I found I got no where. Then got into cisco and then recently into linux. Ive since tried my hand at a few things with bash scripts with things that had a purpose and i actually suceeded in doing what i wanted to do with some trial and error and I have basically no experience at all in coding!
    _____________________________________
    CCNP ROUTE - passed 20/3/12
    CCNP SWITCH - passed 25/10/12
    CCNP TSHOOT - passed 11/12/12




  • ColbyGColbyG Member Posts: 1,264
    This thread got me back into my Python practice. Thanks!
  • cmitchell_00cmitchell_00 Member Posts: 253 ■■■□□□□□□□
    I use some of everything on a daily so; it depends on the issue.
    *Just to name a few below:
    Putty&Hyperterminal
    Telnet\RDP
    Wireshark
    Notepad
    MS Visio
    Excel to save all important IP's etc.
    NetCool\SolarWinds
    Syslog Daemon
    Cisco CCA
  • jason_lundejason_lunde Member Posts: 567
    iperf and nc (aka netcat). Iperf for simulated throughput testing, and netcat for alot of random stuff.
  • ampdeckampdeck Member Posts: 35 ■■□□□□□□□□
    Notepad++ is a must have tool for editing config files and comparing config changes for faster troubleshooting.
    Excel is also useful for me when dealing with tons of MAC add eg. IPT deployment. My favorite excel formula would be vlookup, also useful for inventory :)
  • terryferaterryfera Member Posts: 71 ■■■□□□□□□□
    iperf and jperf (xjperf - Graphical frontend for IPERF written in Java - Google Project Hosting) for a visual representation (because everyone loves graphs ;))
    Solarwinds Engineers Toolkit
    Securecrt/xshell
    Notepad++
    Wireshark
    tftpd32
    inSSIDer
    Visio
    GNS3

    And because I work in a large enterprise all the Office apps and custom web tools we have to deal with IPAM, change management, CMDB, etc.
  • networker050184networker050184 Mod Posts: 11,962 Mod
    Crimson Editor is great. Can't beat that column editing function.

    Cygwin if you are working primarily from a Windows machine is a must have for me.
    An expert is a man who has made all the mistakes which can be made.
  • HackedAliasHackedAlias Member Posts: 34 ■■□□□□□□□□
    SecureCRT
    NetformX DesignXpert - site surveys
    Solarwinds LANsurveyor - Site surveys
    3Cdaemon TFTP
    Cisco Output analyzer
    Cisco VPN client/any connect
    Excel/Visio/Word

    Best of all is Google
  • cmitchell_00cmitchell_00 Member Posts: 253 ■■■□□□□□□□

    Dang... I forgot about Google/Internet and even Youtube.com.
  • Forsaken_GAForsaken_GA Member Posts: 4,024
    Cygwin if you are working primarily from a Windows machine is a must have for me.

    I keep trying to work in a Cygwin environment whenever I get handed a windows laptop and it just doesn't work well for me, so I guess for me, I'd have to add in Virtual Box with a Debian VM hehe
  • amb1s1amb1s1 Member Posts: 408
    VZLookup save me a tons of time.
    David G.
    http://gomezd.com <
    My Tshoot test Blog
    http://twitter.com/ipnet255
  • SettSett Member Posts: 187
    ExamDiff is a nice tool to compare 2 files and highlight the differences. I am using it to go check the differences between 2 configuration files

    ExamDiff - Download.com
    Non-native English speaker
  • johnwest43johnwest43 Member Posts: 294
    +1 on notepad++! I use it exclusively for configs as well as bash scripts.

    I just started using Linux about 2 years ago, man what an awesome way to work! I use bash scripts for everything from formating syslog messages and dumping them into a database, to nightly server backups to even checking on raid arrays (Linux software RAID) and sending emails if an array has disk go bad! I have even written a script to pull current weather data from NOAA once every 15 minutes and format it for Cisco IP Phones!!

    Like Foresaken said best to just have a need and then research how to write the script. There are tons of resources on the interwebs for bash scripting. I can promise you after writing a few scripts you will wonder how you ever got by without them!

    I also use MRTG,PRTG,Wireshark
    CCNP: ROUTE B][COLOR=#ff0000]x[/COLOR][/B , SWITCH B][COLOR=#ff0000]x[/COLOR][/B, TSHOOT [X ] Completed on 2/18/2014
  • ZartanasaurusZartanasaurus Member Posts: 2,008 ■■■■■■■■■□
    I use all kind of stuff, some more than others.

    Solarwinds NPM, APM, NCM.
    Excel for generating quick and dirty configs.
    Powershell
    Visio
    NetFlow
    nMap
    Putty Configuration Manager
    Evernote
    GNS3
    Currently reading:
    IPSec VPN Design 44%
    Mastering VMWare vSphere 5​ 42.8%
Sign In or Register to comment.