Подсети и CIDR: углублённое изучение
Освойте маскирование подсетей переменной длины и нотацию CIDR, чтобы планировать адресное пространство, вычислять диапазоны и эффективно агрегировать маршруты.
«Подсети и CIDR: углублённое изучение» — бесплатный урок Linux Networking & TCP/IP for Developers на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Linux Networking & TCP/IP for Developers, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Linux Networking & TCP/IP for Developers содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Why Subnetting Matters
Subnetting splits a large network into smaller, manageable segments. It improves security, performance, and address efficiency.
CIDR (Classless Inter-Domain Routing) replaced rigid class A/B/C boundaries with flexible prefix lengths.
CIDR Notation
A CIDR block is written as address/prefix. The prefix counts the number of leading network bits.
192.168.1.0/24— 24 network bits, 8 host bits10.0.0.0/8— 8 network bits, 24 host bits
The Subnet Mask
A prefix maps directly to a dotted-decimal mask.
/24= 255.255.255.0/26= 255.255.255.192/30= 255.255.255.252
Each set bit in the mask is a network bit.
Counting Hosts
Host count = 2^(host bits) minus 2 (network and broadcast addresses).
/24-> 2^8 - 2 = 254 hosts/26-> 2^6 - 2 = 62 hosts/30-> 2^2 - 2 = 2 hosts (perfect for point-to-point links)
Finding the Network Address
Bitwise-AND the IP with the mask to get the network address. The example below computes it in Python.
import ipaddress
net = ipaddress.ip_network('192.168.5.130/26', strict=False)
print('network:', net.network_address)
print('broadcast:', net.broadcast_address)Determining the Range
For 192.168.5.130/26: block size is 64, so subnets start at .0, .64, .128, .192.
The .130 address falls in the 192.168.5.128/26 subnet (usable .129 to .190, broadcast .191).
Variable-Length Subnet Masking (VLSM)
VLSM lets different subnets use different prefix lengths from one block, matching size to need.
Allocate largest subnets first to avoid fragmentation and wasted address space.
Route Aggregation (Supernetting)
Adjacent subnets can be summarized into one larger prefix, shrinking routing tables.
192.168.0.0/24+192.168.1.0/24->192.168.0.0/23
Aggregation only works when blocks are contiguous and aligned.
Subnetting with Python
The ipaddress module can split a network into smaller subnets automatically.
import ipaddress
big = ipaddress.ip_network('10.0.0.0/24')
for sub in big.subnets(new_prefix=26):
print(sub)Checking Membership
Verify whether an address belongs to a network — essential for ACLs and routing decisions.
import ipaddress
addr = ipaddress.ip_address('10.0.0.45')
net = ipaddress.ip_network('10.0.0.0/26')
print(addr in net)Common Pitfalls
Watch out for:
- Forgetting to subtract network and broadcast addresses
- Misaligned aggregation that overlaps other blocks
- Using
/31links (valid per RFC 3021 for point-to-point) without device support
Quick Check
Test your subnetting math.
Recap
You can now plan address space confidently:
- Read and convert CIDR prefixes and masks
- Calculate network, broadcast, and host ranges
- Apply VLSM to size subnets to need
- Aggregate contiguous blocks to shrink routing tables
- Use Python's
ipaddressmodule for verification
This underpins the IPv6, routing, and NAT topics in this course.
Изучай Linux Networking & TCP/IP for Developers с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 12
- Уроки
- 48
Часто задаваемые вопросы
Урок «Подсети и CIDR: углублённое изучение» бесплатный?
Да — полный текст урока «Подсети и CIDR: углублённое изучение» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Linux Networking & TCP/IP for Developers, подпишись на CoddyKit PRO. Курс Linux Networking & TCP/IP for Developers содержит 4 уроков всего.
Чему я научусь в уроке «Подсети и CIDR: углублённое изучение»?
Освойте маскирование подсетей переменной длины и нотацию CIDR, чтобы планировать адресное пространство, вычислять диапазоны и эффективно агрегировать маршруты. Ты практикуешь Linux Networking & TCP/IP for Developers с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Linux Networking & TCP/IP for Developers?
Предыдущий опыт не требуется. Linux Networking & TCP/IP for Developers на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Подсети и CIDR: углублённое изучение»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Linux Networking & TCP/IP for Developers?
Да. Каждый урок Linux Networking & TCP/IP for Developers включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Адресация и понятия IPv6
- Расширенные протоколы маршрутизации (RIP/OSPF)
- Трансляция сетевых адресов (NAT)
- Подсети и CIDR: углублённое изучение