
Lời nói đầu
Bạn có bao giờ tự hỏi tại sao pipeline CI/CD của mình đột nhiên chậm hoặc job deploy thất bại không rõ lý do? Đáp án thường nằm ở networking – yếu tố bị bỏ qua nhưng quyết định sự thành công của hệ thống tự động hóa. Trong bài đầu tiên của series chuyên sâu này, chúng ta sẽ khám phá cơ sở của networking, từ các tầng mạng OSI/TCP/IP đến IP, MAC, và ARP. Hãy sẵn sàng để hiểu mạng theo cách chưa từng có!
Tại sao Networking lại quan trọng?
Trong DevOps, mọi thứ đều xoay quanh tốc độ, hiệu quả và khả năng mở rộng. Nhưng nếu mạng không ổn định, tất cả sẽ sụp đổ. Network không chỉ là kết nối – nó là huyết mạch của pipeline, microservices, và cloud.
- Tối ưu hiệu năng: Giảm latency khi push code lên registry.
- Debug nhanh: Phân biệt lỗi mạng (DNS chậm) hay lỗi ứng dụng.
- Thiết kế bền vững: Đảm bảo hệ thống sống sót qua lỗi mạng.
Ví dụ thực chiến: Một team DevOps gặp lỗi timeout khi deploy artifact lên S3. Sau khi debug, họ phát hiện DNS resolve mất 10 giây do cấu hình sai – một vấn đề mạng đơn giản nhưng làm gián đoạn cả pipeline.
Hiểu networking là bước đầu tiên để làm chủ DevOps. Vậy nó bắt đầu từ đâu?
Các tầng mạng: OSI và TCP/IP
Networking được chia thành các tầng để dễ hiểu và quản lý. Hai mô hình chính là OSI (7 tầng) và TCP/IP (4 tầng).
Mô hình OSI
- Physical: Dây cáp, sóng Wi-Fi – nơi tín hiệu vật lý chạy.
- Data Link: Truyền dữ liệu trong LAN qua MAC address.
- Network: Định tuyến gói tin bằng IP.
- Transport: Điều khiển luồng với TCP/UDP.
- Session: Duy trì phiên kết nối.
- Presentation: Mã hóa, nén dữ liệu.
- Application: HTTP, DNS – nơi người dùng tương tác.
Mô hình TCP/IP
- Link Layer: Gộp Physical + Data Link (Ethernet).
- Internet Layer: IP định tuyến gói tin.
- Transport Layer: TCP/UDP quản lý dữ liệu.
- Application Layer: HTTP, DNS, FTP.
Bảng so sánh:
| Tầng | OSI | TCP/IP | Ví dụ |
|---|---|---|---|
| Application | 7, 6, 5 | Application | HTTP request |
| Transport | 4 | Transport | TCP handshake |
| Network/Internet | 3 | Internet | IP routing |
| Link/Physical | 2, 1 | Link | Ethernet frame |
Ví dụ: Bạn gõ google.com:
- Application: Browser gửi HTTP.
- Transport: TCP chia nhỏ dữ liệu.
- Internet: IP tìm đường đến server Google.
- Link: Ethernet truyền qua router nhà bạn.
Trong DevOps, bạn sẽ debug ở tầng 3 (IP), 4 (TCP/UDP), và 7 (HTTP/DNS) nhiều nhất. Nhưng hiểu tầng thấp giúp bạn xử lý lỗi phần cứng hoặc switch.
IP và MAC: Bộ đôi quyền lực
IP là gì?
- IP (Internet Protocol) là địa chỉ logic của thiết bị (ví dụ:
192.168.1.10). - IPv4: 32-bit, giới hạn 4 tỷ địa chỉ, đang chuyển sang IPv6.
- IPv6: 128-bit (ví dụ:
2001:0db8::1), giải quyết thiếu hụt địa chỉ. - IP riêng:
10.0.0.0/8,192.168.0.0/16cho mạng nội bộ.
MAC Address là gì?
- MAC (Media Access Control) là địa chỉ vật lý, cố định (ví dụ:
00:14:22:01:23:45). - Hoạt động ở tầng Data Link, không vượt qua router.
- Độc nhất cho mỗi card mạng.
Hình dung: IP như số điện thoại thay đổi được, MAC như dấu vân tay của thiết bị.
ARP là gì? Cơ chế kết nối IP và MAC
ARP (Address Resolution Protocol) giải quyết bài toán: “Tôi biết IP, nhưng MAC là gì?”
- Cách hoạt động:
- Máy A gửi broadcast: “Ai có IP 192.168.1.10?”
- Máy B trả lời: “Tôi, MAC là 00:14:22:01:23:45”.
- Máy A lưu vào ARP cache.
- ARP cache: Bộ nhớ tạm lưu cặp IP-MAC, tránh hỏi lại.
Lỗi thực tế: ARP cache lỗi (IP trùng) khiến runner CI/CD gửi dữ liệu sai máy, job thất bại. Dùng arp -a để kiểm tra.

