Podsieci i CIDR — zaawansowane zagadnienia
Opanuj maskowanie podsieci o zmiennej długości oraz notację CIDR, aby planować przestrzeń adresową, obliczać zakresy i efektywnie agregować trasy.
Podsieci i CIDR — zaawansowane zagadnienia to bezpłatna lekcja Linux Networking & TCP/IP for Developers na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Networking & TCP/IP for Developers, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Networking & TCP/IP for Developers zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
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.
Ucz się Linux Networking & TCP/IP for Developers dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 12
- Lekcje
- 48
Często zadawane pytania
Czy lekcja „Podsieci i CIDR — zaawansowane zagadnienia” jest bezpłatna?
Tak — pełny tekst „Podsieci i CIDR — zaawansowane zagadnienia” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Networking & TCP/IP for Developers, przejdź na CoddyKit PRO. Kurs Linux Networking & TCP/IP for Developers zawiera 4 lekcji w sumie.
Co nauczysz się w „Podsieci i CIDR — zaawansowane zagadnienia”?
Opanuj maskowanie podsieci o zmiennej długości oraz notację CIDR, aby planować przestrzeń adresową, obliczać zakresy i efektywnie agregować trasy. Ćwiczysz Linux Networking & TCP/IP for Developers z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Linux Networking & TCP/IP for Developers?
Nie wymagamy żadnego doświadczenia. Linux Networking & TCP/IP for Developers w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Podsieci i CIDR — zaawansowane zagadnienia”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Linux Networking & TCP/IP for Developers?
Tak. Każda lekcja Linux Networking & TCP/IP for Developers zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Adresowanie i koncepcje IPv6
- Zaawansowane protokoły routingu (RIP/OSPF)
- Translacja adresów sieciowych (NAT)
- Podsieci i CIDR — zaawansowane zagadnienia