IPv4 Subnetting and VLSM for ISP Allocations within 80.70.56.0/21

IPv4 Subnetting and VLSM for ISP Allocations within 80.70.56.0/21

Verified Sources
Nov 4, 2026

We are given an ISP block **keyword allocated to the ISP: 80.70.56.0/21. The ISP must allocate subnets to:

  • two organizations each needing 500 addresses,
  • two organizations each needing 250 addresses,
  • three organizations each needing 50 addresses.

We will use keywordVLSM VLSM. The general rule for picking a prefix length /p/p for HH required usable host addresses in IPv4 is:

  • Total addresses in a subnet: 2(32−p)2^{(32-p)}
  • Usable hosts in a subnet: 2(32−p)−22^{(32-p)}-2 (excluding network and broadcast)

Then we compute the range (network IP to broadcast IP) and the unallocated remainder inside the original /21.

A small visual of the subnet math:

Two key terms:

  • keywordNetwork address
  • keywordBroadcast address

Note: The computations below use standard IPv4 host usability (2n−22^{n}-2 for usable). If a problem’s convention differs (e.g., counting total addresses including network/broadcast), the chosen prefix lengths may change.

CIDR Subnetting (VLSM) Walkthrough

Part (i): Number and range of addresses in the ISP block (80.70.56.0/21)

1) Total number of addresses A /21 means 32−21=1132-21=11 host bits, so total addresses in the block are: 211=20482^{11} = 2048

So the ISP block contains 2048 total IP addresses.

2) Usable host addresses Usable IPv4 hosts are: 2048−2=20462048-2 = 2046

So usable hosts in 80.70.56.0/21 are 2046.

3) Determine the block range A /21 subnet has a block size in the last octet of: 256−21 mask shift=2(8−(21−16))=2(8−5)=23=8?256 - 21\text{ mask shift} = 2^{(8- (21-16))} = 2^{(8-5)} = 2^3 = 8?

Let’s do it cleanly by subnetting boundaries:

  • Prefix /21 splits across the second and third octets: /21 means:
    • First 16 bits fixed (first two octets),
    • Next 5 bits (third octet) define subnet increments.
  • In the third octet, subnet increment size is 2(8−5)=23=82^{(8-5)} = 2^{3} = 8. So the third-octet values covered by 80.70.56.0/21 run from:
  • Start third octet = 56
  • End third octet = 56 + 7 = 63

Thus:

  • Network address: 80.70.56.0
  • Broadcast address: 80.70.63.255
  • Range: 80.70.56.0 – 80.70.63.255

Largest-first VLSM selection

When carving a larger block with multiple host requirements, allocate the largest subnets first (500, then 250, then 50). This minimizes fragmentation and simplifies finding remaining space.

Host requirement to prefix mapping (pre-work)

We need prefix sizes that can accommodate the usable hosts.

For 500-address organizations

Find smallest /p/p such that: 2(32−p)−2≥5002^{(32-p)}-2 \ge 500 Try 29−2=512−2=5102^{9}-2=512-2=510 usable ⇒ works. 292^{9} total implies host bits = 9 ⇒ 32−p=932-p=9 ⇒ p=23p=23.

So each 500-address org gets: /23

  • Subnet size total: 29=5122^{9}=512
  • Usable hosts: 512−2=510512-2=510

For 250-address organizations

Need: 2(32−p)−2≥2502^{(32-p)}-2 \ge 250 Try 28−2=256−2=2542^{8}-2=256-2=254 usable ⇒ works. Host bits = 8 ⇒ 32−p=832-p=8 ⇒ p=24p=24.

So each 250-address org gets: /24

  • Total: 28=2562^{8}=256
  • Usable: 256−2=254256-2=254

For 50-address organizations

Need: Try 26−2=64−2=622^{6}-2=64-2=62 usable ⇒ works. Host bits = 6 ⇒ 32−p=632-p=6 ⇒ p=26p=26.

So each 50-address org gets: /26

  • Total: 26=642^{6}=64
  • Usable: 64−2=6264-2=62

Part (ii): Allocate subnets inside 80.70.56.0/21 (VLSM) and compute unallocated ranges

  1. 1
    Step 1

    Begin allocating from the network address 80.70.56.0 upward (common ISP practice for deterministic results).

  2. 2
    Step 2

    Each /23 consumes 512 addresses and spans two /24 blocks (third-octet increment of 2).

  3. 3
    Step 3

    Each /24 consumes 256 addresses (third-octet increment of 1 in this range).

  4. 4
    Step 4

    Each /26 consumes 64 addresses (four /26 blocks fit within a /24).

  5. 5
    Step 5

    After carving all required subnets, list the leftover IP ranges from the next free address up to the /21 broadcast (80.70.63.255).

Actual allocations (ranges)

We will allocate in this order: two /23, then two /24, then three /26, all within 80.70.56.0/21 (80.70.56.0 to 80.70.63.255).

A) Two organizations with 500 addresses each ⇒ two /23 subnets

A /23 starting at 80.70.56.0 covers:

  • third octet: 56 to 57
  • fourth octet: 0 to 255

So Org500-1:

  • Range: 80.70.56.0 – 80.70.57.255
  • Network/Broadcast: 80.70.56.0 / 80.70.57.255

Next available /23 begins at 80.70.58.0.

Org500-2:

  • Range: 80.70.58.0 – 80.70.59.255
  • Network/Broadcast: 80.70.58.0 / 80.70.59.255

After these, the next free address is 80.70.60.0.


B) Two organizations with 250 addresses each ⇒ two /24 subnets

Each /24 starting at 80.70.60.0:

Org250-1:

  • Range: 80.70.60.0 – 80.70.60.255
  • Network/Broadcast: 80.70.60.0 / 80.70.60.255

Next /24: 80.70.61.0

Org250-2:

  • Range: 80.70.61.0 – 80.70.61.255
  • Network/Broadcast: 80.70.61.0 / 80.70.61.255

Next free address becomes 80.70.62.0.


C) Three organizations with 50 addresses each ⇒ three /26 subnets

Within 80.70.62.0/24, a /26 splits as:

  • /26 block size = 64 addresses
  • fourth-octet ranges per /26: .0-.63, .64-.127, .128-.191, .192-.255

Org50-1:

  • Range: 80.70.62.0 – 80.70.62.63

Org50-2:

  • Range: 80.70.62.64 – 80.70.62.127

Org50-3:

  • Range: 80.70.62.128 – 80.70.62.191

After three /26 blocks, the next free block is:

  • 80.70.62.192 – 80.70.62.255 (still available inside the /24) and then everything in 80.70.63.0/24 (also still available).

Allocated subnet sizes vs. required host counts (IPv4 usable hosts)

Using the smallest prefix that satisfies usable-host requirements.

Range of unallocated addresses

The original /21 range is:

  • 80.70.56.0 – 80.70.63.255

Allocated up to:

  • Highest allocated address = 80.70.62.191

So unallocated begins at 80.70.62.192 and continues to 80.70.63.255.

Therefore the unallocated range is:

  • 80.70.62.192 – 80.70.63.255

If you want it split into convenient CIDR-aligned leftover blocks, the leftover space is:

  1. From 80.70.62.192 – 80.70.62.255 (that is one /26)
  2. Plus the entire 80.70.63.0 – 80.70.63.255 (one /24)

So leftover can be expressed as:

  • 80.70.62.192/26
  • 80.70.63.0/24

Common pitfalls and checks

Knowledge Check

Question 1 of 4
Q1Single choice

The ISP block 80.70.56.0/21 contains how many total IPv4 addresses?