Archive for November 23rd, 2015

What is CIDR and VLSM? Are they similar, same, or different?

Monday, November 23rd, 2015

2015-11-23 Initial Post

I've known of these two terms for years now but didn't put too much thought into them until I was reading through the Sybex Todd Lammle CCENT/CCNA book (Dec 2013 edition) recently (I've read through a little of the older editions as well). The book doesn't explain CIDR well and you may walk away thinking that CIDR is just a shorthand notation method for expressing a subnet mask, e.g., use the "slash notation" instead of

Below is a very high level basic overview of the terms.

CIDR (Classless Inter-Domain Routing) is basically a method used by ISPs to allocate public IP addresses that have been subnetted. For example, an ISP may be given and decides to subnet that down to /28 to give smaller blocks to another downstream ISP or directly to a customer. For routing on the Internet, peers view this ISP as being responsible for and anything subnetted from that, thus this keeps the routing tables from getting any larger than if CIDR wasn't used. CIDR uses shorthand "slash" notation for the subnets ( instead of, for example).

You may use CIDR notation without actually having to use CIDR so this is where some people get confused and may think that CIDR itself is just the shorthand notation when in actuality there's a lot more to CIDR.

VLSM (Variable Length Subnet Masking) is normally used for internal (non-Internet routable) IP addresses (, etc.). I'm not really sure when this would be useful in a new network design, but I can see it being useful if a network engineer inherited an inefficiently designed network and then implements VLSM to utilize the address spaces more efficiently without having to re-IP address the entire network.

Classful networking is when the default subnet masks are used. Some older routing protocols such as RIPv1 only understand classful (A, B, and C) networks because they don't send the subnet mask information in their routing updates (doing so is just not a part of the RIPv1 specification). So classful is not "subnet aware."

Classless networking is when subnetting is used, thus you are no longer limited to the standard classes and hence the word "classless" which basically means "class A, B, C, and any of their subnets." RIPv2 supports classless networking since it sends subnet mask information in its routing updates. So classless is "subnet aware."

This Cisco TechNote explains IPv4 subnetting, VLSM, and CIDR: If you read this along with the VLSM section in the Lammle book, the two will help clarify the concept (the Lammle book doesn't explain VLSM very well either).