Wednesday, May 4, 2011


To all of you who have been following my blog, thank you!

I would now like to inform you that my blog has moved. I am now hosting my own website on my own server. You can view the website at
Once you are at the site, click on the "knowledge base" link. That is where my new "blog" style list will be. It is much better organized in my opinion.

Kris Law
KASL Network

Sunday, April 17, 2011

Blackberry OS 6.0: No more Google Sync Duplicates!

Parts of the following information has been taken (and modified) from here:

I have put this information on my blog as to add to my personal collection of useful tips and tricks that apply to my everyday life.

Freedom from Google Sync!
If you are a Blackberry user and have OS version 6.0 (+), there are now native options to synchronize your google contacts and calendar with your Blackberry. You no longer need the terrible duplicate making monster known as Google Sync.

Part I
  • Make sure your contacts and calendar are all synchronized with Google's servers so that you don't lose your important data!
  • Delete Google Sync from your Blackberry
  • Open up "Contacts" and click "Options"
  • Hold down the right-shift button (looks like aA^)
  • While holding down that shift button, type this: RSET
  • It will prompt you to remove all your contacts.
  • Select Yes and let it do its thing
  • Next, do those exact steps, except do it in the calendar app instead of contacts.

Part II
  • Open up your "messages" folder (where all your emails show up), push the blackberry key, Select "options" from the menu
  • Select "email account management"
  • Select your gmail account, then select "edit" from the menu that pops up
  • Scroll to the bottom and select "synchronization options"
  • Check off "calendar" from the list that appears.
  • Scroll down and select save.
  • It may prompt you for your email password, then it takes a minute or two for it to adjust the settings.

Part III
  • Find the options folder (the wrench icon, should be under the 'all' setting on your home screen)
  • Search "default services" and open it
  • Change Calendar (CICAL) to your gmail account
  • Push the blackberry key and select save

Now your Blackberry is set to automatically sync with Google and be duplicate free!

Tuesday, April 12, 2011

Windows: Configure Network Interface in Command Line

Configure Interface with a static IP address:

netsh interface ip set address "Local Area Connection" static 1

Configure interface to use DHCP:

netsh interface ip set address "Local Area Connection" dhcp

Monday, March 21, 2011

Installing Fonts in the Gnome Desktop [The Easy Way]

I found the information on how to do this at The reason I am duplicating it here is because if I don't, with my luck, the website will disappear and we will all be lost forever!

Here we go (if you click the link above, the article is actually longer, but I took the part that actually does the job and pasted it here):

Adding fonts in GNOME

Saturday, July 25th, 2009

  1. Go to your home folder
  2. Enable “Show Hidden Files” option from Nautilus View menu
  3. Then create new folder with name “.fonts” (with dot in front)
  4. Now in new folder copy all your true type fonts
  5. Now restart and new fonts will be in use.
By the way, this is Linux! You don’t have to restart just run`sudo fc-cache -f -v` in a terminal. But you probably already knew that. Easy isn’t it?

Wednesday, March 16, 2011

Cisco IOS Commands to Know (and other stuff)

Random Commands
router# show ip int bri      // show ip interfaces (brief version)
router# era sta              // "erase startup" configuration
router# show ver             // "show version" of operating system, etc

Assign IP Address:
router# int fa0/0
router# ip address
router# no shutdown          // enable interface

Run a command from any IOS level:
router# do show ip int bri   // the magic command is "do"

Write Router Commands
// copy running-config (in RAM) to the startup-config (in NVRAM (Non-Volatile RAM) so it works after reboot or crash
Router# copy running-config startup-config    // (copy run start)
router# write                // "wr" for short

Backup Router running-config to TFTP server:
router# copy run tftp        // copy "what" "where"
// all you need to know is the IP address

Erase Configuration to load new configuration:
router# erase startup

Restore NVRAM after erase startup:
router# reload

Restore Router running-config from TFTP server:
// first you must reconfigure the IP address for the router
router# copy tftp run        // copy "where" "what"

Erase Operating System from Router
router# copy flash tftp      // backup OS
// enter the filename of the OS (usually *.bin)

Restore OS to Router
router# copy tftp flash      // will be the same *.bin that you backed up

Monday, March 14, 2011

7 Steps to Router Heaven

1. Name your router:
router> enable // (ena) enable the router
router# configure terminal // (config t) go into configuration mode
router(config)# hostname B1 // assign hostname to router
B1(config)# no hostname // remove hostname from router

2. Enable passwords:
// Enable password for Console 0
B1(config-line)# line con 0 // tell it you're configuring console 0
B1(config-line)# password cisco // assign the password to console 0
B1(config-line)# login // set password
B1(config-line)# no logging synchronous // (no logging sync) Do not log error messages

// Enable password for Telnet (sessions 0 through 5)
B1(config-line)# line vty 0 5 // 0 5 == virtual terminals 0 through 5
B1(config-line)# password cisco // assign password to vty 0-5
B1(config-line)# login // set password
B1(config-line)# exit // get out of password set

B1(config)# enable password cisco // enables normal login password
B1(config)# enable secret cisco // enables encrypted password (never other passwords!)

3. Configure Network Interfaces
B1(config)# interface s0/0 // (int s0/0) configure interface serial fa0/0
B1(config-if)# ip address // (ip add) give IP address
B1(config-if)# no shutdown // (no shut) turn on the interface
B1(config-if)# clock rate 500000 // set clock rate for DCE interface

4. Description of Interfaces
B1(config-if)# description fa0/0 Lan Building 1 Connection   // describe interface fa0/0
B1(config-if)# exit // exit the config-if and back to config

5. Message of the Day
B1(config)# banner motd #Unlawful Use of this Router will get you TERMINATED!!!!!# // warns you that you're trying to login

B1(config)# banner login #You are logged into this router now!#  // tells you that you're logged in

6. Turn on/off services/daemons
B1(config)# no ip domain-lookup // turn off domain lookup service (DNS)
B1(config)# ip host B1  // add routes to the host table
B1(config)# exit

7. Test the router from another router!!!
B2# ping B1 // ping the router
B2# telnet // telnet into the router

Other useful tips:
B1# ? // gives you list of available commands
B1# banner ? // gives you list of commands to use with banner

Saturday, March 12, 2011

How fast is the internet?

Did you all know that a bit can travel approximately 2,118.33 miles in one second on a 1 Gbps network? That's 8" per nanosecond (10,000,000,000th of a second or 10^-9 seconds). 8^9 is the amount of inches in 2,118.33 miles.

An ethernet speed of 1 Gbps is equal to one bit time (1 nanosecond (ns)). 

At 10 Mbps, bit time is 100. It is 10 at 100 Mbps, and .1 at 10 Gbps. 

That means that on a 10 Gbps network, a bit could travel 21,183.3 miles in one second.

 (None of this applies if I did the math wrong...)

Saturday, February 19, 2011

Wonderful External USB 3.0 Hard Drive

For those of you who are doing your courses that involve virtual machines, you may find that virtual machines tend to "blow up" as you tweak them in your labs, and they also take up enormous amounts of disk space. In my case, I am doing all of my labs on my personal notebook computer. I have the following specs in my notebook:
  • Dell XPS L501X - 15.6" WLED Screen
  • 640GB 7200 RPM Hard Disk Drive
  • 2GB Nvidia GT 435M Video Card
  • 8GB DDR3 RAM
  • USB 3.0 and eSATA
When you are completed with a lab, it is good to back up your virtual machine so that if it blows up on the next lab, you can easily restore it from your backup. In my case, I am using a USB 3.0 Western Digital My Passport Essential SE 1TB.

This external hard drive provides the following:
  • Small Size (roughly the size of my tri-fold wallet)
  • Plenty of storage space at 1TB
  • Stays cool even with constant usage
  • Transfer speeds average around 63 MBps on large image files such as virtual hard drives As of Windows 7 Service Pack 1, my speeds have increased to about 74 MBps.
If you are interested in this hard drive, you can find it at, or, in my case, the best price was from It is roughly $106.

Sunday, January 23, 2011


What is subnetting?
Subnetting is a very logical mathematic concept where you divide large computer networks into smaller ones. This allows computer networks to have multiple IP addresses and to communicate directly through routers, switches, hubs, and wide area networks (such as companies with multiple locations). At home, you probably wouldn't have a need to subnet, but if you are in a company or school where there are multiple offices or campuses, then you would need to.

If you have a block of IP addresses that you have purchased from your ISP (Internet Service Provider), and you have 90 computers between two offices that you need to assign IP addresses, Subnetting would be the process you would use to organize the networks so that they could all communicate.

If one office has 30 hosts (hosts are computers, printers, servers, cell phones, or anything else that a human would interact with in everyday office life) and the other office has 60 hosts, here is how you would set up the network so that both offices could communicate with each other:

The network and usable numbers
The IP address block that we purchased from our ISP is Because we have 90 hosts, we purchased a block of 128 IP addresses. This means we can use that block starting at and the last number we can use is at (it doesn't end at 128 because the number 0 is the first number and it counts as one). The following chart is going to help with explaining how we come up with the subnet mask:

mask:  128 192 224 240 248 252 254 255
       --- --- --- --- --- --- --- ---
hosts: 128  64  32  16  8   4   2   1

Notice that on the bottom row, going from right to left, every number goes up by the power of two. Next, notice that every number on the bottom row, if added to the number directly above it, is equal to 256. 2^0=1, 2^1=2, 2^2=4, etc.

If you take that table and put the exact same table to the right - three times, then you have the graphical version of a subnet mask. All of the numbers in the bottom row add up to 255. If you were to use binary to write out the number 255, it would be 8-bits. That is, 11111111. If you were to take away six bits from the right, you would have 64 - it would look like this: 11000000.

Subnetting in binary
A subnet mask of (which would consist of only one host on the whole network) would look like this in binary: 11111111.11111111.11111111.11111111

If you had 64 hosts on the network, including the network ID and the broadcast IP, you would get rid of (or turn off) the numbers smaller than 64 on the table. In binary, if you want to "turn off" something, you would change it to a 0. So - using the table, you can see that 64 is equivalent to the mask of 192. Since we don't have less than 64 hosts, we don't need the numbers to the right of 64. Therefore, we can 0 out all the numbers to the right of 64. Now our subnet mask looks like this: 11111111.11111111.11111111.11000000 - this equals Notice that there are 26 binary digits turned on (remember 1 = on), and there are 6 turned off. This means that you are in a 26-bit network - this is displayed as

What you will never see
You will never see a subnet mask of or any other number that does not end with a number on the top row of the chart. This is just another part of the logic of the network engineers who created this whole scheme of numbers. Also, if you create a network, you will always use the amount of hosts that are on the table as well. Keep in mind that you always need to add two to the amount of hosts you need because you need room for the subnet ID and broadcast address. The amount of available hosts will be 2^6-2 (6 is indicating the amount of bits borrowed - in the example above, the 6 zero's are the bits borrowed).

Rounding up
Because we have 60 hosts on one subnet and 30 on the other (as mentioned at the top of the page), we would still use a block of 64 for the 60 hosts. We would use a block of 32 for the 30 hosts. We would do this because that is how networks are set up. In some cases, an ISP may give you other random numbers, but if we go by the book, we don't do random numbers. We only do block sizes that are listed on that chart above.

The formula in more detail
There is a formula for subnetting that you can use in place of binary or charts. Remember the "power of two" that I mentioned above? If you have 30 hosts, and you know you need to round up to 32 to make room (as described in the above paragraph), you would use the formula 2^5 (2 to the power of 5 = 32). If you go back to the chart and, from the right, count to 32 (starting at 2, not 1 - because this is the power of two which wouldn't start at one), you would get 5! You had to get rid of 5 numbers to get to the number 32. If you were to use binary, the number 32 would be 11100000 - notice there are 5 zero's?

If I was to wright out the whole subnet mask, you would have (remember that the mask above the hosts on the chart is what you use in correlation to the hosts. If you didn't have the chart, you could subtract 32 from 256 and you would still have 224. Or, for the 60 hosts (rounded up to 64), you could subtract 64 from 256 and you would get 192.

Putting the numbers together
Now that you know how to write 64 and 32 in binary, look at how many 1's are in each. 64 has two 1's and 32 has three 1's. If you were to write out the whole subnet mask for 64, you would see twenty-six 1's: 11111111.11111111.11111111.11000000. This is a 26-bit subnet. If we were to tell another person how big our subnet was, we could tell him or her that the first block is (you would call that a "slash 26 subnet" - or, as my instructor called it, a "wack 26 network") and they would know there were 62 or less hosts on the network - plus the subnet ID of 0 and the broadcast of 63. They would immediately know what the subnet mask was

Once we have used all 64 hosts on that network, we will have used through (pay attention to the 4th octet - that is the number after the 3rd dot. For the other 30 hosts, we would just continue on - starting at and stopping at Our hosts can use the numbers 65 through 92 (remember 64 is reserved as the subnet ID and 93 is the broadcast). 

If you write out the binary for 32 hosts, you have 11111111.111111111.11111111.11100000. This is a 27-bit subnet. We would write the network as if we were starting the last number. This means the subnet mask for the 32 hosts is

Now you also would have two routers to join these networks if they were at different campuses. You would connect the routers via a point-to-point connection. This basically means that the routers have a small subnet of their own. Because there are two routers, and because we follow the rule of "leave room for two more," we will create a block of 4 for the routers to join. Since we have a block of 128 IP address (from the very beginning where we had 90 hosts - which means we have to use a block of 128), we still have room. In the chart below, I will simply add the routers to the bottom line.

The network plan
Here is a chart with the subnets that we just planned out:

Hosts  Subnet           Subnet Mask      Usable IP Range   Subnet ID   Broadcast
  64    0           63
  32   64          93
   4   94          97

Putting the network together
Now that we have planned out the network, all we have left to do now is configure the devices accordingly. See the image below (created with Cisco's Packet Tracer - if this is not allowed by some licensing, let me know and I will create the image some other way):