User Agent 확인 navigator
현재 브라우저의 User-Agent 문자열을 분석하거나, 직접 입력한 UA에서 브라우저와 운영체제 정보를 추출합니다.
이 도구가 하는 일
User-Agent는 브라우저가 서버에 요청을 보낼 때 함께 전달하는 문자열로, 브라우저 종류와 버전, 운영체제, 렌더링 엔진 정보를 담고 있습니다. 서버는 이 값을 보고 모바일 페이지를 보낼지, 특정 기능을 지원하는지 판단하는 데 활용해 왔습니다.
문제는 이 문자열이 역사적인 이유로 매우 지저분하다는 것입니다. 크롬의 UA에는 Mozilla, AppleWebKit, KHTML, Safari가 모두 들어 있습니다. 과거 브라우저 호환성 검사를 통과하기 위해 서로의 이름을 넣기 시작한 관행이 지금까지 남아 있기 때문입니다. 그래서 사람이 눈으로 읽고 판단하기가 어렵습니다.
이 도구는 UA 문자열을 분석해 브라우저, 버전, 운영체제, 엔진, 기기 종류, 봇 여부를 구분해 보여줍니다. 현재 접속한 브라우저의 UA를 바로 확인할 수도 있고, 로그에서 가져온 다른 UA를 붙여 넣어 분석할 수도 있습니다.
언제 사용하나요
접근 로그에 남은 UA가 어떤 기기인지 확인할 때, 특정 브라우저에서만 발생하는 버그를 재현하기 위해 사용자 환경을 파악할 때, 봇이나 크롤러의 접근을 구분할 때, 고객이 문의한 환경 정보를 정리할 때 사용합니다.
입력과 출력 예시
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36
브라우저: Chrome 120 / OS: macOS / 엔진: WebKit 계열
Mozilla와 Safari 문자열은 호환성을 위한 관행이며 실제 브라우저는 Chrome입니다.
Googlebot/2.1 (+http://www.google.com/bot.html)
봇으로 판별됨
검색엔진 크롤러는 대부분 UA에 봇 이름과 안내 주소를 포함합니다.
주의사항
User-Agent는 얼마든지 위조할 수 있습니다. 개발자 도구나 확장 프로그램으로 간단히 바꿀 수 있고 자동화 도구는 대부분 UA를 임의로 설정합니다. 따라서 UA를 보안 판단이나 접근 제어의 근거로 삼으면 안 됩니다. 또한 최근에는 개인정보 보호를 위해 브라우저가 UA에 담긴 정보를 줄이는 방향으로 바뀌고 있어, 세부 버전이나 기기 정보가 제공되지 않을 수 있습니다. 기능 지원 여부는 UA로 판단하지 말고 해당 기능을 직접 검사하는 방식(기능 탐지)을 사용하는 것이 권장됩니다.
자주 묻는 질문
크롬인데 왜 Safari가 들어 있나요?
과거 브라우저 호환성 검사를 통과하기 위해 서로의 이름을 UA에 포함시키던 관행이 남아 있기 때문입니다. 실제 브라우저는 Chrome 항목으로 판별합니다.
UA로 접근을 차단해도 되나요?
권장하지 않습니다. UA는 쉽게 위조할 수 있어 보안 수단이 될 수 없습니다. 통계나 참고 용도로만 사용하십시오.