'CIDR vs Classful subnetting

I was studying about Classful addressing with subnetting and Classless addressing but I am not able to clearly understand the difference/advantages between the two of them.

Suppose I have a company wants only 32 public IP addresses I can give them a Class C address with a subnet of 27 bits. Similarly I could give them a CIDR subnet to achieve the same result.

|What is my advantage in using CIDR?

| Why was CIDR required even after subnetting can achieve the same result?

| Shortcomings of subnetting with classful addresses.

Thanks in advance.



Solution 1:[1]

You are confusing a couple of concepts. Inter-Domain routing under network classes required that entire address class blocks be assigned to a single entity. There was no way to route inter-domain traffic except by class. You could subnet within a single entity, but you could not divide a classful block between entities.

All CIDR is doing is saying that the classes no longer exist, and you can break up what used to be a classful address block among different entities.

Network classes no longer exist, and they really are studied only for historical purposes. Learn how to subnet using CIDR first (become expert at it), then you can learn about network classes as a history lesson.

  • Class A starts with first bit 0
  • Class B starts with first two bits 10
  • Class C starts with first three bits 110
  • Class D starts with first four bits 1110
  • Class E starts with first four bits 1111

Solution 2:[2]

My friend, classful addressing is basically dividing the total ipV4 range into five classes : Class A Class B Class C Class D Class E whereas CIDR is based on concept of subnetting. In your example , your company wants 32 public ip addresses. When we give them a class C address for example : 192.168.2.0 , their company will be reserved for whole ip addresses in range 192.168.2.1 - 192.168.2.254.But they only want 32 ip addresses which means 223 ip addresses will be wasted. This is the constraint of classful addressing . Now if we look at just subnetting , class c ip address has default subnet of 255.255.255.0 so if we divide the range of 192.168.2.0 in 6 subnets each containing 32 available ip addresses your problem is solved. But, if we take this example to higher level we will require CIDR. According to traditional subnetting, we can not combine the addresses from the networks 192.168.2.0 and 192.168.3.0 because the netmask for class C addresses is 255.255.255.0.However, using CIDR notation, we can combine these blocks by referencing this chunk as 192.168.2.0/23. This specifies that there are 23 bits used for the network portion that we are referring to. With this ,the 24th bit can be either 0 or 1 and it will still match, because the network block only cares about the first 23 digits. CIDR allows us more control over addressing continuous blocks of IP addresses. This is much more useful than the subnetting we talked about originally . Your example only requires subnetting but if we require huge amount of addresses so that we may require to link class C address with class B portion , we will require CIDR.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ron Maupin
Solution 2 Aviral Mittal