I searched around the internet for a few minutes to see what/how people do when they first start a new job as a network engineer. Now, I am not talking about, someone starting their first ever network engineer job but rather a person who has been a network engineer and is now transitioning into a another job at a different company or network.
I am currently experiencing this and wanted to see what other engineers have done to adapt to a new network to learn the new network infrastructure they are now faced with supporting. My current position has such a large network that it has become quite overwhelming but I, in my sick ways, am excited about such a great opportunity.
So, what do you do when you start a new job or have to learn a new network infrastructure?
Well, I have started off asking questions about the network to other engineers that work in my team and in other teams. However, I don’t want to ask too many questions as I face a personal dilema with the fact that I don’t want these co-workers to think anything negative of me.
As I ask a couple of questions here and there I then begin the search for documentation and in fact my first questions from other co-workers is, “where should I go to look at some network diagrams?”. Unfortunately, for me, the network infrastructure is so huge that there are so many diagrams and so many versions scattered across the network. I think this situation is probably all too common as the demand and volume of an engineers work is so high that the documentation doesn’t get made. After all, if I know the network, why would I document it, right?
The next step is to just manually map it out. Get on router 1 then 2 then 3 then 100 and read through config after config after config… You then look at ip addresses and how particular devices obtain these static IP addresses. You then start to look at the routing table, doing traceroute’s and so on and so forth until you figure it out.
There is, unfortunately, no easy way to learn a new network except to hope that there is good documentation of processes and procedures and of the entire network.
So what I do is I get on a router. I then do a sh run and see what’s there… I then look at the routing table, I look at what routing protocols are being used. From my local workstation I will ping yahoo.com and then get on the router and do a traceroute out to the yahoo.com ip address (you can do google.com, cnn.com, etc…). The place on the internet you ping doesn’t matter because all we need/want is a public ip address.
So after I do the ping and it works to yahoo.com from a router I will then do a traceroute to the yahoo.com ip address. Unfortunately a lot of companies are very tight with ICMP (ping) and/or tracerotue. Meaning that the company’s infrastructure firewalls will block ICMP or traceroute traffic.
This is okay as we’ll just jump on each of the hops by attempting to first ssh and then telnet into those devices. As you visit each hop out to the internet you first do a sh ver to see what model it is. Then you do a show run and then put this in a visio diagram showing the model and the interfaces on the router/switch/etc…
I would not worry about routing protocols at the beginning as I would first start to see who is the routers neighbor. show cdp neighbor command works great for this… If CDP is enabled as it should be in a large environment on the core and distribution layer at least you can then start to diagram what is connected to what.
The next thing to do, especially if the configs seem old like, the router is not using an extended ACL is to clear ip access-list counter <access-list-name or number> and then do a sh ip access-list <name or number of list> to then see the hits. So the reason I do this is to see what ACL’s are being used and which one’s are not. I have found it, recently, all to common to see what seems like pages of ACL statements and after clearing the counters (AKA the hits) on the ACL I then notice that maybe 10 out of 40 are actually getting hits. I’m not saying that the one’s not getting hits are not valid or needed but rather you can see what’s going on.
Another option is to do a debug ip packet or some debug ip <something> to just see what’s going on. However, I’d be very very very careful with this as you can max out a CPU reallly fast with this. I’d have the un all ready to be pasted into the CLI window before you turn on debugging… I’d also do the debugging during lunch or some other non-peak time. I would also ask if this is okay, just to make sure, because if you bring a device down you may not have to learn the network any longer as you will now be unemployed.
Sh ip nat translations is good to do as well to see what is getting nat-d and where.
sh ip int brief is of course the first thing you should do every time you get on a router
Once you have this all put together in a diagram and you feel like you have touched more devices than your 11×17 visio diagram can hold I would then start to look at the routing protocols used and note them on the diagram.
Now unforutnately, if you work for a service provider of some sort then you could possibly be looking at 1000′s of tunnel interfaces, sub interfaces, ACL statements, etc… So just remember at first don’t get lost in the details as the goal is to just map out the companies network that you are responsible for or will be supporting.
As you go through the learning process, write down your questions about something immediately so that you can go ask the co-worker who knows the network a very good question. The answer you get will most likely stick because you had to do a lot of digging to come up with that question. Always always do as much research as possible before you ask anybody for help with something UNLESS it is an emergency like something is down or not working. Even then, give it a good go to at least gather the details so that when you ask a more experienced or knowledgeable co-worker he/she will be able to resolve the issue faster.
Afterwards I would then start to see what are multiple routes, what are the gateway’s of last resort, what protocols are being used on which routers and go from there.
This method I’ve described is not fool proof but matter an idea and an action that I have performed myself.
Learning a new network, whether huge or small can be a daunting task without the support and education from co-workers but in time and with some patience and lots of caffeine you can do it.
Never get discouraged and enjoy the new network and the challenges it brings. As you go through this you will always learn something. I also google commands I see in the running-config to see what these, to me, odd commands are and then start to forumlate why they are there (the goal).
I know that this post wasn’t all that orderly. However, I just wanted to share my perspective on how I’m going about learning a new network infrastructure.
I hope this has been informative for you and I would like to thank you for readying.

