Ravindra BagaleCourses & study guides English

AWS VPC मध्ये Public आणि Private Subnets कसे बनवायचे

नुसता VPC म्हणजे private IPs ची एक मोठी range. त्यात web, app आणि database servers ठेवायला तो subnets मध्ये विभागायचा, कुठले subnets internet पर्यंत जाऊ शकतात ते ठरवायचं, आणि VPC ला traffic कुठे पाठवायचं ते सांगायचं. हा chapter 10.0.0.0/16 चे /20 subnets binary मध्ये एकामागून एक करतो, AWS overlap होणारे subnets का नाकारतो ते दाखवतो, प्रत्येक Availability Zone मध्ये एक subnet ठेवतो, server चा private IP कुठून येतो ते समजावतो, AWS प्रत्येक subnet मध्ये ठेवत असलेले 5 IPs सांगतो, किती subnets बसतात ते मोजतो, आणि मग internet gateway आणि route tables ने एक subnet public करतो, बाकीचे private राहतात. CIDR basics मागच्या chapter मध्ये आहेत, What Is AWS VPC and How to Calculate CIDR IP Ranges.

या class मध्ये काय शिकणार

  • /20 subnets एकामागून एक, binary मध्ये
  • Shortcut: /20 blocks 16 ने पुढे जातात
  • Overlap होणारे subnets का नाकारले जातात
  • एक subnet एकाच Availability Zone मध्ये राहतो
  • Default VPC आणि त्याचे default subnets
  • Tenancy: default, dedicated instance आणि Dedicated Host
  • Lab: internet gateway कडे route नसेल तर फक्त public IP पुरेसा नाही
  • Private IP ranges (RFC 1918), public IPs आणि DHCP
  • AWS प्रत्येक subnet मध्ये ठेवत असलेले 5 IPs
  • वापरता येणारे IPs, आणि VPC मध्ये किती subnets बसतात
  • Internet gateway: public vs private subnets
  • Route tables: Destination आणि Target, आणि main route table
  • Console मध्ये बनवणं

1. VPC ला subnets का लागतात

का: तीन tiers ना VPC मध्ये वेगवेगळ्या जागा लागतात: web servers internet वरून पोहोचता यायला हवेत, app आणि database servers नाही. Subnet म्हणजे VPC च्या range चा एक block, आणि प्रत्येक subnet ला स्वतःचे rules मिळतात.

या chapter चा plan: VPC 10.0.0.0/16 (65,536 IPs, 10.0.0.0 ते 10.0.255.255), प्रत्येकी 4,096 IPs चे /20 subnets करायचे. /16 आणि /20 कसे मोजायचे ते Worked example: 10.0.0.0/20 and its last IP मध्ये आहे.

Classroom line

How do we decide? It's simple: look at the CIDR block.

2. Subnet 1: 10.0.0.0/20

  1. /20 म्हणजे subnet च्या प्रत्येक IP मध्ये पहिले 20 bits fix: दोन पूर्ण octets आणि 3rd octet चे पहिले 4 bits.
  2. 3rd octet 0 = 0000 0000. त्याचे 4 free bits 1 करा: 0000 1111 = 15.
  3. Subnet 1 = 10.0.0.0 ते 10.0.15.255, 4,096 IPs.

Classroom line

When I convert to binary, the first 20 bits stay fixed in every IP.

3. Subnet 2: शेवटचा IP + 1 पासून सुरू

Rule: पुढचा subnet आधीच्या subnet च्या शेवटच्या IP नंतर लगेच सुरू होतो.

  1. Subnet 1 चा शेवटचा IP: 10.0.15.255. 1 मिळवा: 4th octet परत 0 होतो आणि 3rd 1 ने वाढतो, म्हणजे 10.0.16.0.
  2. Subnet 2 = 10.0.16.0/20. आता त्याचा शेवटचा IP शोधा.
  3. 1 पासून आठ वेळा double करत binary places लिहा: 1, 2, 4, 8, 16, 32, 64, 128. डावीकडून: 128 64 32 16 8 4 2 1.
  4. ज्यांची बेरीज 16 होते ते places निवडा: फक्त 16. म्हणून 16 = 0001 0000.
  5. पहिले 4 bits 0001 ठेवा, शेवटचे 4 bits 1 करा: 0001 1111 = 16 + 8 + 4 + 2 + 1 = 31.
  6. Subnet 2 = 10.0.16.0 ते 10.0.31.255.

Classroom line

Keep doubling until you have done it eight times.

Classroom line

From these, find the numbers whose sum gives this number.

दुसरा /20 subnet, binary मध्ये शोधलेला 1. शेवटच्या IP नंतर सुरू करा: 10.0.15.255 + 1 = 10.0.16.0 10.0.16.0/20 0 0 0 1 128 64 32 16 0 0 0 0 8 4 2 1 2. 3rd octet 16 binary मध्ये: 16 = 0001 0000 16 = 0001 0000 0 0 0 1 128 64 32 16 0 0 0 0 8 4 2 1 3. 4 fixed bits ठेवा, 4 free bits 1 करा: 0001 1111 = 31 0001 1111 = 16+8+4+2+1 = 31 0 0 0 1 128 64 32 16 1 1 1 1 8 4 2 1 4. Range 10.0.16.0 - 10.0.31.255. पुढचा 10.0.32.0 पासून 10.0.16.0 - 10.0.31.255 0 0 0 1 128 64 32 16 1 1 1 1 8 4 2 1 निळे = fixed bits, हिरवे = free bits, नारिंगी = 1 केलेले free bits Shortcut: /20 blocks 3rd octet मध्ये 16 ने पुढे: 0, 16, 32, 48 ...

Figure 1. Animation: 10.0.15.255 + 1 = 10.0.16.0; 16 binary मध्ये 0001 0000; 4 fixed bits ठेवा आणि 4 free bits 1 करा, 0001 1111 = 31; म्हणून subnet 2 म्हणजे 10.0.16.0 ते 10.0.31.255 आणि पुढचा 10.0.32.0 पासून.

4. Subnet 3 आणि shortcut

  1. Subnet 2 चा शेवटचा IP + 1: 10.0.31.255 + 1 = 10.0.32.0.
  2. 32 = 0010 0000. 0010 ठेवा, बाकी 1 करा: 0010 1111 = 32 + 8 + 4 + 2 + 1 = 47.
  3. Subnet 3 = 10.0.32.0 ते 10.0.47.255.

Shortcut: /20 मध्ये 3rd octet चे 4 free bits असतात, म्हणून प्रत्येक block त्याच्या 16 values घेतो. Blocks 0, 16, 32, 48, 64 असे सुरू होतात, आणि प्रत्येक 15 नंतर संपतो.

Subnet CIDR पहिला IP शेवटचा IP
1 10.0.0.0/20 10.0.0.0 10.0.15.255
2 10.0.16.0/20 10.0.16.0 10.0.31.255
3 10.0.32.0/20 10.0.32.0 10.0.47.255
4 10.0.48.0/20 10.0.48.0 10.0.63.255
16 10.0.240.0/20 10.0.240.0 10.0.255.255

Classroom line

You must be able to do this; they ask it in interviews.

5. Overlap होणारे subnets नाकारले जातात

काय: एका VPC चे दोन subnets कुठलाच IP share करू शकत नाहीत. 10.0.0.0/20 असताना 10.0.14.0/24 बनवायचा प्रयत्न केला, तर AWS तो नाकारतो, आणि message सांगतो की CIDR conflicts with another subnet: 10.0.14.0 ते 10.0.14.255 हे 10.0.0.0 ते 10.0.15.255 च्या आत येतात.

कसं टाळायचं:

  1. Subnets क्रमाने करा, प्रत्येक आधीच्या subnet च्या शेवटच्या IP + 1 पासून.
  2. मध्ये gaps सोडू नका. Blocks मधली विचित्र size ची मोकळी जागा नंतर वापरणं अवघड, आणि ते IPs वाया जातात.
  3. तुम्ही design करता त्या प्रत्येक VPC साठी वरच्यासारखं छोटं table ठेवा.

Classroom line

You'll get an IP overlap error.

Classroom line

The IPs in between got wasted, right?

Overlap होणारे subnets नाकारले जातात VPC 10.0.0.0/16 चा 3rd octet 10.0.0.0/20 0 – 15 10.0.16.0/20 16 – 31 10.0.32.0/20 32 – 47 new subnet 10.0.14.0/24 10.0.0.0/20 च्या आत: overlap, नाकारला next free: 10.0.48.0/20 क्रमाने करा, मध्ये gaps नको

Figure 2. 3rd octet वर 10.0.0.0/20 0 ते 15 घेतो, 10.0.16.0/20 16 ते 31 आणि 10.0.32.0/20 32 ते 47. नवीन 10.0.14.0/24 पहिल्या block च्या आत येतो, म्हणून नाकारला जातो; पुढचा मोकळा block 10.0.48.0/20.

6. एक subnet एकाच Availability Zone मध्ये राहतो

काय:

  1. VPC पूर्ण Region वर असतो, पण प्रत्येक subnet बरोबर एकाच AZ मध्ये असतो. Subnet बनवताना AZ तुम्ही निवडता.
  2. नेहमीचा layout: ap-south-1a मध्ये 10.0.0.0/20, ap-south-1b मध्ये 10.0.16.0/20, ap-south-1c मध्ये 10.0.32.0/20.
  3. Server subnet मध्ये launch होतो, म्हणून त्याचा AZ subnet ठरवतो. Servers वेगवेगळ्या AZs मध्ये पसरवायला प्रत्येक AZ मध्ये subnets बनवा.
  4. प्रत्येक tier चे स्वतःचे subnets असू शकतात: web subnets, app subnets आणि database subnets.
VPC पूर्ण Region वर, प्रत्येक subnet एका AZमध्ये Region ap-south-1 VPC 10.0.0.0/16 ap-south-1a 10.0.0.0/20 servers साठी वापरता येणारे: 10.0.0.4 - 10.0.15.254 ap-south-1b 10.0.16.0/20 servers साठी वापरता येणारे: 10.0.16.4 - 10.0.31.254 ap-south-1c 10.0.32.0/20 servers साठी वापरता येणारे: 10.0.32.4 - 10.0.47.254

Figure 3. Region ap-south-1 वर VPC 10.0.0.0/16, प्रत्येक AZ मध्ये एक subnet: 1a मध्ये 10.0.0.0/20, 1b मध्ये 10.0.16.0/20, 1c मध्ये 10.0.32.0/20, प्रत्येकात servers साठी वापरता येणारी range.

7. Default VPC आणि त्याचे subnets

AWS ने तुमच्यासाठी काय बनवलंय: तुमच्या account च्या प्रत्येक Region मध्ये default VPC 172.31.0.0/16 असतो, आणि प्रत्येक AZ मध्ये एक default /20 subnet: 172.31.0.0/20, 172.31.16.0/20, 172.31.32.0/20, वगैरे.

  1. Instance launch करताना subnet निवडला नाही, तर AWS तो एखाद्या default subnet मध्ये ठेवतो.
  2. तो कुठे जाईल ते control करायला launch wizard मध्ये Network settings > Edit उघडा आणि VPC व Subnet निवडा.

तो का असतो: network design न करता पहिल्याच मिनिटाला server launch करता यावा म्हणून. तुमच्या account मध्ये चालू असलेल्या प्रत्येक Region मध्ये AWS हेच network बनवतो.

Default VPC मध्ये काय असतं:

  1. प्रत्येक Region मध्ये CIDR 172.31.0.0/16.
  2. प्रत्येक Availability Zone मध्ये एक default subnet, प्रत्येकी /20. us-east-1 सारख्या 6 AZ असलेल्या Region मध्ये 6 default subnets.
  3. एक internet gateway, आधीच attach केलेला.
  4. Main route table ज्यात 0.0.0.0/0 त्या internet gateway कडे, म्हणून सगळे default subnets public.
  5. सगळं allow करणारा main network ACL, आणि प्रत्येक server ला private IP देणारा DHCP option set.
  6. March 2019 नंतर सुरू झालेले Regions (उदा. Cape Town किंवा Hyderabad) opt-in असतात: तुम्ही account साठी enable करेपर्यंत ते बंद आणि रिकामे राहतात.

Worked example: us-east-1 मधले default /20 subnets

  1. एका /20 मध्ये 2^(32−20) = 2^12 = 4,096 IPs, म्हणजे 3rd octet च्या 16 values.
  2. Subnet 1: 172.31.0.0/20 (172.31.0.0 ते 172.31.15.255).
  3. Subnet 2: 172.31.16.0/20.
  4. Subnet 3: 172.31.32.0/20.
  5. Subnet 4: 172.31.48.0/20.
  6. Subnet 5: 172.31.64.0/20.
  7. Subnet 6: 172.31.80.0/20 (172.31.95.255 ला संपतो).
  8. तुमच्या स्वतःच्या subnet साठी पुढचा free block: 172.31.96.0/20, मग 172.31.112.0/20.
  9. प्रत्येकात usable IPs: 4,096 − 5 = 4,091.

Tenancy: त्याच hardware वर अजून कोण आहे

एक Availability Zone म्हणजे एक किंवा जास्त data centers. Data center मध्ये racks असतात, आणि rack मध्ये physical servers (hosts). तुमचा EC2 instance एका host वर चालतो.

  1. Default (shared) tenancy: तुमचा instance अशा host वर चालू शकतो ज्यावर इतर customers चे instances पण आहेत. प्रत्येक instance वेगळा (isolated) असतो, आणि हा सगळ्यात स्वस्त option आहे. बहुतेक workloads हाच वापरतात.
  2. Dedicated instance: तुमचे instances फक्त तुमच्या account साठी वापरल्या जाणाऱ्या hardware वर चालतात. एखादा rule (compliance) sharing नको म्हणतो तेव्हा वापरा.
  3. Dedicated Host: एक पूर्ण physical server तुम्हाला दिला जातो, आणि तुम्ही तो पाहू आणि control करू शकता. Physical server नुसार मोजल्या जाणाऱ्या software licences साठी वापरा.
  4. Dedicated options महाग असतात, म्हणून rule नसेल तर Default निवडा.

8. Server चा private IP कुठून येतो

  1. Private IP नेहमी server च्या subnet च्या range मधून येतो. 10.0.16.0/20 मधल्या server ला 10.0.16.4 ते 10.0.31.254 मधला IP मिळतो.
  2. तो तुम्ही type करत नाही. VPC ची DHCP service instance ला subnet मधला एक मोकळा address देते, आणि instance तो वापरतो. Launch करताना range मधला एखादा मोकळा IP तुम्ही स्वतः पण निवडू शकता.
  3. घरी addresses कोण देतो ते Who hands out IP addresses मध्ये आहे.

9. Private आणि public IPs

Private IP ranges (RFC 1918): या तीन ranges private networks साठी राखीव आहेत आणि internet वर कधीच वापरल्या जात नाहीत. VPCs साठी याच वापरा.

Range CIDR Size
10.0.0.0 ते 10.255.255.255 10.0.0.0/8 16,777,216
172.16.0.0 ते 172.31.255.255 172.16.0.0/12 1,048,576
192.168.0.0 ते 192.168.255.255 192.168.0.0/16 65,536

Public IPs internet providers आणि clouds च्या मालकीचे असतात. AWS मध्ये server ला तो EC2 च्या public IP pool मधून (auto-assigned) किंवा Elastic IP म्हणून मिळतो (What an Elastic IP is). AWS प्रत्येक public IPv4 address चे तासाप्रमाणे पैसे घेतो, म्हणून फक्त internet वरून पोहोचायला हवं अशाच servers ना तो मिळतो.

Classroom line

You don't get them for free; there are charges.

10. AWS प्रत्येक subnet मध्ये ठेवत असलेले 5 IPs

उदाहरण: subnet 10.0.32.0/20 (10.0.32.0 ते 10.0.47.255):

  1. 10.0.32.0: network address.
  2. 10.0.32.1: VPC router.
  3. 10.0.32.2: Amazon DNS server.
  4. 10.0.32.3: AWS ने पुढच्या वापरासाठी ठेवलेला.
  5. 10.0.47.255: शेवटचा IP. VPC broadcast support करत नाही, म्हणून AWS तो ठेवतो.

म्हणून पहिल्या server ला 10.0.32.4 मिळू शकतो, आणि शेवटचा वापरता येणारा IP 10.0.47.254.

Classroom line

Now five IPs of this one go away.

AWS प्रत्येक subnet चे 5 IPs ठेवतो: 10.0.32.0/20 10.0.32.0 network address 10.0.32.1 VPC router 10.0.32.2 Amazon DNS 10.0.32.3 पुढच्या वापरासाठी 10.0.32.4 पहिला वापरता येणारा ... plain | 10.0.47.254 शेवटचा वापरता येणारा 10.0.47.255 शेवटचा IP, राखीव 4,096 IPs - 5 राखीव = 4,091 वापरता येणारे /24: 256 - 5 = 251 /28: 16 - 5 = 11 /16: 65,536 - 5 = 65,531

Figure 4. 10.0.32.0/20 मध्ये AWS 10.0.32.0 (network), 10.0.32.1 (VPC router), 10.0.32.2 (Amazon DNS), 10.0.32.3 (future use) आणि 10.0.47.255 (शेवटचा IP) ठेवतो. वापरता येणारे: 10.0.32.4 ते 10.0.47.254, 4,096 − 5 = 4,091.

11. वापरता येणारे IPs आणि किती subnets बसतात

वापरता येणारे IPs = एकूण − 5:

Subnet एकूण वापरता येणारे
/16 65,536 65,531
/20 4,096 4,091
/24 256 251
/28 16 11

AWS VPC साठी आणि subnet साठी /16 सगळ्यात मोठा आणि /28 सगळ्यात लहान block allow करतो. VPC ला जास्त हवं असेल तर नंतर जास्तीचे CIDR blocks जोडता येतात.

/16 VPC मध्ये किती subnets बसतात: sizes ने भागा, किंवा 2 चा घात (subnet prefix − 16) वापरा.

  1. /20: 65,536 ÷ 4,096 = 16 (2 चा घात 4).
  2. /22: 65,536 ÷ 1,024 = 64 (2 चा घात 6).
  3. /24: 65,536 ÷ 256 = 256 (2 चा घात 8).

Classroom line

How many subnets can I create inside this VPC?

Mumbai साठी architect चं design:

  1. ap-south-1 मध्ये VPC 172.31.0.0/16.
  2. ap-south-1a मध्ये 172.31.0.0/20, ap-south-1b मध्ये 172.31.16.0/20, ap-south-1c मध्ये 172.31.32.0/20.
  3. प्रत्येकात 4,091 वापरता येणारे IPs, आणि पुढे वापरायला अजून 13 /20 blocks मोकळे.

Classroom line

Who are we? We are the architects.

12. Internet gateway: public आणि private subnets

का: नवीन VPC ला internet कडे जायचा कुठलाच रस्ता नसतो. 3-tier app मध्ये फक्त web tier ला public IPs मिळतात; app आणि database tiers private राहतात.

काय:

  1. Internet gateway (IGW) VPC ला internet शी जोडतो. एका VPC ला एकच internet gateway attach करता येतो.
  2. ज्या subnet चा route table 0.0.0.0/0 internet gateway कडे पाठवतो, तो subnet public. नाहीतर तो private.
  3. म्हणजे "public" आणि "private" या subnet च्या स्वतःच्या settings नाहीत: route table ठरवतो.

Classroom line

Each VPC gets one internet gateway: think of one internet cable going to that VPC's router.

13. Route tables: Destination आणि Target

काय: route table म्हणजे routes ची list. प्रत्येक route ला दोन columns:

  1. Destination: traffic ज्या IP range कडे जातंय ती, CIDR म्हणून.
  2. Target: ते traffic कुठे पाठवायचं.

Public route table:

Destination Target
10.0.0.0/16 local
0.0.0.0/0 igw-0abc (internet gateway)

Private route table:

Destination Target
10.0.0.0/16 local
  1. local route प्रत्येक route table मध्ये असतो आणि काढता येत नाही: VPC चे सगळे subnets एकमेकांशी बोलू शकतात.
  2. अनेक routes match झाले, तर सगळ्यात specific जिंकतो: 10.0.16.7 कडचं traffic public table च्या दोन्ही rows ला match होतं, आणि 10.0.0.0/16 (/16 हा /0 पेक्षा जास्त specific) ते local पाठवतो.
  3. Internet कडचं traffic फक्त 0.0.0.0/0 ला match होतं. Private table मध्ये काहीच match होत नाही, म्हणून ते जात नाही.
Public subnet vs private subnet: फरक route tableचा Internet Internet gateway internet कडे: 0.0.0.0/0 match,IGW कडे VPC 10.0.0.0/16 Public subnet 10.0.0.0/20: web public route table Destination Target 10.0.0.0/16 local 0.0.0.0/0 igw-0abc Private subnet 10.0.16.0/20: app private route table Destination Target 10.0.0.0/16 local ✗ internet कडे: route नाही, जात नाही

Figure 5. Animation: public subnet च्या route table मध्ये 0.0.0.0/0 internet gateway कडे, म्हणून internet traffic त्यातून बाहेर जातं; private subnet च्या route table मध्ये फक्त local route, म्हणून internet traffic ला कुठेच जायला मिळत नाही.

14. Main route table

काय: प्रत्येक VPC ला एक main route table असतो. जो subnet तुम्ही दुसऱ्या route table ला explicitly associate केला नाही, तो आपोआप main वापरतो.

  1. Default VPC: त्याच्या main route table मध्ये 0.0.0.0/0 internet gateway कडे, म्हणून प्रत्येक default subnet public.
  2. नवीन custom VPC: त्याच्या main route table मध्ये फक्त local route, म्हणून प्रत्येक नवीन subnet private पासून सुरू होतो.
  3. चांगली पद्धत: main route table private ठेवा. वेगळा public route table बनवा आणि त्याला फक्त web subnets associate करा. मग कोणी associate करायला विसरलं, तर तो subnet public नाही, private राहतो.

Classroom line

There's one route table that spreads like a virus: the main route table.

Associate न केलेला प्रत्येक subnet main routetable घेतो Default VPC (AWS ने बनवलेला) main route table Destination Target 172.31.0.0/16 local 0.0.0.0/0 igw-... प्रत्येक default subnet तो वापरतो, म्हणून प्रत्येक defaultsubnet public. Custom VPC (तुम्ही बनवलेला) main route table: private ठेवा Destination Target 10.0.0.0/16 local तुमचा public route table Destination Target 10.0.0.0/16 local 0.0.0.0/0 igw-... त्याला फक्त web subnet associate करा.

Figure 6. Default VPC मध्ये main route table 0.0.0.0/0 internet gateway कडे पाठवतो, म्हणून प्रत्येक default subnet public. Custom VPC मध्ये main route table private ठेवा (फक्त local) आणि फक्त web subnet तुमच्या स्वतःच्या public route table ला associate करा.

15. Console मध्ये बनवा

Part A: subnets (मागच्या chapter मधल्या VPC 10.0.0.0/16 मध्ये)

  1. VPC > Subnets > Create subnet. my-vpc चा VPC ID निवडा.
  2. Subnet name web-a, Availability Zone ap-south-1a, IPv4 subnet CIDR block 10.0.0.0/20.
  3. Add new subnet: app-b, ap-south-1b, 10.0.16.0/20.
  4. Add new subnet: db-c, ap-south-1c, 10.0.32.0/20.
  5. Create subnet. प्रत्येक Available IPv4 addresses 4091 दाखवतो.

Part B: internet gateway

  1. Internet gateways > Create internet gateway, नाव my-igw, Create.
  2. Actions > Attach to VPC, my-vpc निवडा, Attach internet gateway.

Part C: public route table

  1. Route tables > Create route table, नाव public-rt, VPC my-vpc, Create.
  2. Routes > Edit routes > Add route: Destination 0.0.0.0/0, Target Internet Gateway my-igw. Save changes.
  3. Subnet associations > Edit subnet associations: फक्त web-a ला tick. Save associations.
  4. web-a select करा, Actions > Edit subnet settings, Enable auto-assign public IPv4 address ला tick, Save, म्हणजे तिथे launch होणाऱ्या servers ना public IP मिळेल.

app-b आणि db-c main route table वरच राहतात: private.

Part D: default VPC मधला lab: फक्त public IP पुरेसा नाही

का: खूप जणांना वाटतं की public IP असलेला server internet वरून reach होतो. हा lab दाखवतो की route table ठरवतो.

  1. Default VPC मध्ये VPC > Subnets > Create subnet: DefaultVpcPublicSubnet, us-east-1a, 172.31.96.0/20.
  2. Add new subnet: DefaultVpcPvtSubnet, us-east-1b, 172.31.112.0/20. Create subnet.
  3. दोन्ही नवीन subnets आपोआप main route table ला attach होतात, आणि default VPC मध्ये तो table public असतो.
  4. Route tables > Create route table: default VPC मध्ये CustomPvtRouteTable. त्यात फक्त local route असतो.
  5. Subnet associations: DefaultVpcPvtSubnet ला CustomPvtRouteTable शी associate करा. DefaultVpcPublicSubnet main route table वरच राहतो.
  6. DefaultVpcPublicSubnet मध्ये t2.micro Amazon Linux 2023 instance public ec2 launch करा, Auto-assign public IP enable करून, आणि SSH (22) व HTTP (80) allow करणाऱ्या security group सोबत.
  7. Connect करा: ssh -i key.pem ec2-user@<public-ip>.
  8. Nginx install आणि start करा:

sudo yum install nginx -y sudo service nginx start

  1. /usr/share/nginx/html/ मध्ये एक page ठेवा आणि browser मध्ये http://<public-ip>/ उघडा: तो load होतो.
  2. DefaultVpcPvtSubnet मध्ये दुसरा instance pvt ec2 launch करा, आणि मुद्दाम इथेही Auto-assign public IP enable करा, त्याच security group सोबत.
  3. ssh -i key.pem ec2-user@<its-public-ip> करून बघा: timeout होतो. Server ला public IP आहे, पण त्याच्या subnet च्या route table मध्ये internet gateway कडे route नाही, म्हणून replies VPC बाहेर जातच नाहीत.
  4. CustomPvtRouteTable मध्ये route add करा: Destination 0.0.0.0/0, Target default VPC चा internet gateway. आता SSH चालतो, आणि Nginx install केल्यावर page load होतो.
  5. तो route परत काढा: page load होणं बंद होतं.

Result: public IP मुळे server ला internet वर address मिळतो. 0.0.0.0/0 → igw route मुळे त्याला बाहेर जायचा रस्ता मिळतो. दोन्ही लागतात.

Classroom line

As soon as you create a new subnet, the main route table attaches to it automatically.

Classroom line

Until there is a route to the internet gateway, your request will never reach that server.

16. काही चुकलं तर

  1. "conflicts with another subnet": नवीन CIDR आधीच्या subnet शी overlap होतोय. तुमच्या table मधून पुढचा मोकळा block घ्या.
  2. CIDR VPC च्या बाहेरचा म्हणून नाकारला: subnet VPC च्या range च्या आत हवा, उदाहरणार्थ 10.0.0.0/16 मध्ये 10.0.x.x.
  3. "Public" subnet मधल्या server पर्यंत पोहोचता येत नाही: त्याला public IP आहे का, subnet च्या route table मध्ये 0.0.0.0/0 IGW कडे आहे का, IGW attach आहे का, आणि security group port allow करतो का ते check करा.
  4. Private ठेवायचा होता तो subnet public झाला: तो public route table ला associate आहे, किंवा main route table मध्ये IGW route आहे. Association दुरुस्त करा.
  5. Subnet मध्ये अजून servers बनत नाहीत: त्यातले वापरता येणारे IPs संपले; AWS ठेवत असलेले 5 लक्षात ठेवा.

Ravindra Bagale's Tip

Console उघडण्याआधी plan कागदावर लिहा: प्रत्येक subnet साठी एक row, त्याचं नाव, AZ, CIDR, पहिला आणि शेवटचा IP, आणि public की private. मग overlap error कधीच येत नाही, आणि server public का आहे असं कोणी विचारलं, तर उत्तर तुमच्या table मधली एक ओळ असतं: त्याचा subnet कुठला route table वापरतो.

17. संपूर्ण class एका page वर

  1. Subnet म्हणजे VPC च्या range चा block; 10.0.0.0/16 चे /20 subnets 3rd octet मध्ये 0, 16, 32 ... पासून सुरू होतात.
  2. पुढचा subnet = शेवटचा IP + 1. Binary: 16 = 0001 0000 → 0001 1111 = 31; 32 = 0010 0000 → 0010 1111 = 47.
  3. Overlap होणारे subnets नाकारले जातात ("conflicts with another subnet"); क्रमाने करा, gaps नको.
  4. प्रत्येक subnet बरोबर एका AZ मध्ये; default VPC 172.31.0.0/16 मध्ये प्रत्येक AZ ला एक default /20.
  5. Server चा private IP त्याच्या subnet मधून, DHCP देतो. Private ranges: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16. Public IPv4 addresses चे पैसे लागतात.
  6. AWS प्रत्येक subnet चे 5 IPs ठेवतो: network, VPC router, DNS, future use, शेवटचा. वापरता येणारे = एकूण − 5: /20 4,091, /24 251, /28 11.
  7. /16 मध्ये 16 × /20, 64 × /22, 256 × /24.
  8. एका VPC ला एक internet gateway. Public subnet = 0.0.0.0/0 → IGW असलेला route table; private = असा route नाही.
  9. Route table columns: Destination (CIDR), Target (local, igw-...).
  10. Explicit association नसलेले subnets main route table वापरतात; custom VPC मध्ये तो private ठेवा.

18. घरी करून बघा

Try at home

Task 1: कागदावर

  1. 10.0.0.0/16 चे पहिले पाच /20 subnets पहिल्या आणि शेवटच्या IP सकट लिहा. 5th check करा: 10.0.64.0 ते 10.0.79.255.
  2. 10.0.0.0/16 चे /22 subnets करा: पहिले तीन लिहा. किती बसतात?

Task 2: console मध्ये

  1. तुमच्या practice VPC मध्ये section 15 प्रमाणे web-a, app-b आणि db-c बनवा.
  2. 10.0.14.0/24 बनवायचा प्रयत्न करा आणि error वाचा.
  3. Internet gateway attach करा, public-rt बनवा, आणि फक्त web-a associate करा.

Task 3: सिद्ध करा

  1. web-a मध्ये एक आणि app-b मध्ये एक छोटा instance launch करा. कुठल्याला public IP मिळतो? Laptop वरून दोघांना SSH करता येतं का?
  2. Clean up: instances terminate करा, subnets delete करा, IGW detach करून delete करा, route table आणि VPC delete करा.

Recap

थोडक्यात

  1. Subnets क्रमाने करा: पुढचा शेवटच्या IP + 1 पासून, आणि /20 blocks 16 ने पुढे.
  2. Subnets overlap होऊ शकत नाहीत, आणि प्रत्येक एका AZ मध्ये राहतो.
  3. AWS प्रत्येक subnet चे 5 IPs ठेवतो, म्हणून /20 मध्ये 4,091 वापरता येतात.
  4. Route table 0.0.0.0/0 internet gateway कडे पाठवतो तेव्हाच subnet public.
  5. Route tables आधी Destination मग Target; local पूर्ण VPC जोडतो.
  6. Main route table private ठेवा आणि web subnets ना स्वतःचा public route table द्या.

सराव Tasks

या scenario बद्दल

Hyderabad Biryani Hub हा हैदराबाद मधला क्लाउड किचन व्यवसाय आहे. Syed Imran त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-2 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.

0 / 12

सोपं /16 मध्ये किती addresses?

का: VPC size ठरवायला ही संख्या लागते.

काय करायचं: Hyderabad Biryani Hub चा VPC 10.152.0.0/16. एकूण किती IP addresses?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं VPC बनवा

का: VPC म्हणजे AWS मधलं तुमचं स्वतःचं private network.

काय करायचं: 10.3.0.0/16 CIDR block असलेला VPC बनवा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Internet gateway बनवा

का: Internet gateway शिवाय VPC मधलं काहीही internet ला पोचत नाही.

काय करायचं: नवा internet gateway बनवा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम एका AZ मध्ये subnet बनवा

का: Subnets VPC range वाटतात व प्रत्येक एकाच AZ मध्ये असतो.

काय करायचं: vpc-0300e2a3f3deadbee मध्ये ap-south-2a मध्ये 10.3.1.0/24 subnet बनवा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम VPC router address शोधा

का: AWS router साठी base+1 राखतो.

काय करायचं: 10.152.4.0/24 मध्ये VPC router साठी AWS कोणता address राखतो?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम AWS /24 subnet मधले usable IPs

का: AWS प्रत्येक subnet मध्ये 5 addresses राखून ठेवतो.

काय करायचं: AWS वर 10.152.1.0/24 subnet मध्ये Hyderabad Biryani Hub servers साठी किती addresses वापरू शकतो?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Internet route जोडा

का: Route table 0.0.0.0/0 internet gateway ला पाठवत असेल तरच subnet "public".

काय करायचं: Route table rtb-030300d2b3c3bb22 मध्ये सगळं internet traffic (0.0.0.0/0) igw-00300d2b3c3aa11 कडे पाठवा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Subnet route table शी जोडा

का: Associate करेपर्यंत subnet main route table वापरतो.

काय करायचं: Subnet subnet-030300d2b3c3bb1 ला route table rtb-030300d2b3c3bb22 शी associate करा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Internet gateway attach करा

का: VPC ला attach केल्याशिवाय gateway काही करत नाही.

काय करायचं: igw-00300d2b3c3aa11 ला vpc-0300e2a3f3deadbee शी attach करा.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Server साठी पहिला usable IP

का: पहिले 4 addresses AWS राखतो.

काय करायचं: AWS वर 10.152.20.0/24 मध्ये server ला मिळणारा पहिला IP?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

अवघड सर्वात लहान prefix निवडा

का: योग्य size मुळे address space वाचतो.

काय करायचं: AWS वर subnet मध्ये 100 servers हवेत. बसणारा सर्वात मोठा prefix number? उदा. /25.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

अवघड /24 चे दोन भाग

का: Public व private subnets एक block वाटून घेतात.

काय करायचं: 10.152.8.0/24 चे दोन समान subnets करा. दोन्ही CIDRs comma ने लिहा.

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

झटपट उजळणी cards

हा chapter दोन मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR त्याचा lesson उघडतो.

AWS reserves 5 IPs in subnet 10.0.0.0/20: .0 network, .1 VPC router, .2 DNS, .3 future use, 10.0.15.255 broadcast.
Card 1 of 5: Subnet मधले 5 reserved IPs · PNG download करा
Public vs private subnet: a public subnet has a route 0.0.0.0/0 to the internet gateway; a private subnet does not.
Card 2 of 5: Public vs private subnet · PNG download करा
Internet gateway: one per VPC, attach it first, then add route 0.0.0.0/0 to the IGW in the public route table.
Card 3 of 5: Internet gateway (IGW) · PNG download करा
Route tables: the local route 10.0.0.0/16 is always there; the public route table adds 0.0.0.0/0 to the internet gateway.
Card 4 of 5: Route tables · PNG download करा
Internet gateway vs NAT gateway: IGW is two-way for public subnets and free; NAT is outbound-only for private subnets and billed hourly.
Card 5 of 5: IGW vs NAT gateway · PNG download करा
उजळणी card: VPC मध्ये /20 subnets कापणं. Subnets overlap होऊ नयेत. प्रत्येक कुठे सुरू होतो ते पटकन कळायला हवं. /20 मध्ये 4096 IPs, म्हणून /16 VPC मध्ये तिसरा number 16 ने वाढतो. 10.0.0.0/20 पासून सुरू करा, प्रत्येक वेळी तिसऱ्या number ला 16 जोडा. प्रत्येक subnet एका AZ मध्ये. VPC 10.0.0.0/16:
उजळणी card: VPC मध्ये /20 subnets कापणं · PNG download करा
उजळणी card: EC2 tenancy. काही companies ना rules किंवा licences मुळे दुसऱ्या customers सोबत hardware share करता येत नाही. Tenancy = physical server कोण share करतं. Default (shared), dedicated instance, किंवा Dedicated Host. VPC मध्ये किंवा launch च्या Advanced details मध्ये निवडा. Rule नसेल तर default ठेवा. Per-socket licence असलेली bank: Dedicated Host. साधी website: default.
उजळणी card: EC2 tenancy · PNG download करा
तुलना: Dedicated instance vs Dedicated Host. Dedicated instance: फक्त तुमच्या account साठी वापरलेल्या hardware वरचा EC2. Dedicated Host: तुम्ही rent करता आणि बघू शकता असा पूर्ण physical server.
तुलना: Dedicated instance vs Dedicated Host · PNG download करा
मुलाखत card: AWS मध्ये /24 subnet मध्ये किती usable IPs?. 251. /24 मध्ये 256 IPs आणि AWS प्रत्येक subnet मध्ये 5 ठेवतं. AWS ते network, VPC router, DNS, future use आणि broadcast साठी वापरतं. 10.0.1.0/24: reserved .0 .1 .2 .3 .255.
मुलाखत card: AWS मध्ये /24 subnet मध्ये किती usable IPs? · PNG download करा
मुलाखत card: EC2 ला public IP आहे तरी पोचता येत नाही. का?. त्याच्या subnet route table मध्ये internet gateway कडे 0.0.0.0/0 route नाही. Internet कडे रस्ता नसेल तर फक्त public IP काही करत नाही. VPC ला IGW attach करा, route add करा; SG मध्ये port पण allow करा.
मुलाखत card: EC2 ला public IP आहे तरी पोचता येत नाही. का? · PNG download करा
मुलाखत card: AWS overlapping subnets का नाकारतं?. सारखे IPs असलेल्या दोन subnets मुळे routing गोंधळतं. 10.0.16.5 कडचा packet नक्की एकाच subnet चा हवा. 10.0.0.0/20 10.0.15.255 पर्यंत; पुढचा 10.0.16.0/20 पासून.
मुलाखत card: AWS overlapping subnets का नाकारतं? · PNG download करा
मुलाखत card: एक subnet दोन Availability Zones मध्ये पसरू शकतो का?. नाही. Subnet नक्की एका AZ मध्ये असतो. High availability साठी दोन AZs मध्ये subnets आणि दोन्हीकडे servers हवेत. public-1a 10.0.0.0/20, public-1b 10.0.16.0/20.
मुलाखत card: एक subnet दोन Availability Zones मध्ये पसरू शकतो का? · PNG download करा

अजून cards: Ravi Sir's Cards: AWS VPC and Subnets.