logo
GeekFormat

User-Agent 파서

User-Agent 분석

브라우저, OS, 디바이스, 엔진 및 Bot 특성을 식별합니다.

온라인 User-Agent 파서입니다. 복잡한 UA 문자열을 구조화하여 읽기 쉬운 정보로 파싱합니다: 브라우저 이름과 버전(Chrome/Edge/Firefox/Safari/Opera/위챗), 운영체제와 버전(Windows 10/11, macOS, Android, iOS/iPadOS, Linux), 디바이스 타입(데스크톱/모바일/태블릿/크롤러 봇), 렌더링 엔진(Blink/WebKit/Gecko/Trident), CPU 아키텍처(x86/x64/ARM64)를 자동 식별합니다. 봇 감지, 예시 UA, 토큰 분할, JSON 출력이 내장되어 있으며 현재 브라우저 UA를 한 번에 읽어올 수 있습니다. 모든 파싱은 로컬에서 완료되며 개발자의 로그 분석, 호환성 디버깅, 트래픽 식별에 적합합니다.

관련 추천

사용 사례

  • 프론트엔드 개발자가 특정 브라우저 버전이나 운영체제에서의 호환성 버그를 파악할 때 사용자가 피드백한 UA를 파싱하여 환경을 빠르게 특정
  • 백엔드나 인프라 엔지니어가 웹 서버 접근 로그를 분석하여 접속자의 브라우저, 시스템, 디바이스 분포 파악
  • 크롤러, 스파이더, 봇 등 자동화 트래픽을 감지하여 실제 사용자 접속과 악의적인 크롤링 구분
  • UA 내 디바이스 타입(데스크톱/스마트폰/태블릿)에 따라 반응형 대응이나 콘텐츠 배포 최적화
  • CPU 아키텍처(x64/ARM64)에 따라 해당 아키텍처의 소프트웨어 다운로드 패키지나 드라이버 제공
  • 위챗 공식 계정 H5 개발 시 위챗 내장 브라우저 버전과 시스템 환경 확인
  • 테스터가 버그를 재현할 때 자신의 UA 환경 정보를 기록하여 버그 티켓에 첨부, 개발자의 재현 용이
  • 제품 관리자나 운영 담당자가 웹사이트 트래픽 구성을 분석하여 사용자가 주로 어떤 브라우저와 디바이스를 사용하는지 파악
  • Nginx/Apache 등 서버 규칙 설정 시 UA 매칭 규칙이 올바른지 검증
  • 개발자가 UA에 따라 브라우저 기능 폴백 처리를 할 때 파싱 로직이 올바른지 검증
  • 보안 엔지니어가 의심스러운 접속 요청을 분석하여 비정상 UA를 식별하고 차단 규칙 작성
  • 기술 지원이 사용자의 UA를 받아 빠르게 환경을 파악하여 반복적인 커뮤니케이션 비용 절감

주요 기능

  • 7종 이상 브라우저 식별: Chrome, Edge, Firefox, Safari, Opera, 위챗 내장 브라우저를 자동으로 인식하고 버전 번호를 추출
  • 6가지 운영체제 감지: Windows(10/11 자동 판별), macOS, Android, iOS/iPadOS(밑줄 버전 번호 자동 처리), Linux 지원
  • 4가지 디바이스 타입 분류: 데스크톱(Desktop), 모바일(Mobile), 태블릿(Tablet), 크롤러 봇(Bot) 자동 판정
  • 4대 렌더링 엔진 식별: Blink(Chrome/Edge/Opera), WebKit(Safari), Gecko(Firefox), Trident(IE)와 버전 번호 감지
  • CPU 아키텍처 식별: x86, x64/AMD64, ARM64/AArch64 세 가지 아키텍처 자동 감지
  • 크롤러 봇 감지: Googlebot, Bingbot, 스파이더 크롤러, curl/wget, Python requests 등 자동화 트래픽 자동 식별
  • 현재 UA 한 번에 가져오기: 클릭만으로 현재 브라우저의 User-Agent 문자열을 자동 입력하여 빠르게 검사
  • 예시 UA 내장: Chrome/Windows, Safari/iPhone, Googlebot 세 가지 대표 예시를 제공하여 즉시 테스트 가능
  • 토큰 분할 표시: 원본 UA 문자열을 독립된 태그로 분할하여 세그먼트 표시, 사람이 읽고 문제 파악하기 쉬움
  • JSON 구조화 출력: 파싱 결과를 완전한 JSON 형식으로 펼칠 수 있으며 한 번에 복사하여 로그 기록이나 개발 디버깅에 활용 가능
  • 한 번에 복사 기능: 원본 UA 문자열과 구조화된 JSON 결과를 모두 복사할 수 있어 팀과 문제 파악 시 편리
  • 실시간 파싱으로 지연 없음: 입력 후 파싱을 클릭하면 즉시 결과가 표시되며 네트워크 요청 대기 시간 없음
  • 브라우저에서 로컬 처리: 모든 파싱은 로컬 JavaScript로 실행되며 UA 데이터가 서버에 업로드되지 않아 로그 프라이버시 보호
  • 반응형 디자인: PC, 스마트폰, 태블릿 모두에서 사용 가능하며 외출 시에도 빠르게 UA 문제 파악 가능

이용 방법

  1. 파싱하고 싶은 User-Agent 문자열을 입력 상자에 붙여넣거나 '현재 브라우저 UA 사용' 버튼을 클릭하여 자동 입력
  2. '파싱' 버튼을 클릭하면 도구가 로컬에서 즉시 파싱을 완료하고 모든 정보를 구조화하여 표시
  3. 상단 식별 요약 확인: 디바이스 타입 라벨, 봇/정상 트래픽 식별, 브라우저·시스템·엔진·아키텍처 키-값 쌍
  4. 상세 분석이 필요하면 토큰 분할 태그 목록을 표시하거나 JSON을 펼쳐 완전한 구조화 결과 복사

자주 묻는 질문

User-Agent 파서로 어떤 브라우저를 식별할 수 있나요?

주요 브라우저와 그 버전 식별을 지원합니다: Google Chrome, Microsoft Edge, Mozilla Firefox, Apple Safari, Opera, 위챗 내장 브라우저(MicroMessenger). 정규식 매칭으로 메이저 버전 번호를 정확히 추출하여 호환성 파악에 도움이 됩니다.

어떤 운영체제와 버전을 식별할 수 있나요?

Windows(10.0을 Windows 10/11로 자동 판별), macOS(Mac OS X), Android, iOS/iPadOS(밑줄 버전 번호를 점 구분으로 자동 변환, 예: 17_4→17.4), Linux를 지원합니다. Windows와 모바일 시스템에서는 구체적인 버전 번호를 추출합니다.

접속이 크롤러인지 실제 사용자인지 어떻게 판단하나요?

도구는 키워드 매칭으로 봇 트래픽을 자동 감지합니다: bot, crawler, spider, slurp, bingpreview, curl, wget, python-requests, httpclient 등의 키워드가 포함된 UA는 크롤러 봇으로 표시하고 눈에 띄는 경고 라벨을 표시합니다.

어떤 렌더링 엔진을 식별할 수 있나요?

4대 주요 렌더링 엔진 식별을 지원합니다: Blink(Chrome/Edge/Opera 등 Chromium 기반 브라우저), WebKit(Safari 및 iOS 시스템 브라우저), Gecko(Firefox), Trident(구 Internet Explorer). 해당 엔진 버전 번호도 추출합니다.

CPU 아키텍처 식별은 무엇에 유용한가요?

사용자 디바이스가 x86(32비트), x64/AMD64(64비트 데스크톱), ARM64/AArch64(Apple M 시리즈, 스냅드래곤 8cx, 스마트폰 ARM 아키텍처)인지 식별할 수 있습니다. 소프트웨어 다운로드 링크, 드라이버, 네이티브 앱을 제공할 때 아키텍처에 맞는 올바른 설치 패키지를 제공하는 데 매우 유용합니다.

현재 브라우저의 UA를 직접 읽어올 수 있나요?

네. '현재 브라우저 UA 사용' 버튼을 클릭하면 도구가 window.navigator.userAgent를 자동으로 읽어 입력 상자에 입력하며 한 번에 현재 사용 중인 브라우저 환경 정보를 파싱할 수 있습니다.

UA 파싱 결과를 JSON으로 내보낼 수 있나요?

네. 파싱 완료 후 '기술 상세' 영역의 'JSON 펼치기' 버튼을 클릭하면 browser, browserVersion, os, osVersion, deviceType, engine, engineVersion, architecture, isBot 등 모든 필드가 포함된 완전한 구조화 JSON을 표시할 수 있습니다. 복사 버튼을 클릭하면 JSON을 복사할 수 있습니다.

왜 UA 문자열은 이렇게 복잡하고 긴가요?

User-Agent 문자열은 역사적 이유로 많은 호환성 식별자를 포함하고 있습니다: 브라우저가 오래된 웹사이트와 호환성을 유지하기 위해 UA에 여러 식별자를 추가합니다(예를 들어 Chrome은 Safari, AppleWebKit, KHTML like Gecko 등의 역사적 마커를 붙입니다). 시스템 버전, 디바이스 정보, 엔진 버전 등이 더해져 길고 복잡해 보입니다. 파서가 이 정보를 구조화하여 추출해 드립니다.

프론트엔드 호환성 문제 파악에 적합한가요?

매우 적합합니다. 많은 프론트엔드 버그는 특정 브라우저 버전이나 운영체제에서만 발생합니다. 사용자가 피드백한 UA 문자열을 붙여넣기만 하면 사용자가 어떤 브라우저의 어떤 버전, 어떤 시스템을 사용하는지 바로 알 수 있어 사용자에게 환경 정보를 여러 번 묻지 않아도 되며 디버깅 효율이 크게 향상됩니다.

서버 로그의 UA 분석에 사용할 수 있나요?

네. 웹 서버 접근 로그에는 요청마다 User-Agent가 기록됩니다. 로그의 UA 문자열을 복사하여 붙여넣으면 접속자가 어떤 브라우저, 시스템, 디바이스를 사용하는지 바로 파악할 수 있으며 크롤러 트래픽도 식별할 수 있어 트래픽 분석과 비정상 접속 파악에 매우 실용적입니다.

위챗 내장 브라우저의 UA를 식별할 수 있나요?

네. 도구는 MicroMessenger 키워드를 특별히 식별합니다. 위챗 내장 브라우저에서 열린 페이지는 위챗으로 정확히 식별되고 버전 번호가 표시되므로 위챗 공식 계정, H5 이벤트 페이지 개발에 매우 도움이 됩니다.

모바일과 데스크톱 접속은 어떻게 구분하나요?

도구는 키워드로 디바이스 타입을 자동 판정합니다: mobile, iphone, android 등이 포함되면 Mobile(스마트폰); ipad, tablet, kindle 등이 포함되면 Tablet(태블릿); bot/crawler 등에 매치되면 Bot; 나머지는 Desktop(데스크톱)입니다. 결과 영역에 해당 라벨이 표시됩니다.

입력한 UA 문자열은 서버에 업로드되나요?

아니요. 모든 파싱 작업은 완전히 브라우저 로컬에서 JavaScript로 실행됩니다. 입력한 UA 문자열이 네트워크를 통해 어떤 서버로도 전송되지 않으며 페이지를 닫으면 데이터가 삭제됩니다. 민감한 정보가 포함된 내부 로그도 안심하고 파싱할 수 있습니다.

왜 Windows NT 10.0이 Windows 10/11로 표시되나요?

Windows 11은 Windows NT 10.0 커널 버전 번호를 그대로 사용하고 있어 UA만으로는 Windows 10인지 Windows 11인지 구분할 수 없기 때문입니다(마이크로소프트의 의도된 설계). 따라서 도구는 10/11로 표시하며 이는 정상적인 동작입니다.

파싱된 토큰 목록은 무엇에 유용한가요?

토큰 표시는 원본 UA를 괄호, 공백, 세미콜론으로 개별 태그로 분할하여 사람이 빠르게 훑어보고 중요한 정보(Chrome 버전 번호, Windows 버전, Mobile 식별자 유무 등)를 찾기 쉽게 합니다. 긴 전체 문자열을 읽는 것보다 훨씬 직관적입니다.

User-Agent 문자열과 UA 파싱에 대해

User-Agent(약칭 UA)는 HTTP 요청 헤더 필드 중 하나로, 브라우저(또는 크롤러, 기타 HTTP 클라이언트)가 요청을 보낼 때마다 이 문자열을 붙여 서버에 '내가 누구인지' 알려줍니다——브라우저 이름과 버전, 운영체제와 버전, 렌더링 엔진, 디바이스 타입, CPU 아키텍처 등의 정보가 포함됩니다. 서버는 UA에 따라 디바이스에 적합한 콘텐츠를 반환할 수 있으며 개발자는 UA를 사용해 호환성 처리, 트래픽 통계, 크롤러 식별을 자주 수행합니다.

UA 문자열이 길고 어지럽게 보이는 데는 역사적 이유가 있습니다: 브라우저 전쟁 시절, 새로운 브라우저는 오래된 브라우저 스니핑 기반 웹사이트에서도 정상 작동하도록 UA에서 자신이 오래된 브라우저라고 주장했습니다(예를 들어 Chrome은 Safari 마커를 붙이고 Safari는 Gecko 마커를 붙였습니다). 겹겹이 쌓이면서 현대 UA 문자열에는 많은 역사적 호환성 식별자가 포함되어 사람이 직접 읽기 어렵게 되었습니다. UA 파서의 역할은 이 복잡한 문자열을 분해하여 진정으로 유용한 정보를 추출하는 것입니다.

주요 브라우저에는 각각 고정된 형식과 식별자가 있습니다: Chrome은 Chrome/버전 번호를 포함하고 Firefox는 Firefox/버전 번호를 포함하며 Safari는 Version/버전 번호와 Safari/마커를 포함하고 새로운 Edge는 Edg/로 식별되며 위챗 내장 브라우저는 MicroMessenger/로 식별됩니다. 운영체제에도 해당 마커가 있습니다: Windows는 Windows NT+버전, macOS는 Mac OS X+버전, iOS는 CPU iPhone OS+버전, Android는 Android+버전을 사용합니다. 정규식으로 이 키워드를 매칭하면 정확히 식별할 수 있습니다.

렌더링 엔진은 브라우저가 HTML/CSS를 파싱하고 페이지를 렌더링하는 핵심입니다: Chromium 계열 브라우저(Chrome, Edge, Opera 등)는 Blink 엔진을 사용하고 Safari는 WebKit을 사용하며 Firefox는 Gecko를 사용하고 구 IE는 Trident을 사용합니다. 렌더링 엔진을 알면 CSS/JS 호환성 문제를 판단하는 데 도움이 됩니다——동일한 Blink 엔진이라면 Chrome과 Edge의 렌더링 동작은 매우 일치합니다.

크롤러 감지는 UA 파싱의 중요한 용도 중 하나입니다. 검색 엔진 크롤러(Googlebot, Bingbot, Baiduspider), SEO 도구 크롤러, 악의적인 크롤링 프로그램, 명령줄 도구(curl, wget), 스크립트 라이브러리(Python requests)는 모두 UA에 자신의 식별자를 붙이거나 아주 단순한 UA 문자열을 사용합니다. bot, crawler, spider, curl 등의 키워드를 매칭하면 사람이 아닌 접속 트래픽을 빠르게 식별할 수 있습니다.

디바이스 타입 식별은 주로 모바일 식별자에 의존합니다: Mobile, iPhone, Android 등의 키워드가 포함되면 스마트폰; iPad, Tablet, Kindle 등이 포함되면 태블릿; 나머지는 데스크톱 PC입니다. 다만 UA는 위장 가능(User-Agent Spoofing)하다는 점에 주의해야 합니다. 악의적인 크롤러는 정상 브라우저로 위장할 수 있으므로 엄격한 크롤러 방어에는 다른 특징도 결합해야 하며 UA 파싱은 어디까지나 예비 판단으로 사용해야 합니다.

CPU 아키텍처 정보는 오늘날 점점 더 중요해지고 있습니다: Apple M 시리즈 Mac은 ARM64 아키텍처를 사용하고 기존 Intel Mac은 x64를 사용합니다; Windows PC에는 x64와 ARM64가 모두 존재합니다(스냅드래곤 탑재 PC 등); 스마트폰은 모두 ARM64입니다. 소프트웨어를 다운로드할 때 UA에서 사용자 아키텍처를 판단할 수 있다면 해당 설치 패키지(예: .dmg에서 Intel/Mac 버전 구분, .exe에서 x64/ARM64 버전 구분)를 직접 제공하여 사용자 경험을 크게 향상시킬 수 있습니다.

UA 파싱에는 한계가 있다는 점에 주의해야 합니다: UA는 사용자나 플러그인에 의해 수정·위장될 수 있으며 새로운 버전의 브라우저가 UA 형식을 변경하면 정규식이 무효화될 수 있습니다. Windows 11은 NT 10.0 버전 번호를 그대로 사용하고 있어 UA에서 Win10/Win11을 구분할 수 없으며 iOS의 모든 제3자 브라우저(Chrome, Firefox for iOS)는 WebKit 엔진 사용이 강제되어 UA에 Safari 마커가 붙습니다. 본 도구의 파싱은 개발 디버깅, 로그 분석 등 대부분의 시나리오에 적합하지만 보안 요구 사항이 매우 높은 시나리오에서는 IP, TLS 핑거프린트 등 다각적 판단과 결합하여 사용하시기 바랍니다.

术语表

User-Agent (UA)
HTTP 요청 헤더 필드. 클라이언트가 자신의 정체성을 나타내는 문자열로 브라우저, 운영체제, 엔진, 디바이스 등의 정보를 포함하며 HTTP 요청마다 자동 전송됩니다.
Blink 엔진
Google이 WebKit에서 포크한 오픈소스 렌더링 엔진. Chrome, Edge, Opera 등 모든 현대 Chromium 계열 브라우저가 Blink를 사용합니다.
WebKit 엔진
Apple이 개발한 렌더링 엔진. Safari 브라우저와 iOS 시스템 상 모든 제3자 브라우저(Apple 정책 제한)가 WebKit을 사용합니다.
Gecko 엔진
Mozilla가 개발한 오픈소스 렌더링 엔진. Firefox 브라우저와 그 파생 버전이 Gecko를 사용합니다.
Trident 엔진
마이크로소프트 구 Internet Explorer가 사용하던 렌더링 엔진. IE11 이후 EdgeHTML(나중에 Blink로 교체)로 대체되었습니다.
봇/크롤러/스파이더
웹 크롤러/봇. 웹페이지에 자동 접속하는 프로그램. 검색 엔진 크롤러는 웹페이지 인덱싱에 사용되며 악의적인 크롤러는 데이터를 크롤링합니다.
x86/x64/ARM64
CPU 아키텍처: x86은 32비트, x64/AMD64는 64비트 데스크톱(Intel/AMD), ARM64/AArch64는 64비트 ARM(스마트폰, M 시리즈 Mac, 스냅드래곤 탑재 PC)입니다.
크로미움(Chromium)
Google이 주도하는 오픈소스 브라우저 프로젝트. Chrome, Edge, Opera, Brave 등 많은 브라우저가 크로미움 기반으로 개발됩니다.
UA 위장(Spoofing)
브라우저 플러그인, 개발자 도구 또는 코드로 전송되는 UA 문자열을 수정하여 다른 브라우저나 디바이스로 위장하는 것. 테스트나 제한 우회에 자주 사용됩니다.
렌더링 엔진
브라우저 핵심 컴포넌트. HTML/CSS/JavaScript를 파싱하고 페이지를 화면에 렌더링하여 표시하는 역할을 담당합니다. 엔진마다 표준 구현과 호환성에 차이가 있습니다.
MicroMessenger
위챗 내장 브라우저가 UA에서 사용하는 식별 문자열. 위챗 WebView 내에서 페이지가 열렸는지 식별하는 데 사용됩니다.
Windows NT 버전
Windows 커널 버전 번호: NT 6.1=Win7, NT 6.3=Win8.1, NT 10.0=Win10/11(Win11은 이 버전 번호를 그대로 사용)입니다.

주요 브라우저 UA 식별 퀵 레퍼런스

UA 내 키워드로 해당 브라우저를 빠르게 식별할 수 있습니다:

브라우저UA 식별 키워드렌더링 엔진대표 버전 예시
ChromeChrome/xxx (Edg/OPR 제외)BlinkChrome/124.0.0.0
Microsoft EdgeEdg/xxxBlinkEdg/124.0.0.0
FirefoxFirefox/xxxGeckoFirefox/125.0
SafariVersion/xxx + Safari/ (Chrome/ 없음)WebKitVersion/17.4 Safari/604.1
OperaOPR/xxxBlinkOPR/110.0.0.0
위챗 내장MicroMessenger/xxx시스템에 따라 다름MicroMessenger/8.0.49

운영체제 UA 식별 대조표

UA 내 운영체제 대표 마커:

운영체제UA 내 대표 마커버전 설명
WindowsWindows NT 10.0; Win64; x6410.0 = Win10/Win11
macOSMac OS X 14_4_1밑줄을 점으로 변환 (14.4.1)
iOS/iPadOSiPhone; CPU iPhone OS 17_4 like Mac OS XmacOS와 유사, 밑줄을 점으로 변환
AndroidAndroid 14; Pixel 8메이저 버전 번호 직접 추출
LinuxX11; Linux x86_64 또는 Linux aarch64대부분 데스크톱 Linux 배포판

흔히 보이는 크롤러 봇 UA 키워드 속참표

UA에 다음 키워드가 포함되면 기본적으로 봇/크롤러로 판정할 수 있습니다:

타입키워드 예시설명
검색 엔진Googlebot, Bingbot, Baiduspider, Slurp정식 검색 엔진 크롤러, 웹페이지 인덱싱용
SEO/검사 도구bingpreview, AhrefsBot, SemrushBotSEO 도구, 미리보기 생성, 웹사이트 검사
명령줄 도구curl/, Wget/, Python-urllib, HttpClient프로그래머가 사용하는 명령줄/스크립트 HTTP 클라이언트
범용 크롤러 식별자bot, crawler, spider각종 크롤러 범용 식별 단어

Privacy & Security

본 User-Agent 파서는 모든 파싱 작업을 완전히 브라우저 로컬에서 JavaScript로 실행합니다. 입력한 UA 문자열이 어떤 서버에도 업로드되지 않으며 기록·캐시·저장되지 않습니다. 입력과 파싱은 모두 브라우저 메모리 내에서 이루어지며 페이지를 닫거나 새로고침하면 모든 임시 데이터는 자동으로 삭제됩니다. 서버 접근 로그 내 민감한 UA 정보, 내부 시스템 UA도 안심하고 파싱할 수 있으며 유출 위험이 없습니다.

Authoritative References

Troubleshooting

파싱 후 브라우저가 Unknown으로 표시되면 어떻게 해야 하나요?

마이너 브라우저이거나 아주 오래된/아주 새로운 브라우저 버전인 경우 식별되지 않을 수 있습니다. 토큰 분할 영역을 표시하여 수동으로 식별자를 찾거나 UA가 잘리지 않았는지, 오타가 없는지 확인하시기 바랍니다.

왜 Windows 11이 Windows 10으로 식별되나요?

이것은 마이크로소프트 설계입니다——Windows 11의 UA는 여전히 Windows NT 10.0을 버전 번호로 사용하며 Windows 10과 완전히 동일하므로 UA만으로는 구분할 수 없습니다. Win11을 정확히 판단하려면 다른 API(navigator.userAgentData.getHighEntropyValues() 등)와 결합해야 합니다.

왜 iOS Chrome이 Safari 엔진으로 식별되나요?

Apple App Store 정책에 따라 iOS 모든 제3자 브라우저는 시스템 기본 WebKit 엔진을 사용해야 하기 때문입니다. Chrome for iOS, Firefox for iOS는 실제로 WebKit 커널이며 UA에 Safari 마커가 붙습니다. 이는 정상 동작입니다.

분명 실제 사용자인데 봇으로 표시되는 이유는 무엇인가요?

극소수 프라이버시 보호 브라우저, 광고 차단 플러그인, 안티바이러스 소프트웨어가 UA를 수정하여 특수 단어를 추가하거나 아주 짧은 UA를 사용하는 경우가 있어 봇으로 오판될 수 있습니다. 이런 경우는 드물지만 전체 UA 문자열을 표시하여 사람이 확인할 수 있습니다.