Showing posts with label networking. Show all posts
Showing posts with label networking. Show all posts

Friday, August 9, 2013

How to pass the CCNA (hint: it's a lot like getting to Carnegie Hall!)

1. First, take a good class that covers the CCNA curriculum. Many community colleges offer such classes. I am not talking about 4-5 day "boot camps"! I am also not talking about online, self-paced classes, either. I am talking about real classes in a real classroom with a real teacher and a real schedule. Also, the class should use official Cisco materials, and you should be enrolled in the Cisco Learning Academy as part of the class. This will give you access to lots of online resources, including especially practice tests that cover every chapter. DO THE PRACTICE TESTS!!! Successful completion of the class should also make you automatically eligible for a discount on the CCNA certification test itself.

If you do not already have a fairly good general IT background that includes familiarity with the basics of networking then you should seriously consider focusing on the ICND1/CCENT certification first, in order to get the basics down cold. Then you can work on the ICND2 certification, which, when combined with ICND1, is the equivalent of the CCNA. Going directly for the CCNA, rather than getting the ICND1 first, makes sense for someone for whom most of the ICND1 material is already at least somewhat familiar. One way or the other, you really need to understand the basics of networking, because everything else is based on that.

Here are links to two examples of community colleges that offer CCNA classes, and also a link to the Cisco Networking Academy:



2. Once you finish the above class(es) then you need to still study some more, and maybe a lot more! At this point you should get Wendell Odom's two volume "CCNA Official Exam Certification Library". Use the practice tests that come on the DVDs accompanying these books. Do these practice tests over and over and over again, and use Odom's books to review and fill in the gaps in your knowledge.

Here is a direct link to the most recent version of Odom's books at Amazon (these are the new books for the new version of the CCNA exam):



3. At the same time that you are doing step 2 above, also get the practice exams that are sold directly by Cisco. (It can be a little confusing because Odom's books are the "Official Certification Guide Library", but the practice tests that go along with his books are not the "official" practice tests, which you have to get directly from Cisco, see link below.) Odom's practice tests tend to be more difficult than the actual exam, whereas the practice exams sold directly by Cisco tend to be somewhat easier than the real thing. But don't neglect Cisco's practice exams, because these have simulations built into them that are crucial for exam preparation! You really need to practice these simulations in order to prepare for the certification!

Here is a direct link to the relevant page at the Cisco Learning Network Store



4. Once you can consistently get over 800 on both sets of practice tests (Odom's and Cisco's), then you should be ready. To be on the safe side you should at least occasionally be able to score over 900 on both of them!

Wednesday, October 17, 2012

Understanding Routing (especially EIGRP and OSPF for CCNA)

When I did a google search on "eigrp manual summarization" (without the quotes) the very first hit was a page at cisco.com:
http://www.cisco.com/en/US/tech/tk365/technologies_white_paper09186a0080094cb7.shtml (Document ID: 16406). I found this doc to be very helpful, although to be honest it could use some serious editing (for example it wastes a significant amount of time and space talking about "output interpreter").

Original image by Fermín Galán and David Fernández:
http://neweb.dit.upm.es/vnumlwiki/index.php/Example-OSPF_1.8
Another document that is really nice at explaining the routing process in Cisco IOS is: Route Selection in Cisco Routers (Document ID: 8651). This one is short and sweet and anyone who wants to learn more about the fundamentals of Cisco IOS should sit down and read it straight through.

For an excellent (and "as simple as possible but no simpler") discussion of the Shortest Path First algorithm, see Computer Networking: A Top-Down Approach, 6E, by Kurose and Ross, especially Chapter 4, Section 5: Routing Alforithms. Personally I didn't think their treatment of Distance Vector was as good, but their whole chapter on routing (chapter 4) is something I want to get back to and read through carefully from beginning to end.

Radia Perlman's discussion of both Link-State and Shortest Path First is very good in her classic Interconnections. If you don't know about Perlman, she invented Spanning Tree Protocol and also IS-IS routing protocol, so she's kind of a big deal.

I am  really liking the CCNP "self-study" book on routing by Catherine Paquet and Diane Teare. I'm studying the CCNA curriculum right now, but everytime you get get to the good stuff you read "this topic is discussed in CCNP." I think that Paquet and Teare's book is good for someone working on CCNA who plans to move directly to CCNP! The full title of the book is Building Scalable Cisco Internetworks, 3e.

Here is an excellent summary of the query process in EIGRP (taken from here: http://www.ccie.net/blogs/eigrpquery-process):
Query process happens with the following:
1.Query is sent when route is lost and NO Feasible Successor is available.
2.The Lost Route is now in active state.
3.Query then sent to all neighboring router on all interface EXCEPT the interface to successor.
4.If the neighbors don't have lost route information, queries are sent to their neighbor.
5.If the router has a alternate route, it answers the query and stop query propagation.
And here is a more in-depth discussion, by Jeremy Stretch of PacketLife.Net, of the EIGRP Query process, which nicely explains, among other things, why EIGRP really is a true Distance Vector protocol and NOT some kind of "hybrid":
Understanding EIGRP Queries.

Finally, here are some key concepts that I consider "key" not because of their role in routing so much as their role in making sure that you understanding routing:
  • route summarization
  • the difference between routing and forwarding
  • this sentence: "The longest prefix match always wins among the routes actually installed in the routing table, while the routing protocol with the lowest administrative distance always wins when installing routes into the routing table."
  • level one versus level two routes, parent and child routes, ultimate routes
  • what the prefixes in level one routes mean; when the classful mask is used as opposed to when the subnet mask is used; and how to interpret the output of "sh ip route" in general.
  • know why it is almost always a good idea to turn off classful automatic summarization ("no auto").
  • know what this sentence means (referring to EIGP): "Queries result in a split horizon only when a router receives a query or update from the successor it is using for the destination in the query."

Here are the short and the long forms of the EIGRP metric:
Image found at the Root Bridge blog: http://rootbridge.wordpress.com/2012/02/15/eigrp-part-2/

Image from PacketLife.Net: http://packetlife.net/wiki/eigrp/


Monday, October 1, 2012

Socket Programming, Anyone??

For now this is just some links. After I have a chance to play around more with this stuff, I will update this post with more substantial comments on what really works and what gets you there the quickest and easiest.

http://www2.its.strath.ac.uk/courses/c/

http://www.cprogramming.com/tutorial/c-tutorial.html

Introduction to network functions in C
http://shoe.bocks.com/net/

Beej's Guide to Network Programming Using Internet Sockets
http://beej.us/guide/bgnet/

But if you really want to be able to do and understand socket programming in Linux, this looks like the place to go:
http://www.linuxhowtos.org/C_C++/socket.htm

Hmmm - here's a new link that looks promising:
http://www.prasannatech.net/2008/07/socket-programming-tutorial.html

figure from:  http://www.troubleshooters.com/codecorn/sockets/

Thursday, September 13, 2012

Console connection to Baystack 5510 and 5520

What you need:

1. Operating System:
Windows 7

Note: Actually any version of Windows is OK. Prior to 7, Windows always came with Hyperterminal, but I use putty. You can also do this with a Mac or Linux, but you'll have to make some adjustments.

2. Hardware:
a. Keyspan USB Serial Adapter (19HS)
Note: Other Serial to USB adapters might work just as well.
b. Straight-Thru Serial Cable (Nortel part number AL2011013-E6)
c. Baystack 5510 and/or 5520
d. One free USB port on your Windows 7 system

3. Software:
a. Keyspan Serial Assistant
b. Putty

The Gory Details:

A. Getting the right stuff
  1. Keyspan USB Serial Adapter 19HS costs anywhere from $20 to $50. Search online using the keyword "keyspan" and the part number "usa-19hs" and purchase from the vendor of your choice.
  2. I got my straight-through serial cable on ebay for 12 bucks. Search on the part number "AL2011013-E6".
  3. For extra credit, use the continuity setting on your multimeter to verify that your cable really is "straight-thru".
B. Software Installation
  1. Install Keyspan Serial Assistant
    a. Go to this page: http://www.tripplite.com/en/products/model.cfm?txtModelID=3914
    b. Click on the "Support" tab
    c. Click on the link that says: Driver for USA-19HS (Windows 7 and 8) [ 4 MB / ZIP ]
    d. Download and install the driver
  2. Install Putty
    a. Go to http://www.putty.org
    b. Download and install Putty
C. Make the physical connection
  1. Power up the switch 
  2. Connect the straight-through serial cable to the console port on the switch 
  3. Connect the serial end of the Keyspan USB Serial Adapter to the other end of the serial cable 
  4. Connect the other end of the Keyspan Adapter to a USB port on your Windows 7 box 

D. Establishing a terminal session on the Windows box
  1. Fire up the Keyspan Serial Assistant on the Windows box
  2. Note the "com" number of the serial connection (screen shot #1):
    screen shot #1

  3. Start up Putty
  4. Configure Putty: set the "Serial line" to COM3 (or whatever); set the speed to 9600; set the "Connection type" to Serial (screen shot #2):
    Screen Shot #2

  5. Check to make sure serial settings are good (screen shot #3):
    Screen Shot #3



  6. Click "Open"
  7. In the terminal window that opens up, enter "ctrl-y"
  8. Screen shot #4 shows the menu for a 5520 - this (or something like it) is a good sign. The rest is up to you!

    Screen Shot #4