Phân Tích User-Agent
Giải mã bất kỳ chuỗi User-Agent — trình duyệt, phiên bản, OS, thiết bị, engine, bot. Tự điền UA của bạn. Cho analytics, QA, triage bot.
Phân Tích User-Agent - Phát Hiện Thông Tin Trình Duyệt
Header User-Agent là chuỗi nhận dạng nhỏ mà mọi client HTTP gửi cùng mỗi request để cho server biết phần mềm nào đang hỏi. Trông như 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36' — một định dạng nhiều lớp cố ý gây nhầm lẫn, phát triển ngẫu nhiên qua 30 năm khi mỗi trình duyệt mới cố gắng giả danh trình duyệt thống trị trước đó để tương thích (mọi trình duyệt hiện đại vẫn giả là Mozilla và hầu hết vẫn tuyên bố di sản WebKit/Safari ngay cả khi chạy Chromium hoặc Gecko). Bên dưới nghi lễ, bốn mảnh thông tin hữu ích thường có mặt: TRÌNH DUYỆT (Chrome, Firefox, Safari, Edge, Opera, Brave, Samsung Internet, cộng crawler như Googlebot/Bingbot/GPTBot), PHIÊN BẢN của nó (major.minor thường tương quan với mức bản vá bảo mật), HỆ ĐIỀU HÀNH (Windows 11, macOS Sonoma, iOS 17, Android 14, distro Linux, ChromeOS), và LOẠI THIẾT BỊ (desktop / phone / tablet / smart TV / bot). Parser này trích xuất tất cả những thứ này từ bất kỳ chuỗi UA bạn dán, cộng ENGINE render bên dưới (Blink cho trình duyệt Chromium, Gecko cho Firefox, WebKit cho Safari, Trident/EdgeHTML cho MS legacy). Nhấp 'Dùng User-Agent Của Tôi' để kiểm tra trình duyệt hiện tại của BẠN gửi gì. Hữu ích cho dashboard analytics, triage báo cáo bug, điều tra log, phát triển bộ chặn nội dung, và xác nhận quy tắc phát hiện phía server hoạt động như mong đợi.
User-Agent string là gì?
User-Agent (UA) string là một định danh văn bản mà trình duyệt và các clients khác gửi đến web servers với mỗi HTTP request. Nó chứa thông tin về:
- Tên và phiên bản trình duyệt (Chrome 120, Firefox 121, Safari 17)
- Hệ điều hành và phiên bản (Windows 11, macOS 14, Android 13)
- Loại thiết bị (desktop, mobile, tablet)
- Rendering engine (Blink, Gecko, WebKit)
- Kiến trúc platform (x64, ARM)
Servers sử dụng thông tin này để cung cấp nội dung phù hợp, phát hiện khả năng và tạo trải nghiệm tối ưu cho các trình duyệt và thiết bị khác nhau.
Làm thế nào để sử dụng công cụ này?
Sử dụng parser rất đơn giản:
1. Nhấp 'Dùng User-Agent Của Tôi' để tự động điền User-Agent của trình duyệt hiện tại
2. Hoặc paste bất kỳ chuỗi User-Agent nào vào trường input
3. Nhấp 'Phân Tích' để phân tích chuỗi
4. Xem thông tin chi tiết về browser, OS, thiết bị và platform
Công cụ tự động phát hiện và trích xuất tất cả thông tin liên quan từ chuỗi User-Agent.
Thông tin nào có thể được phát hiện?
Parser trích xuất:
- Trình duyệt: Chrome, Firefox, Safari, Edge, Opera, Internet Explorer và nhiều hơn
- Phiên bản trình duyệt: Số phiên bản chính và phụ
- Hệ điều hành: Windows, macOS, Linux, Android, iOS, ChromeOS
- Phiên bản OS: Số phiên bản cụ thể khi có sẵn
- Loại thiết bị: Desktop, Mobile, Tablet hoặc Bot/Crawler
- Platform: Chi tiết kiến trúc và platform
- Rendering Engine: Blink, Gecko, WebKit, Trident
Tất cả thông tin được parse từ định dạng chuỗi User-Agent.
Tại sao websites cần thông tin User-Agent?
Websites sử dụng dữ liệu User-Agent cho:
- Tối ưu nội dung: Phục vụ phiên bản mobile hoặc desktop
- Tương thích: Áp dụng các fixes hoặc tính năng đặc thù cho browser
- Phân tích: Theo dõi thống kê sử dụng browser và OS
- Bảo mật: Phát hiện và chặn bots độc hại
- Testing: Xác minh tương thích đa trình duyệt
- Progressive Enhancement: Bật tính năng dựa trên khả năng
- A/B Testing: Test các phiên bản khác nhau cho browsers khác nhau
Tuy nhiên, User-Agent sniffing nên được sử dụng cẩn thận vì có thể không đáng tin cậy. Feature detection thường được ưa chuộng hơn để xác định khả năng của trình duyệt.
User-Agent có thể bị giả mạo không?
Có, chuỗi User-Agent có thể dễ dàng bị thay đổi hoặc giả mạo:
- Extensions trình duyệt có thể thay đổi User-Agent
- Developer tools cho phép User-Agent tùy chỉnh
- Công cụ tự động và bots thường fake User-Agents
- Trình duyệt tập trung vào privacy có thể dùng User-Agents chung
Do đó:
- Không bao giờ chỉ dựa vào User-Agent cho bảo mật
- Đừng dùng nó cho quyết định quan trọng
- Coi nó như gợi ý, không phải bằng chứng chắc chắn
- Dùng feature detection khi có thể
- Kết hợp với các phương pháp phát hiện khác cho kiểm tra quan trọng
User-Agent tốt nhất được dùng cho analytics, tối ưu nội dung và phát hiện thiết bị chung, không phải cho xác thực hay bảo mật.

Client Hints là gì và tại sao thay thế chuỗi User-Agent?
Chuỗi User-Agent là gánh nặng về quyền riêng tư và độ tin cậy: chúng phơi bày nhiều thông tin hơn analytics cần, kích hoạt fingerprinting (kết hợp UA, kích thước màn hình, font, múi giờ nhận diện duy nhất hầu hết trình duyệt), và dễ dàng giả mạo. Từ 2020 Google đã dần đóng băng chuỗi User-Agent trong Chrome (loại bỏ số phiên bản minor, phiên bản OS chính xác, và model thiết bị) và thay thế bằng User-Agent Client Hints (UA-CH), một hệ thống mới được chuẩn hóa thành RFC 9651 năm 2023. Server gửi header phản hồi Accept-CH liệt kê hint nào muốn ('Accept-CH: Sec-CH-UA-Platform-Version, Sec-CH-UA-Model'), và trong request tiếp theo trình duyệt gửi CHỈ những điểm dữ liệu cụ thể đó dưới dạng header request Sec-CH-UA-* riêng biệt. Điều này cho site dữ liệu thực sự dùng trong khi hạn chế fingerprinting thụ động. Hint mặc định (luôn gửi) bao gồm Sec-CH-UA (danh sách brand entropy thấp), Sec-CH-UA-Mobile (boolean), Sec-CH-UA-Platform (họ OS). Hint entropy cao yêu cầu Accept-CH opt-in rõ ràng. Firefox và Safari chậm hơn trong việc áp dụng nhưng theo pattern tương tự. Với UA parsing, điều này có nghĩa: trong 2025-2026 chuỗi User-Agent dần ít cung cấp thông tin, và analytics hiện đại phải tiêu thụ header Sec-CH-UA-* cùng với nó.
Làm sao phát hiện bot và crawler từ chuỗi User-Agent?
Hầu hết crawler hợp pháp tự nhận diện rõ ràng. Các pattern nhận diện phổ biến: 'Googlebot' (Google Search), 'Bingbot' (Bing), 'YandexBot' (Yandex), 'Baiduspider' (Baidu), 'DuckDuckBot' (DuckDuckGo), 'facebookexternalhit' (preview link), 'Twitterbot' (preview link), 'LinkedInBot' (preview link), 'GPTBot' / 'OAI-SearchBot' (training OpenAI và browsing ChatGPT), 'ClaudeBot' / 'anthropic-ai' (Claude của Anthropic), 'Google-Extended' (opt-out training Bard/Gemini), 'CCBot' (Common Crawl, cung cấp nhiều dataset AI). Tất cả đều chứa substring 'bot', 'crawler', 'spider' hoặc 'fetcher' ở đâu đó — một regex không phân biệt hoa thường /bot|crawler|spider|fetcher|wget|curl/i bắt >95% trong một lần quét. Để xác thực (một số kẻ xấu giả UA của bot hợp pháp để vượt paywall), luôn kết hợp matching UA với xác thực DNS đảo: IP Googlebot phân giải ngược về *.googlebot.com hoặc *.google.com; kẻ giả mạo sẽ thất bại kiểm tra này. User-Agent một mình là gợi ý, không phải credential.
Sau khi đã xác định ĐÓ LÀ bot nào (công cụ này giờ nêu tên bot và loại của nó — Tìm Kiếm, AI, Mạng Xã Hội, SEO hoặc Chung), hãy hành động phù hợp: CHO PHÉP các crawler tìm kiếm uy tín (Googlebot, Bingbot) để trang của bạn vẫn được lập chỉ mục; cân nhắc kỹ về crawler AI (GPTBot, ClaudeBot, CCBot, Google-Extended) — chặn chúng trong robots.txt nếu bạn không muốn nội dung của mình bị dùng để huấn luyện mô hình; GIỚI HẠN TỐC ĐỘ các crawler SEO hung hãn (AhrefsBot, SemrushBot, MJ12bot) có thể tăng vọt tải server mà mang lại ít lợi ích SEO cho bạn; và coi các client chung (curl, python-requests, trình duyệt headless) trên các endpoint nhạy cảm là khả năng scraping/lạm dụng đáng để thách thức hoặc giới hạn.
Tại sao Edge, Opera, Brave và Vivaldi lại hiển thị là Chrome trong User-Agent?
Vì tất cả đều dựa trên Chromium: Edge, Opera, Brave, Vivaldi, Arc, Samsung Internet và những trình duyệt khác đều dùng engine Blink của Google, nên User-Agent của chúng luôn chứa 'Chrome/<phiên bản>' để tương thích. Sau đó mỗi trình duyệt thêm token riêng SAU token Chrome — 'Edg/' cho Edge, 'OPR/' cho Opera, 'SamsungBrowser/' cho Samsung Internet — và parser này kiểm tra các token đó trước để báo cáo đúng thương hiệu. Hai lưu ý quan trọng: (1) Brave và Vivaldi CỐ TÌNH KHÔNG thêm token phân biệt vào User-Agent chuẩn (Brave loại bỏ nó để chống fingerprinting), nên chỉ từ chuỗi UA thì trình duyệt Brave hoặc Vivaldi thực sự không thể phân biệt với Chrome thuần — không có cách đáng tin cậy nào để phát hiện Brave chỉ bằng UA; bạn phải dùng API JS navigator.brave hoặc User-Agent Client Hints (Sec-CH-UA liệt kê 'Brave' như một thương hiệu). (2) Số phiên bản Chrome mà các trình duyệt này báo cáo là phiên bản Chromium bên dưới, không phải số phiên bản phát hành riêng của trình duyệt. Hãy coi 'Chrome' trong analytics là 'họ Chromium' trừ khi có token cụ thể hơn.
Làm sao phân biệt Windows 11 với Windows 10 trong chuỗi User-Agent?
Bạn không thể — không thể từ chuỗi User-Agent cũ. Microsoft đã đóng băng token Windows ở 'Windows NT 10.0' cho CẢ Windows 10 lẫn Windows 11, đó là lý do parser này hiển thị phiên bản OS là '10/11'. Không có giá trị Windows 11 trong UA cổ điển. Để phân biệt chúng bạn phải dùng User-Agent Client Hints: yêu cầu hint entropy cao Sec-CH-UA-Platform-Version (gửi 'Accept-CH: Sec-CH-UA-Platform-Version' và đọc header trả về, hoặc gọi navigator.userAgentData.getHighEntropyValues(['platformVersion']) trong JS). Phiên bản nền tảng trả về 13.0.0 trở lên nghĩa là Windows 11; từ 1.0.0 đến 12.x tương ứng Windows 10. Bất kỳ luồng analytics hay QA nào cần phiên bản Windows thật phải thu thập Client Hint này thay vì parse chuỗi UA.
Dữ liệu của tôi có an toàn không?
Có, dữ liệu của bạn hoàn toàn an toàn:
- Tất cả việc parsing diễn ra trong trình duyệt của bạn
- Không có dữ liệu nào được gửi đến server
- Chúng tôi không lưu trữ hay ghi log bất kỳ chuỗi User-Agent nào
- Hoạt động hoàn toàn offline sau khi trang load
- Không theo dõi hay analytics dữ liệu bạn parse
- Xử lý client-side mã nguồn mở
Bạn có thể xác minh quyền riêng tư bằng cách kiểm tra tab network của trình duyệt - không có requests nào được thực hiện khi parsing User-Agents.
Tính Năng Chính
- Phân tích bất kỳ chuỗi User-Agent nào
- Tự động phát hiện User-Agent của trình duyệt hiện tại
- Trích xuất tên và phiên bản trình duyệt
- Phát hiện hệ điều hành và phiên bản
- Xác định loại thiết bị (desktop, mobile, tablet, bot)
- Hiển thị thông tin rendering engine
- Hiển thị kiến trúc platform
- Copy chuỗi User-Agent vào clipboard
- Hỗ trợ tất cả browsers và platforms chính
- Hỗ trợ chế độ tối
- Xử lý 100% phía client - dữ liệu không rời khỏi trình duyệt
- Hoạt động offline sau khi load ban đầu
- Không cần đăng ký
- Thiết kế responsive thân thiện mobile
