Lesson 11 � Intermediate
HTTP, DNS, HTTPS
Web ke core protocols � HTTP request/response, DNS domain se IP mapping, HTTPS secure communication. Har web developer ko ye pata hona chahiye.
HTTP (HyperText Transfer Protocol)
# HTTP: Client-Server protocol
✓ Client (browser) request bhejta hai
✓ Server response bhejta hai
✓ Stateless protocol � har request independent
# Request Method:
GET ✓ Data read karo (idempotent)
POST ✓ Naya resource create karo
PUT ✓ Resource update karo (full replacement)
PATCH ✓ Resource partially update karo
DELETE ✓ Resource delete karo
# Request Structure:
GET /api/users/123 HTTP/1.1
Host: api.example.com
Authorization: Bearer token123
Accept: application/json
# Response Structure:
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 150
{"id": 123, "name": "Vaibhav"}
# Status Codes:
1xx: Informational (100 Continue)
2xx: Success (200 OK, 201 Created, 204 No Content)
3xx: Redirection (301 Moved, 302 Found, 304 Not Modified)
4xx: Client Error (400 Bad Request, 401 Unauthorized, 404 Not Found)
5xx: Server Error (500 Internal, 502 Bad Gateway, 503 Unavailable)
Mental Model: HTTP jaise restaurant order. Tum waiter ko order dete ho (request), waiter kitchen mein jaata hai, kuch der baad khana aata hai (response). Har order independent hai � waiter ko yaad nahi hota ki tumne kal kya order kiya tha (stateless).
DNS (Domain Name System)
# DNS: Domain Name ✓ IP Address mapping
✓ google.com ? 142.250.185.78
✓ Humans ko domain yaad rehta hai, computers ko IP
# DNS Resolution Steps:
1. Browser cache check ✓ mila toh done
2. OS cache check ✓ mila toh done
3. Router cache check ✓ mila toh done
4. ISP DNS server ✓ Still nahi mila?
5. Root DNS server ? .com server batao
6. .com TLD server ✓ google.com ka authoritative server
7. Authoritative server ✓ IP address return karo
8. IP address browser ko mila ✓ Connection establish!
# DNS Record Types:
A ✓ Domain to IPv4 address
AAAA ✓ Domain to IPv6 address
CNAME ✓ Domain alias (www ✓ example.com)
MX ✓ Mail server
TXT ✓ Text records (SPF, DKIM)
NS ✓ Nameserver
PTR ✓ Reverse lookup (IP to domain)
# DNS is UDP-based (port 53)
✓ Fast, lightweight
✓ TCP use jab response > 512 bytes ho
HTTPS (HTTP Secure)
# HTTPS = HTTP + SSL/TLS Encryption
✓ Data encrypted hota hai client-server ke beech
✓ Man-in-the-middle attack se protection
# SSL/TLS Handshake:
1. Client Hello: "Mujhe HTTPS chahiye, ye cipher suites support karte hain"
2. Server Hello: "Ye certificate hai, ye cipher suite select karo"
3. Client Verify: Certificate valid hai? (CA se verify)
4. Key Exchange: Session key banao (asymmetric se share karo)
5. Encrypted Communication: Symmetric encryption se data bhejo
# Certificate:
✓ Digital certificate jo server ki identity verify karta hai
✓ CA (Certificate Authority) issue karta hai
✓ Contains: Domain name, public key, expiry, CA signature
# Why HTTPS?
✓ Data encrypted � password, credit card safe
✓ Authentication � fake server se protection
✓ Data integrity � data tamper nahi hua
✓ SEO boost � Google HTTPS prefer karta hai
# HTTP vs HTTPS:
HTTP: Port 80, No encryption, Fast
HTTPS: Port 443, Encrypted, Slight overhead
Exercise
Question: DNS mein domain name ko IPv4 address se map karne wala record konsa hai? (1-2 words)
Question: HTTPS default port kya hai? (3 digits)
Common mistakes
- HTTP methods confuse: GET = read, POST = create, PUT = full update, PATCH = partial update, DELETE = delete. Yaad karo.
- DNS caching skip: DNS bahut cached hota hai � browser, OS, ISP sab cache karte hain. DNS change hone mein time lagta hai (TTL).
- HTTPS = encryption only: HTTPS sirf encryption nahi � authentication (certificate) aur data integrity bhi deta hai.
- Port numbers mix: HTTP=80, HTTPS=443, SSH=22, FTP=21, DNS=53 � ye yaad karo.
Lesson complete?
HTTP, DNS, HTTPS samajh aa gaya✓ Ab Top 50 CS Questions practice karte hain � interview ready!