AWS · मराठी आवृत्ती
1.4 IPv4, CIDR आणि subnetting नीट समजून घेऊ
या page मध्ये
पेन-कागद घेऊन हिशोब करा. IPv4 समजलं की AWS मधले CIDR आणि subnets सोपे होतात.
IPv4 ची रचना
IPv4 मध्ये 32 bits असतात. 8 bits च्या चार octets मध्ये, dot लावून decimal स्वरूपात लिहितो. प्रत्येक octet 0 ते 255:
192 . 168 . 1 . 10
11000000 10101000 00000001 00001010
|<-8 bits->|
|<---------------- 32 bits ---------------->|
एकूण addresses 2^32 ≈ 4.3 billion. Phones, laptops आणि IoT च्या प्रमाणात ही संख्या मर्यादित आहे; private IPs, NAT आणि IPv6 याच कारणासाठी महत्त्वाचे आहेत.
- Network portion म्हणजे कोणतं network — रस्त्याच्या नावासारखं.
- Host portion म्हणजे त्या network मधली machine — घराच्या number सारखं.
Subnet mask हे भाग ठरवतो. 255.255.255.0 मध्ये पहिले 24 bits network चे आहेत.
Classful addressing: जुनी पद्धत, exams मध्ये उपयोगी
| Class | First octet range | Leading bits | Default mask | Networks / Hosts per network | Use |
|---|---|---|---|---|---|
| A | 1 – 126 | 0 | 255.0.0.0 (/8) | 126 / ~16.7 million | Very large networks |
| B | 128 – 191 | 10 | 255.255.0.0 (/16) | 16,384 / 65,534 | Medium networks |
| C | 192 – 223 | 110 | 255.255.255.0 (/24) | ~2 million / 254 | Small networks |
| D | 224 – 239 | 1110 | — | — | Multicast |
| E | 240 – 255 | 1111 | — | — | Experimental / reserved |
Class A/B/C अनुक्रमे मोठ्या/मध्यम/छोट्या networks साठी वापरले जात. Class D multicast आणि Class E experimental/reserved आहे.
127 चं काय?
127.0.0.0/8 loopback साठी reserved. 127.0.0.1 किंवा localhost म्हणजे हीच machine. App 127.0.0.1:3000 वर असेल तर server वरूनच direct access मिळतो; reverse proxy च्या मागे हे उपयोगी आहे.
CIDR — Classless Inter-Domain Routing
जुन्या classes मध्ये addresses वाया जात. फक्त 500 hosts साठीही मोठा Class B block घ्यावा लागे. CIDR मध्ये IP नंतर /n लिहितो; n म्हणजे network bits.
| CIDR | Subnet mask | Total addresses | Usable hosts (traditional) | Usable in AWS subnet |
|---|---|---|---|---|
| /16 | 255.255.0.0 | 65,536 | 65,534 | 65,531 |
| /20 | 255.255.240.0 | 4,096 | 4,094 | 4,091 |
| /24 | 255.255.255.0 | 256 | 254 | 251 |
| /25 | 255.255.255.128 | 128 | 126 | 123 |
| /26 | 255.255.255.192 | 64 | 62 | 59 |
| /27 | 255.255.255.224 | 32 | 30 | 27 |
| /28 | 255.255.255.240 | 16 | 14 | 11 |
| /32 | 255.255.255.255 | 1 | single host | — |
Formula: total addresses = 2^(32 − n). पारंपरिक subnet मध्ये usable hosts = 2^(32 − n) − 2, कारण network आणि broadcast addresses राखीव. /31 point-to-point आणि /32 host route हे विशेष cases आहेत.
AWS मध्ये 5 addresses राखीव
नेहमीच्या AWS IPv4 subnet मध्ये पहिले चार आणि शेवटचा address reserved: network, VPC router (.1), DNS (.2), पुढच्या वापरासाठी (.3) आणि शेवटचा address. त्यामुळे /24 मध्ये 251 usable IPs. या course च्या IPv4 CIDR उदाहरणांमध्ये /16 ते /28 blocks वापरतो.
0.0.0.0/0 म्हणजे सर्व IPv4 addresses. Security group मध्ये anywhere आणि route table मध्ये default route म्हणून दिसेल.
Mauli Dairy चं office network 192.168.1.0/24 असेल तर पहिले 24 network bits आणि शेवटचे 8 host bits; पारंपरिक 254 usable hosts. त्याच आकाराच्या नेहमीच्या AWS subnet मध्ये 251 usable.
Worked example: चार समान subnets
College ला 192.168.10.0/24 मिळालं आहे. चार labs साठी चार समान subnets करू.
- चार subnets साठी दोन bits उधार:
2² = 4. नवीन prefix24 + 2 = /26. - प्रत्येक block
2^(32−26) = 64addresses. Mask255.255.255.192. - शेवटच्या octet मध्ये 64 ने वाढवत subnets लिहा:
| Subnet | Network address | First usable | Last usable | Broadcast | Usable hosts |
|---|---|---|---|---|---|
| Lab 1 | 192.168.10.0/26 | 192.168.10.1 | 192.168.10.62 | 192.168.10.63 | 62 |
| Lab 2 | 192.168.10.64/26 | 192.168.10.65 | 192.168.10.126 | 192.168.10.127 | 62 |
| Lab 3 | 192.168.10.128/26 | 192.168.10.129 | 192.168.10.190 | 192.168.10.191 | 62 |
| Lab 4 | 192.168.10.192/26 | 192.168.10.193 | 192.168.10.254 | 192.168.10.255 | 62 |
192.168.10.100 च्या शेवटच्या octet चे binary 01100100. सुरुवातीचे दोन subnet bits 01 म्हणजे zero पासून मोजलेला subnet 1 — Lab 2, 192.168.10.64/26.
Block size ची trick
Mask मधल्या शेवटच्या non-255 octet साठी 256 − 192 = 64. म्हणून सुरुवात 0, 64, 128, 192.
AWS मध्ये 10.0.0.0/16 VPC चे 10.0.1.0/24 public AZ-a, 10.0.2.0/24 public AZ-b, 10.0.11.0/24 private AZ-a आणि 10.0.12.0/24 private AZ-b असे subnets करू शकतो.
Linux वर ipcalc package वापरून हिशोब तपासा:
ipcalc 192.168.10.64/26
Lab
10.0.0.0/24 चे चार समान subnets करा. Prefix, block size, प्रत्येक network, usable range आणि broadcast लिहा. ipcalc 10.0.0.64/26 ने दुसरं उत्तर तपासा.
IPv4 = 32 bits, /n = network bits आणि block size हे तीन मुद्दे पक्के करा; पुढे IPv6 पाहू.