Neat Lab Screenshot

Was working on a little static routing lab this evening using three TinyCore linux VM’s, two 12.1R1.9 JunOS routers and one 12.4 Cisco IOS. A simple but fun way to get used to JunOS command line syntax. While the level of configuration done here is relatively trivial, it’s good to start small when learning a new network operating system CLI. Next up I will clone the lab and migrate from static routing to OSPF. Fun stuff.

In the screenshot you can see the route table from JunOS_2 and Linux1 and Linux3 pinging each other across five subnets. Done with GNS3 and VirtualBox. Loving this new laptop, thank you Jess for supporting my studies.

multi-platform lab ping thru


“David Says” – SMART PC USE

I do a lot of basic PC help for friends & family. Sometimes it’s cleaning a virus off, or replacing a failed hardware component. Sometimes I throw my advice out to poor souls asking for help on internet forums. I thoroughly enjoy troubleshooting any sort of computer or network related issue.  If you are a technical person you’ve probably stepped on a few toes or bruised a tender ego here and there throughout your travels through the nasty terrain of the do-it-all help desk guy.   It’s hard to offer advice while keeping oneself  in check as to not offend people who are prone to destroying their expensive machines through ignorance and neglect. Given that,  I’m going to do a best-effort in this write up to hit all the points of hardware, software & network do’s and don’ts as well as operational best practices for people at home who have ever found themselves buried within a crippling computer problem and no idea how they got there all while try my best not to offend anyone in the process. This is a broad generic overview for computing applications that can be applied to all users regardless of OS.

I’ll break this down into a few sections: Hardware Safety, Virus/Malware Prevention, Operational Best Practices.


Heat Damage
One of the most common problems I find people having is heat damage. Heat damage usually results from air flow blockage, the usual culprit here is dust. Computer equipment (or anything with a cooling fan for that matter) is like a car. You change your oil in your car to keep the engine from being destroyed. Like an oil change, periodic maintenance is required to keep hardware running error free.  Open your machine and clean out the dust. Pay careful attention to the heat sink on your graphics card, processor and power supply. Too much buildup stops airflow and will quickly destroy your hardware. If you can manage, buy a case that has air filtration. You can cut the maintenance intervals to about 6 months.

The 2nd and almost as common issue I see when people come to me with a hardware problem is laptop meltdown. So many people don’t realize that those little vents on the back and bottom of the laptop really are there for a reason. Laptops run HOT under load. Placing a laptop on a cloth surface like a pillow, bed, couch, ~your lap~ or any other kind of vent blocking surface is a surefire way to brick your machine. Games are the worst at generating heat. If you find yourself wanting to play a game on a laptop, put a cookie sheet under it so that the airflow stays open. If you value your hardware, buy a USB powered laptop cooler with a metal surface & fans.  If you’re laying on your bed with your laptop propped up on a pillow, running around that BF3 map shooting your buddies and suddenly you see graphics artifacts blow up all over the screen you’re too late.. it’s fried.

Bump Damage
I get a lot of pleas for help due to hard drive failure. Most of the time in the back of my head when I first hear about a problem likely to be associated with hard drive failure I immediately picture the PC stuffed under a desk where the feet are suppose to go. Most of the time that picture is actuality. Platter hard drives have spinning metallic discs in them with a metal arm floating just a fraction of a hairs width above the surface performing magnetic changes to the disc’s metal. Think of it as a very fast, very small record player. For those of you who have ever seen a record player, you know that if you were to walk up and kick it during operation your fine listening experience would not only be interrupted, but your record will likely suffer some damage. The same thing applies, albeit in much smaller scale, to hard drives. If you regularly tilt, bump, kick & move your PC while it’s on.. stop doing that. You are greatly shortening the lifespan of your investment.  Move the PC somewhere safe & out of the way.

Pest Damage
Unfortunately this issue is more common than one would ever want to acknowledge. I can happily say that I have never had any friends or family have this problem, but I have in my travels of tech work run into this issue many, many times.  Roaches. Mice. Crickets. Roaches. Roaches. Roaches. If you live in a place of filth with your PC near your pile of dirty plates and sacks of half eaten fast food  there’s a good chance that when your PC abruptly turns off one day, it’s due to the mountain of decomposing roach corpses and feces building up on your hardware components. Roach poop is acidic and will eat through your costly investment. If you fall into this category, please do not ever call a technician to your home. Do not ever bring your PC into a fix-it shop for repair – not only will they refuse to help you but will literally throw it out onto the concrete in a plastic trash sack. This type of damage can be easily prevented by major lifestyle changes.


90% of software related issues are due to virus, mal-ware, ad-ware & scare-ware. All of these are easily preventable with a combination of user education and proper software maintenance.

Keep your software up to date
Some viruses spread through direct network access with an infected machine. These infected machines blast out their infectious code to other machines with the hope that a portion of the targets will be vulnerable to the specific software flaw (exploit) that will allow it to continue the growth of the virulent online entity most commonly refereed to as a botnet. There is one blatantly obvious and one not-so-obvious method of protection against this type of issue.

  • Update your software – For windows users, this can be as easy as turning on automatic windows updates.. However… I highly advise that you do not put your hard work solely in the hands of an automated process. Do your part and check to make sure that it is indeed performing the update functions. As often as you can, (max once per week), manually perform an update function. For windows users this means opening up internet explorer and going to & clicking the next buttons to verify that all security patches have been applied. These patches protect you from already known internet viruses (worms). This does not however mean that you are fully protected. These worms are able to stick around because the bad guys are able to identify exploitable flaws in software products faster than the product vendors can. (An exploitable flaw that has yet to have a patch to fix it is referred to as a ‘zero day exploit’)
  • NAT – Network Address Translation. Do not ever, EVER plug your PC directly into your cable or DSL modem. Always utilize a home router either wired and/or wireless between your local network (PC(s)) and your internet service provider’s equipment. Why? Because you introduce NAT’ing into the equation. These devices query your ISP for an IP address. This IP address is public. In order to understand how this works you must be knowledgeable about the difference between public and private subnets. Once you have read up on the differences on the two, you will understand that data destined for a private IP address cannot traverse the internet. Your home router receives the public IP address assigned from your ISP and uses it on the “outside” interface (the port on the home router that plugs into the cable/DSL modem). The router then creates its OWN separate group of IP addresses that it then passes out to devices inside your local network, such as your PC. The nice thing about this process is that these “inside” IP addresses are private. So, what that all boils down to is this – an attacking machine on the internet cannot ever, EVER send ANY data directly to your PC. Boiled down that basically means you’re immune to worm type viruses, hurray!

Do not store emails locally

  •  Use web-mail – most modern email methods these days have some form of web access; use it. Most people who have ever used a computer have the general knowledge that email can be used to send attachments, and that some of these attachments may be viruses. That’s fine and dandy. What people don’t know is that if you use an email client like microsoft outlook express, you don’t even need to open the attachment. Simply selecting the email to display the message body in the viewing area is enough to trigger the viral payload. If you are dead set on storing your email locally you probably want to have antivirus real-time email scanning enabled. BOOOOOO. This slows down your machine, makes your precious games load ever so slowly, and is all around sub-par. Why not use web-mail were you are 1. Immune to locally launched viral payloads, 2. Offloads the antivirus workload to the mail provider (which they do a much better job of than you ever would) and 3. Allows you to check your mail from anywhere, an added bonus.

Don’t fail your stupid check
Here is where I start to loose people. There is something on the internet that I refer to as a “stupid check” Real life examples of a stupid check would be things like:

  1. Looking down the barrel of a gun to see if there is a bullet in there.
  2. Kicking a bee hive because that sounds like a totally awesome thing to do.
  3. Putting your hand down the garbage disposal while it is on.

As you can probably tell, the stupid check is indeed, a separator between those that are stupid and those that are not. While looking down the barrel of a loaded gun is stupid, a 2 year old who’s never seen a gun before cannot be blamed for being stupid in that circumstance. The child simply does not know or understand the consequential actions of their mistake. Much in the same way as the child, new PC owners much of the time simply cannot comprehend when they are about to kick that bee hive until it is too late and the angry swarm is upon them. Here is where close attention should be paid.. You have someone tell you these things and that is good, but where you just go on drooling at your screen & clicking that big red “click here you’re an instant winner” only to realize shortly after that you should not have… you have failed your stupid check. I have not had a virus since 1997 at OU when my dear uncle Steve sent me an email with a picture of an FBI raid, ooo cool huh?! Yea no.. I’ve had 14 years of virus-free PC use without any form of antivirus software in use on my PC whatsoever. Living proof that if you take the appropriate steps to secure your local network, adhere to proper patch maintenance, and pass your stupid checks you will never have issues with harmful software.

Stupid Checks

  • If you don’t know where that link will take you, don’t click it. <– THE #1 STUPID CHECK ON THE PLANET Many browsers are secure, but they cannot stop a user from clicking on a link that directly accesses a virus. This is THE number one way people get infected. Open your eyes and READ the link  you are about to click, if you have no idea where it leads to or something doesn’t look right don’t click it. This applies to phishing attempts as well. That email from your bank asking you to verify your login credentials is NOT YOUR BANK.
  • You are not an instant winner, you are a sucker and if you click it you will certainly be the newest instant looser on your block…
  • Do not download & install ANYTHING from the internet unless you know ABSOLUTELY what you are doing..
  • Do not agree to install that toolbar, it is NOT there to help you, it does not want to be your friend, and it will pave the way for all sorts of other mal-ware to march into your machine.
  • Do not use internet explorer for anything other than … ever
  • Do not EVER let a child touch your machine, they fail every.. single.. stupid.. check.. there… is…………
  • Do not frequent sleazy porn sites
  • Do not participate in illegal file sharing <– THE #2 STUPID CHECK ON THE PLANET, SERIOUSLY PEOPLE…
Examples of stupid checks
If you were to see anything like this pop up on the screen and you fell for it, that was wrong.. don’t do that. Good luck fixing it. If you thought to yourself “ah haaa! I’m not falling for this.. “
and clicked “No” or “Cancel” or “Exit” nice one, you just interacted with the scam and allowed it to install its viral payload, you just failed your stupid check. DON’T CLICK ON ANYTHING IN THE ENTIRE WINDOW. The correct action to take is to press ALT-F4 (this keyboard shortcut is the universal ‘quit program’ combo) on your keyboard to close the window. If the window keeps popping up simply press the power button on your computer until it turns off, turn it back on, and go about your business.  Internet Explorer is especially bad about this, don’t use it. Google chrome on the other hand is not only far less susceptible, but it also warns you of viral sites in real time as you attempt to visit them. This is done courtesy of Google via a repository of known mal-ware sites. Thank you Google.

Operational Best Practices

This topic is subject to much criticism as most of this is ‘my way’ of doing things. I’m not saying that my way is the best way, or that there aren’t other ways that work, but it’s a pretty good gerneric standard for at home computer use.

Backup your data.

  • Never rely on one hard drive. Make copies of your important data (pictures, documents, whatever) to another hard drive. Buy another one if needed.
  • Maintain your backups.

Know where your data is stored.

  • Create a folder in the root of  your hard drive called ARCHIVES. Put everything you have in it. Create sub-folders for pictures, videos, documents, downloads, music & whatever other categories you need. Use them, ignore the microsoft user profile generated “My Documents”, “My Photos”, “My Music”.
  • Copy the entire ARCHIVES folder to your backup drive periodically.
  • Do not ever, EVER keep anything you can’t do without on your desktop.

Keep your service overhead to a minimum

  • Click start, run, type in “msconfig”. Click ok. Click on the startup tab in the upper right corner. Uncheck EVERYTHING. Click ok, Reboot. Repeat as needed.
  • Based on your OS choice, look up a writeup on how to tweak the performance of your chosen operating system. Much of this is simply disabling un-needed system services to speed up the machine.

Install hardware monitoring utilities for temperature and fan control

  • HWMonitor – Shows all of the need-to-know information about your computers operational metrics. Temperature being a key unit here. Don’t let anything get about 70C.
  • Fan Control – Based on your graphics card and/or laptop vendor, download the appropriate fan control tool. NVIDIA and ATI both have these built into the video driver utilities. Crank them up to 100% and leave them that way. Only loosers with crummy sound systems complain about fan noise. Either use headphones, or drown it out with the awesome power of your multi-thousand watt bone crunching sound system. If you’re using the computer without sound, take comfort in the soothing hum of a well cooled machine.
  • Keep your PC (and monitor…) in a well ventilated area.

Install common utilities

  • 7-Zip – open source compression utility, supports 256bit AES encryption
  • Google Picasa – excellent photograph management
  • Google Chrome – my browser of choice
  • LibreOffice – Open source office productivity suite (microsoft office clone)
  • Winamp – Audio/Video Player. The install process for this app is a good example of how good software can come bundled with extra crap, tool bars and advertisement software. Pass your stupid check, make sure you un-check the install options for this garbage!


So there’s this software company over in China that recently had around 6 million email address/passwords leaked to the internet.

Here is a list of the top most common passwords in that list, ranked in order of appearance.

If you use any passwords similar, or the exact same, as the passwords on this list – fix it!

These passwords all have things in common – easily guessable, repeating patterns, simple phrases.

Having used software built to use both brute force based & dictionary based password attacks I can give this piece of advice:

15-25 characters long, at least one capitol, at least one lower case, at least one number, at least one special character, no patterns, no real world words.

A good example of a strong password is    Zingerpop.48$##$

Let me take a moment to break down why that is a strong password.  If i were using a dictionary based attack on this password I would get nowhere. If I were using a brute force attack, I would have to use the lowercase character set(26), the upper case character set(26), the numeric character set(10), and the special character set(32). 26+26+10+32=94. For every “letter” in that password you can have 94 different characters.  Compared to a simple password like apple it is much more secure.

Lets compare:

apple – Using a dictionary attack this password would be cracked in probably under 30 minutes. Using a brute force attack … lets see: 5 chars long. charsets: alpha-lower (26 letters in the alphabet) 26^5=26*26*26*26*26=11,881,376 iterations. Password cracker working at lets say 1500 attempts per minute(basic multi session brute force attempts on say a generic email account from some punk turd’s computer in his mommas basement) = 5.5 days till cracked by brute force, not good. If the password was used for a locally encrypted file, the attack could be executed much much faster and crack it within a few seconds.

Zingerpop.48$##$ – Using a dictionary attack this password would never, ever be cracked. It’s just simply too random & complex. Using a brute force attack… lets see: 16 chars long. charsets: alpha-lower(26), alpha-upper(26), alpha-numeric(10), alpha-special(32) = 94. 94^16=94*94*94*94*94*94*94*94*94*94*94*94*94*94*94*94=3.71574290834’31 iteration attempts. At 1500 attempts per minute it would take 4.71301738755’22 years.. Thats 47,130,173,875,500,000,000,000 years…. 47 sextillion years. That’s a really, really long time.

So, by simply adding a few upper case letters, numbers, special characters & using a proper password length, you can increase the time it takes to crack your password from a week to more time than we  have left in the expected lifespan of our galaxy, the Milky Way.

So, on to the most common passwords list!

(‘123456789’, 235039)
(‘12345678’, 212761)
(‘11111111’, 76348)
(‘dearbook’, 46053)
(‘00000000’, 34953)
(‘123123123’, 20010)
(‘1234567890’, 17794)
(‘88888888’, 15033)
(‘111111111’, 6995)
(‘147258369’, 5966)
(‘987654321’, 5555)
(‘aaaaaaaa’, 5460)
(‘1111111111’, 5145)
(‘66666666’, 5026)
(‘a123456789’, 4435)
(‘11223344’, 4096)
(‘1qaz2wsx’, 3672)
(‘xiazhili’, 3649)
(‘789456123’, 3610)
(‘password’, 3503)
(‘87654321’, 3282)
(‘qqqqqqqq’, 3277)
(‘000000000’, 3176)
(‘qwertyuiop’, 3143)
(‘qq123456’, 3094)
(‘iloveyou’, 3085)
(‘31415926’, 3063)
(‘12344321’, 2985)
(‘0000000000’, 2886)
(‘asdfghjkl’, 2826)
(‘1q2w3e4r’, 2797)
(‘123456abc’, 2581)
(‘0123456789’, 2578)
(‘123654789’, 2573)
(‘12121212’, 2540)
(‘qazwsxedc’, 2516)
(‘abcd1234’, 2397)
(‘12341234’, 2381)
(‘110110110’, 2348)
(‘asdasdasd’, 2298)
(‘22222222’, 2243)
(‘123456’, 2180)
(‘123321123’, 2166)
(‘abc123456’, 2160)
(‘a12345678’, 2138)
(‘123456123’, 2113)
(‘a1234567’, 2108)
(‘1234qwer’, 2100)
(‘qwertyui’, 1989)
(‘123456789a’, 1987)
(‘aa123456’, 1971)
(‘asdfasdf’, 1920)
(‘99999999’, 1891)
(‘999999999’, 1859)
(‘123456aa’, 1859)
(‘123456123456’, 1854)
(‘520520520’, 1699)
(‘963852741’, 1656)
(‘741852963’, 1652)
(‘55555555’, 1652)
(‘33333333’, 1589)
(‘qwer1234’, 1481)
(‘asd123456’, 1384)
(‘77777777’, 1339)
(‘qweasdzxc’, 1316)
(‘code8925’, 1285)
(‘11112222’, 1273)
(‘ms0083jxj’, 1268)
(‘zzzzzzzz’, 1245)
(‘111222333’, 1214)
(‘qweqweqwe’, 1206)
(‘3.1415926’, 1200)
(‘123456qq’, 1183)
(‘147852369’, 1148)
(‘521521521’, 1136)
(‘asdf1234’, 1122)
(‘123698745’, 1111)
(‘1123581321’, 1109)
(‘asdfghjk’, 1058)
(‘q1w2e3r4’, 1054)
(‘12345678a’, 1039)
(‘!@’, 1006)
(‘woaini1314’, 1005)
(‘1234abcd’, 991)
(‘123qweasd’, 988)
(‘1qazxsw2’, 977)
(‘woaiwojia’, 968)
(‘321321321’, 920)
(‘05962514787’, 910)
(‘123456987’, 894)
(‘kingcom5’, 892)
(‘zxcvbnm123’, 882)
(‘5845201314’, 882)
(”, 863)
(‘0987654321’, 853)
(‘wwwwwwww’, 847)
(‘11111111111111111111’, 835)
(‘12345600’, 805)
(‘11235813’, 783)
(‘1q2w3e4r5t’, 777)

Little Manual Subnet Calculation Learning Tool

Here’s how it works:

This little chart applies to any subnet mask, simply take the meaningful octet (the octet that is not 255 or 0) and apply what you need to know, such as:

A host has an IP address of (/27 being CIDR notation – used literally in the syntax of Cisco NX-OS CLI & universally important to know, see here for more info).

We know that it has a sub-net mask of 27 1’s, shown in binary as:


(11111111=128+64+32+16+8+4+2+1=255), so (11100000=128+64+32=224) or, .224… and specifically

So from a manually calculated CIDR notation of /27 we have a sub-net mask of If you are studying to be a network engineer one should just strait up memorize each slash notations /1 – /32 corresponding sub-net mask, but don’t forget where it came from.

So, we have our meaningful octet from our sub-net mask, .224, and from that we can gather from the chart that the mask dictates that the class C sub-net is to be broken down into 8 separate blocks who’s network addresses span 32 IPs. **Remember this does not mean that you have 32 IPs available for hosts to use, the 32nd IP address is the second subnet’s network address, the 64th IP address is the third, and so on. The last IP address in a block is always reserved for that sub-nets broadcast address, and you loose one to the next block’s network address.  So that’s useful, but how are the numbers tied together?

Well, the top line is just powers of 2 starting with 2. Easy enough
The second line shows the value of the broken down binary octet (8 bits per octet with a 1(power on) meaning network bit and a 0(power off) being a host bit.  All 1’s or 0’s are consecutive in sub-net masks, you will never see a 10110101 or anything like it.)
If you had a mask of .224 like above, you have 11100000 (128+64+32) as shown in the chart. The CIDR notation /27 already has 24 single 1’s behind the 3 in the meaningful octet, so you just take 24 & add 3 instead of counting all 27.

The third line shows the actual sub-net mask. It is calculated from adding the block sizes of all columns leading up to the meaningful octet of the sub-net mask.
In the .224 example, this was calculated by adding 128+64+32=224.

So, to write this chart out you don’t need to memorize it. Just know:

1. Powers of 2 starting from 2. (3rd grade math)
2. Binary values of 8 bit numbers used in IP.4 addressing. (Should know this long before you     get to sub-net calculations.)
3. Simple addition. (ask a kinder-gardener if you need help)

I made up this little charge about 4 years ago in preparation for the first Cisco exam I ever took. While it’s very useful to jot down before a test begins on your scratch paper, if you use it in conjunction with your multiples of 16, 32, 64(most common sub-net sizes that require thinking) charts enough during study like I did, you’ll find that you don’t even need the scratch pad.

Memorizing this little chart & being able to recite your multiples tables (see below) is all one needs to do IPv.4 subnet calculations in your head.

16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256