Lỗi gặp phải
This site can't be reached.
The connection was reset.
ERR_CONNECTION_RESET
Lỗi này rất khó chịu vì nó khá mơ hồ. Trình duyệt nhận được gói TCP RST trong quá trình bắt tay, hoặc server đã ngắt kết nối trước khi gửi bất kỳ dữ liệu HTTP nào. Nguyên nhân có thể đến từ phía client (trình duyệt, tường lửa, VPN, phần mềm diệt virus), từ mạng (router, ISP, proxy), hoặc từ phía server (ứng dụng crash, quy tắc tường lửa, cấu hình TLS sai).
Nguyên nhân gốc rễ
- Sự cố TCP stack ở trình duyệt hoặc hệ điều hành (socket cũ, trạng thái bị hỏng)
- Phần mềm diệt virus / bảo mật chặn HTTPS và gửi RST
- VPN hoặc proxy làm rớt kết nối
- Tường lửa server chặn IP của bạn hoặc reset kết nối trên cổng 443/80
- Tiến trình server bị crash hoặc khởi động lại giữa chừng
- Cấu hình SSL/TLS sai gây lỗi bắt tay → RST
- MTU không khớp trên đường truyền mạng
- Profile trình duyệt bị hỏng hoặc extension can thiệp vào các request
Fix 1: Reset nhanh phía trình duyệt
Bắt đầu từ đây — giải quyết được khoảng 40% trường hợp.
# Xóa DNS cache
# Windows
ipconfig /flushdns
# macOS
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
# Linux (systemd-resolved)
sudo systemd-resolve --flush-caches
Sau đó xóa socket pool của trình duyệt. Trong Chrome, truy cập:
chrome://net-internals/#sockets
Nhấn Flush socket pools. Xóa DNS tại cùng trang đó:
chrome://net-internals/#dns
Thử truy cập lại trang. Nếu tải được — socket cũ chính là thủ phạm.
Fix 2: Tắt tạm thời phần mềm diệt virus / VPN
Tính năng kiểm tra SSL trong phần mềm diệt virus là nguyên nhân phổ biến đáng ngạc nhiên. Kaspersky, Avast và ESET đều thực hiện MITM kết nối HTTPS của bạn ở cấp độ hệ điều hành. Khi chúng không xử lý được quá trình bắt tay TLS một cách sạch sẽ, chúng gửi RST thay vì dữ liệu.
- Tắt tạm thời phần mềm diệt virus và thử lại
- Nếu tải được — vào cài đặt phần mềm diệt virus và tắt tính năng quét HTTPS/SSL, hoặc thêm trang web vào danh sách ngoại lệ
- Tương tự với VPN: ngắt kết nối, thử lại. Nếu hoạt động, thì quy tắc định tuyến hoặc tường lửa của VPN là vấn đề
Fix 3: Reset network stack trên Windows
Trên Windows, Winsock hoặc cài đặt TCP/IP bị hỏng gây ra lỗi này thường xuyên hơn bạn nghĩ.
# Chạy với quyền Administrator
netsh winsock reset
netsh int ip reset
netsh int tcp reset
ipconfig /release
ipconfig /flushdns
ipconfig /renew
Khởi động lại sau khi chạy các lệnh này. Thao tác này đặt lại toàn bộ network stack về mặc định.
Fix 4: Kiểm tra kích thước MTU
MTU không khớp rất khó phát hiện — kết nối ban đầu ổn nhưng RST khi có gói tin lớn hơn. Kiểm tra bằng lệnh ping với payload lớn:
# Windows
ping -f -l 1472 8.8.8.8
# macOS / Linux
ping -M do -s 1472 8.8.8.8
Nếu lệnh này thất bại với thông báo "Packet needs to be fragmented", MTU của bạn đang đặt quá cao. Giảm xuống 1452 — giá trị chuẩn cho kết nối PPPoE:
# Windows — thay "Wi-Fi" bằng tên interface thực tế của bạn
netsh interface ipv4 set subinterface "Wi-Fi" mtu=1452 store=persistent
# Linux
sudo ip link set dev eth0 mtu 1452
Tìm tên interface của bạn trước:
# Windows
netsh interface show interface
# Linux
ip link show
Fix 5: Chẩn đoán phía server
Nhiều người dùng khác gặp lỗi tương tự? Thì hãy xem xét server. Chạy các lệnh sau để xác định chính xác cái gì đang gửi RST:
# Kiểm tra xem server có đang RST kết nối không
tcpdump -i eth0 'tcp[tcpflags] & tcp-rst != 0' -n
# Kiểm tra tiến trình có đang chạy không
systemctl status nginx # hoặc apache2, ứng dụng của bạn
# Kiểm tra tường lửa có đang reset kết nối không
iptables -L -n -v | grep REJECT
iptables -L -n -v | grep DROP
# Kiểm tra log server tìm lỗi kết nối
tail -f /var/log/nginx/error.log
journalctl -u nginx -f
Các cách fix phổ biến phía server:
- Khởi động lại web server nếu nó bị treo hoặc ở trạng thái zombie
- Kiểm tra
tcp_reset_on_errorvà cài đặt timeout — giá trị quá khắt khe sẽ ngắt kết nối của client chậm sớm - Đứng sau load balancer? Xác minh cấu hình health check. Backend bị đánh dấu "down" sẽ bị reset kết nối ngay lập tức
Fix 6: Sự cố TLS/SSL
Quá trình bắt tay TLS thất bại hầu như luôn kết thúc bằng RST. Kiểm tra trực tiếp từ command line:
# Kiểm tra thủ công quá trình bắt tay TLS
openssl s_client -connect yoursite.com:443 -tls1_2
openssl s_client -connect yoursite.com:443 -tls1_3
# Kiểm tra tính hợp lệ của chứng chỉ
curl -vI https://yoursite.com 2>&1 | grep -E '(SSL|TLS|certificate|expire)'
Chứng chỉ hết hạn, hostname không khớp, hoặc phiên bản TLS không được hỗ trợ đều sẽ hiện ra ở đây. Fix chứng chỉ hoặc cập nhật cấu hình TLS cho phù hợp.
Fix 7: Thử DNS khác
Khó có thể gây RST trực tiếp, nhưng đôi khi DNS của ISP trả về IP xấu và IP đó phản hồi bằng RST. Đáng thử đổi nhanh:
# Windows — qua PowerShell:
Set-DnsClientServerAddress -InterfaceAlias "Wi-Fi" -ServerAddresses ("1.1.1.1","8.8.8.8")
# Linux — sửa /etc/resolv.conf hoặc dùng nmcli:
nmcli con mod "your-connection" ipv4.dns "1.1.1.1 8.8.8.8"
nmcli con up "your-connection"
Kiểm tra sau khi fix
Sau khi áp dụng cách fix, chạy các lệnh sau để xác nhận kết nối thực sự sạch:
# Kiểm tra kết nối cơ bản
curl -v https://yoursite.com
# Xem thời gian bắt tay TCP
curl -v --trace-time https://yoursite.com 2>&1 | head -40
curl hoạt động nhưng Chrome vẫn báo lỗi? Đó là vấn đề riêng của trình duyệt. Thử chế độ ẩn danh trước để loại trừ extension. Nếu chế độ ẩn danh tải được, tắt từng extension một. Vẫn lỗi trong chế độ ẩn danh? Tạo một profile Chrome mới — profile bị hỏng có thể giữ nguyên trạng thái socket qua các phiên làm việc.
Phòng ngừa & Lưu ý
- Tắt tính năng quét SSL của phần mềm diệt virus cho các domain phát triển, hoặc cấu hình ngoại lệ phù hợp
- Trên server, đặt giá trị TCP keepalive và timeout hợp lý — cài đặt quá khắt khe sẽ ngắt kết nối của client chậm
- Theo dõi tỷ lệ reset kết nối của server:
netstat -s | grep reset - Cần kiểm tra xem một IP client có nằm trong dải CIDR được phép không? Subnet Calculator của ToolCraft tính toán ngay mà không cần cài thêm công cụ nào
Checklist nhanh
- Xóa DNS + socket pool trên trình duyệt
- Tắt VPN/phần mềm diệt virus, thử lại
- Chạy Winsock reset (Windows)
- Kiểm tra MTU bằng lệnh ping payload lớn
- Xác minh tiến trình server đang chạy + kiểm tra log
- Kiểm tra quá trình bắt tay TLS bằng openssl
- Thử chế độ ẩn danh / trình duyệt khác

