
Website unreachable? Stop guessing. Validate each layer until you find where the connection breaks.
Khi người dùng báo rằng:
"Website không truy cập được."

Phản xạ đầu tiên của nhiều người là kiểm tra log ứng dụng, khởi động lại service hoặc xem lại phiên bản vừa triển khai.
Tuy nhiên, những hành động này đều đang giả định rằng yêu cầu đã đến được ứng dụng.
Trong thực tế, trước khi một website có thể phản hồi, client và server phải hoàn thành nhiều bước khác nhau: phân giải tên miền, thiết lập kết nối mạng, mở kết nối TCP, khởi tạo phiên TLS và cuối cùng mới trao đổi dữ liệu HTTP.
Điều quan trọng trong quá trình xử lý sự cố không phải là thử thật nhiều lệnh, mà là xác định chính xác kết nối đang dừng ở đâu.
Bài viết này giới thiệu một quy trình chẩn đoán theo từng tầng của kết nối mạng, giúp nhanh chóng khoanh vùng phạm vi điều tra, trước khi chuyển sang kiểm tra Load Balancer, Reverse Proxy hoặc Application.
Trước khi người dùng nhận được một trang web hoặc API Response, client phải hoàn thành nhiều bước theo đúng thứ tự. Nếu một bước thất bại, toàn bộ quá trình sẽ dừng lại và các bước phía sau sẽ không được thực hiện.
Thay vì kiểm tra ngẫu nhiên, chúng ta sẽ xác minh lần lượt từng bước theo đúng quy trình thiết lập kết nối.
Bước | Kiểm tra | Mục tiêu |
|---|---|---|
1 | DNS Resolution | Xác định tên miền có được phân giải thành địa chỉ IP hay không |
2 | Network Connectivity | Xác nhận client có thể kết nối tới địa chỉ IP của máy chủ |
3 | TCP Connection | Kiểm tra cổng dịch vụ có mở và chấp nhận kết nối hay không |
4 | TLS Handshake | Thiết lập kênh truyền được mã hóa giữa client và server |
5 | HTTP Request / Response | Gửi request và nhận phản hồi từ ứng dụng |
Các bước trên tương ứng với các tầng của mô hình OSI như sau:
Thành phần | OSI Layer |
|---|---|
DNS | Layer 7 – Application |
ICMP / IP | Layer 3 – Network |
TCP | Layer 4 – Transport |
TLS | Layer 6 – Presentation |
HTTP / HTTPS | Layer 7 – Application |
Bước 1 — Kiểm tra DNS Resolution (Layer 7)

Mục tiêu Bước đầu tiên là xác nhận domain có được phân giải thành địa chỉ IP hay không.
Nếu DNS không hoạt động, client sẽ không biết cần kết nối đến máy chủ nào và toàn bộ các bước phía sau sẽ không thể thực hiện.
Kiểm tra bằng:
nslookup builder.classmethod.vnHoặc:
dig builder.classmethod.vnNếu DNS thất bại, cần kiểm tra:
DNS Server
DNS Record
TTL
Domain Configuration
Bước 2 — Kiểm tra Network Connectivity (Layer 3)

Mục tiêu Sau khi có địa chỉ IP, bước tiếp theo là xác nhận client có thể kết nối tới máy chủ hay không.
Lệnh phổ biến nhất:
ping builder.classmethod.vnping sử dụng giao thức ICMP để xác minh khả năng kết nối ở tầng Network.
Tuy nhiên cần lưu ý:
✅ Có thể kết nối tới máy chủ
≠
✅ Website đang hoạt động
ping không kiểm tra:
HTTP
HTTPS
TLS
Port
Application
Nếu cần xác định request đang bị gián đoạn ở đâu trên đường truyền, sử dụng:
traceroute builder.classmethod.vnhoặc
tracert builder.classmethod.vn
Thông qua danh sách các hop, chúng ta có thể xác định kết nối đang bị gián đoạn tại mạng nội bộ, ISP hay hạ tầng Cloud.
Bước 3 — Kiểm tra TCP Connection (Layer 4)

Mục tiêu Sau khi xác nhận có thể kết nối tới máy chủ, bước tiếp theo là kiểm tra dịch vụ có đang lắng nghe trên cổng mong muốn hay không.
Ví dụ với HTTPS:
nc -vz builder.classmethod.vn 443Hoặc:
telnet builder.classmethod.vn 443
Nếu kết nối TCP thất bại, nguyên nhân thường nằm ở:
Firewall
Security Group
Network ACL
Port chưa mở
Dịch vụ chưa khởi động
Bước 4 — Kiểm tra TLS Handshake (Layer 6)

Mục tiêu Sau khi TCP được thiết lập thành công, client và server sẽ thực hiện TLS Handshake để tạo một kênh truyền được mã hóa.
Có thể kiểm tra bằng:
openssl s_client -connect builder.classmethod.vn:443Nếu TLS thất bại, nguyên nhân thường liên quan đến:
SSL Certificate
Certificate Chain
TLS Version
Cipher Suite
Bước 5 — Kiểm tra HTTP Request / Response (Layer 7)

Mục tiêu Sau khi TLS hoàn tất, client mới có thể gửi HTTP Request đến ứng dụng.
Kiểm tra nhanh bằng:
curl -v https://builder.classmethod.vnMột số kết quả thường gặp:
Kết quả | Ý nghĩa |
|---|---|
Could not resolve host | Lỗi DNS |
Connection refused | Không thiết lập được TCP |
SSL certificate problem | Lỗi TLS |
HTTP 200 | Dịch vụ hoạt động bình thường |
HTTP 404 | Endpoint tồn tại nhưng tài nguyên không tồn tại |
HTTP 503 | Dịch vụ chưa sẵn sàng |
Nếu nhận được HTTP Response, có thể kết luận rằng request đã đi thành công qua toàn bộ các tầng của hạ tầng mạng và đến được service endpoint.
Nếu website vẫn gặp sự cố, lúc này mới nên chuyển sang điều tra Web Server hoặc Application.
Quy trình khoanh vùng sự cố

Thay vì chạy tất cả các công cụ cùng lúc, hãy kiểm tra theo đúng trình tự.
Mỗi bước thành công sẽ loại bỏ một nhóm nguyên nhân, trong khi mỗi bước thất bại sẽ giúp thu hẹp đáng kể phạm vi điều tra.
Bước thất bại | Phạm vi cần kiểm tra |
|---|---|
DNS Resolution | DNS Server, DNS Record |
Network Connectivity | Routing, ICMP, ISP |
TCP Connection | Firewall, Security Group, Network ACL, Port |
TLS Handshake | SSL Certificate, TLS Configuration |
HTTP Request / Response | Web Server, Reverse Proxy hoặc Application |
Lời kết
Không phải mọi sự cố "Website không truy cập được" đều xuất phát từ ứng dụng.
Việc kiểm tra theo đúng thứ tự DNS → Network → TCP → TLS → HTTP giúp xác định chính xác kết nối đang dừng ở tầng nào, từ đó rút ngắn thời gian xử lý và tránh điều tra sai hướng.
Đây là một quy trình đơn giản nhưng hiệu quả, có thể áp dụng cho hầu hết các hệ thống sử dụng HTTP hoặc HTTPS, đồng thời là nền tảng trước khi đi sâu vào phân tích Load Balancer, Reverse Proxy, Web Server hoặc Application.