User-Agent-Parser

User-Agent-Strings in Komponenten analysieren

User-Agent String

|

Enter a User-Agent string to parse

Der User-Agent-Parser extrahiert Browsername, Version, Rendering-Engine, Betriebssystem und Geraetetyp aus User-Agent-Header-Strings und decodiert das notorisch verworrene Format, das ueber Jahrzehnte Kompatibilitaets-Tokens angesammelt hat. Fuegen Sie einen String wie Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 ein und erhalten Sie eine klare Aufschluesselung: Chrome 120.0, Blink-Engine, Windows 10, Desktop.

User-Agent-Strings verstehen

Der User-Agent-Header ist einer der aeltesten und am meisten missverstandenen Teile von HTTP. Er wurde urspruenglich als einfacher Bezeichner konzipiert -- eine Moeglichkeit fuer einen Browser, dem Server seinen Namen und seine Version mitzuteilen, damit der Server seine Antwort anpassen konnte. Netscape Navigator sendete Mozilla/1.0, und das war es. Aber Jahrzehnte von Browser-Kriegen, Kompatibilitaets-Hacks und Feature-Erkennung haben den User-Agent-String in ein verworrenes Geflecht historischer Tokens verwandelt, die weit mehr ueber die Geschichte der Webbrowser verraten als ueber den tatsaechlichen Client, der die Anfrage stellt.

Das Problem begann, als Internet Explorer denselben Inhalt empfangen wollte, den Server an Netscape Navigator sendeten. Also gab sich IE als "Mozilla-kompatibel" aus. Dann kam Firefox als wahrer Nachfolger von Mozilla und verwendete dasselbe Praefix. Safari fuegte "like Gecko" hinzu, damit Server, die auf Gecko prueften, modernen Inhalt auslieferten. Chrome kopierte Safaris gesamten String und fuegte sein eigenes Token hinzu. Edge kopierte Chromes String und fuegte ein weiteres Token hinzu. Das Ergebnis ist, dass der heutige Chrome-User-Agent "Mozilla", "AppleWebKit", "KHTML", "Gecko", "Chrome" und "Safari" enthaelt -- und keines davon ausser Chrome ist.

Fuer Entwickler und Systemadministratoren ist User-Agent-Parsing trotz seiner Eigenheiten weiterhin notwendig. Die Analyse von Zugriffslogs erfordert das Wissen, welche Browser und Betriebssysteme Ihre Benutzer verwenden. Bot-Erkennung haengt von der Identifizierung von Crawlern wie Googlebot und Bingbot ab. Browser-spezifische Fehlerberichte benoetigen die exakte Version zur Reproduktion. Und die Verkehrsanalyse erfordert die Unterscheidung zwischen Mobil- und Desktop-Benutzern. Dieser Parser schneidet durch das historische Rauschen und extrahiert die Informationen, die tatsaechlich zaehlen: welcher Browser, welche Version, welches Betriebssystem und welcher Geraetetyp.

So parsen Sie einen User-Agent-String

  1. Fuegen Sie einen User-Agent-String in das Eingabefeld ein (aus Zugriffslogs, Browser-DevTools oder HTTP-Headern).
  2. Klicken Sie auf Parsen, um alle identifizierbaren Komponenten zu extrahieren.
  3. Ueberpruefen Sie die geparsten Ergebnisse: Browser-Familie, Version, Engine, Betriebssystem, Geraetetyp und Bot-Erkennung.

Beispiele fuer User-Agent-Parsing

User-Agent-StringBrowserVersionEngineBetriebssystemGeraet
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36Chrome120.0BlinkWindows 10Desktop
Mozilla/5.0 (Macintosh; Intel Mac OS X 14_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Safari/605.1.15Safari17.2WebKitmacOS 14.2Desktop
Mozilla/5.0 (X11; Linux x86_64; rv:121.0) Gecko/20100101 Firefox/121.0Firefox121.0GeckoLinuxDesktop
Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Mobile/15E148 Safari/604.1Safari Mobile17.2WebKitiOS 17.2Mobil
Mozilla/5.0 (Linux; Android 14; Pixel 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.6099.43 Mobile Safari/537.36Chrome Mobile120.0BlinkAndroid 14Mobil
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)Googlebot2.1----Bot
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.2210.91Edge120.0BlinkWindows 10Desktop

Wann Sie den User-Agent-Parser verwenden sollten

  • Analyse von Server-Zugriffslogs -- Parsen Sie User-Agent-Strings aus Webserver-Logs, um Ihre Verkehrsverteilung nach Browser, Betriebssystem und Geraetetyp zu verstehen.
  • Identifizierung von Bot-Verkehr -- Erkennen Sie bekannte Crawler (Googlebot, Bingbot, Baiduspider) und unterscheiden Sie sie vom menschlichen Verkehr in Analytics.
  • Debugging browser-spezifischer Probleme -- Extrahieren Sie die exakte Browser-Version und Rendering-Engine aus dem User-Agent eines Fehlerberichts, um Probleme zu reproduzieren.
  • Testen von Browser-Erkennungslogik -- Validieren Sie, dass Ihre serverseitige oder clientseitige Browser-Erkennung verschiedene User-Agent-Muster korrekt identifiziert.
  • Verkehrsmuster verstehen -- Bestimmen Sie das Verhaeltnis von Mobil- zu Desktop-Benutzern und welche Betriebssystem-Versionen Ihre Benutzer verwenden, um Testprioritaeten festzulegen.
  • Sicherheitslog-Analyse -- Identifizieren Sie verdaechtige User-Agent-Strings in Zugriffslogs, die auf automatisierte Angriffe oder Scraping hindeuten koennten.

Warum User-Agent-Strings so verwirrend sind

Die Geschichte des Browser-Spoofings

Jeder moderne Browser beginnt seinen User-Agent mit Mozilla/5.0 aufgrund einer Kette historischer Kompatibilitaets-Hacks:

  1. Netscape Navigator (der urspruengliche Mozilla) war der erste Browser, der den User-Agent-Header einfuehrte, und verwendete Mozilla/version.
  2. Internet Explorer gab sich als Mozilla/4.0 (compatible; MSIE...) aus, damit Server, die auf "Mozilla" prueften, ihm denselben reichhaltigen Inhalt sendeten.
  3. Firefox verwendete Mozilla/5.0... Gecko/... als Nachfolger von Netscape.
  4. Safari fuegte (KHTML, like Gecko) hinzu, damit Server, die nach "Gecko" suchten, modernen Inhalt sendeten.
  5. Chrome kopierte Safaris Token und fuegte sein eigenes hinzu, was zu einem String fuehrte, der gleichzeitig behauptet, Mozilla, wie KHTML, wie Gecko, Chrome und Safari zu sein.
  6. Edge (Chromium-basiert) fuegte Edg/ zu Chromes bereits langem String hinzu.

Was jedes Token tatsaechlich bedeutet

In einem typischen Chrome-User-Agent:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
  • Mozilla/5.0 -- Historisches Kompatibilitaets-Token (heute bedeutungslos)
  • Windows NT 10.0; Win64; x64 -- Betriebssystem und Architektur
  • AppleWebKit/537.36 -- Rendering-Engine-Version (eingefrorener Wert in Chromium)
  • KHTML, like Gecko -- Kompatibilitaetsbehauptung
  • Chrome/120.0.0.0 -- Der tatsaechliche Browser und die Version
  • Safari/537.36 -- Ein weiteres Kompatibilitaets-Token (Chrome ist nicht Safari)

Client Hints: Die moderne Alternative

User-Agent Client Hints (Sec-CH-UA-*-Header) sind der moderne Ersatz und liefern strukturierte Daten mit geringer Entropie:

Sec-CH-UA: "Chromium";v="120", "Google Chrome";v="120"
Sec-CH-UA-Mobile: ?0
Sec-CH-UA-Platform: "Windows"

Der Parser erkennt sowohl traditionelle User-Agent-Strings als auch moderne Client-Hints-Werte.

Windows-Versionszuordnung

Windows-Versionen in User-Agent-Strings verwenden interne NT-Versionsnummern, die nicht mit den Marketingnamen uebereinstimmen:

User-Agent-WertWindows-Version
Windows NT 10.0Windows 10 oder Windows 11
Windows NT 6.3Windows 8.1
Windows NT 6.2Windows 8
Windows NT 6.1Windows 7
Windows NT 6.0Windows Vista
Windows NT 5.1Windows XP

Beachten Sie, dass Windows 10 und Windows 11 denselben Wert Windows NT 10.0 teilen. Die Unterscheidung erfordert User-Agent Client Hints (Sec-CH-UA-Platform-Version).

Praktische Tipps fuer die User-Agent-Analyse

Wenn Sie Zugriffslogs analysieren, versuchen Sie nicht, User-Agent-Strings mit regulaeren Ausdruecken zu parsen. Das Format ist zu uneinheitlich und hat zu viele Variationen, um zuverlaessig mit Regex behandelt zu werden. Verwenden Sie eine dedizierte Parsing-Bibliothek wie ua-parser-js (JavaScript), user-agents (Python) oder browscap (PHP). Diese Bibliotheken pflegen Datenbanken bekannter Muster und werden aktualisiert, wenn neue Browser und Versionen erscheinen.

Fuer die Bot-Erkennung beachten Sie, dass legitime Bots sich typischerweise klar in ihren User-Agent-Strings identifizieren, boesartige Bots jedoch fast immer echte Browser-Strings faelschen. Wenn Sie einen User-Agent sehen, der behauptet Chrome 120 auf Windows 10 zu sein, aber die Anfrage von einer Rechenzentrum-IP-Adresse kommt, 100 Anfragen pro Sekunde stellt und robots.txt ignoriert, ist es fast sicher ein Bot, unabhaengig davon, was der User-Agent sagt. Effektive Bot-Erkennung kombiniert User-Agent-Analyse mit Verhaltenssignalen wie Anfragerate, IP-Reputation und JavaScript-Ausfuehrungsfaehigkeiten.

Der Trend im Browser-Oekosystem geht dahin, die Informationen in User-Agent-Strings zu reduzieren. Chrome hat schrittweise Teile seines User-Agents eingefroren (die WebKit-Version ist bei 537.36 eingefroren, die Chrome-Nebenversion ist immer .0.0.0) und draengt Entwickler zu Client Hints fuer detaillierte Informationen. Wenn Sie neue Systeme aufbauen, die Browser- oder Betriebssystem-Informationen benoetigen, erwaegen Sie, Client Hints von Anfang an zu unterstuetzen, anstatt sich ausschliesslich auf traditionelles User-Agent-Parsing zu verlassen, da die Menge nuetzlicher Informationen im User-Agent-String mit der Zeit nur abnehmen wird.

Haeufig gestellte Fragen

Wie kann ich zwischen Chrome und Edge unterscheiden?

Chromium-basiertes Edge enthaelt ein Edg/-Token (Hinweis: nicht "Edge") am Ende seines User-Agent-Strings. Beide teilen dieselben Chrome/- und Safari/-Tokens. Suchen Sie speziell nach Edg/, um Edge von Chrome zu unterscheiden.

Ist es zuverlaessig, den Geraetetyp aus dem User-Agent zu erkennen?

Fuer breite Kategorien (Mobil vs. Desktop) ist die User-Agent-Erkennung einigermassen zuverlaessig. Das Vorhandensein von Mobile im String zeigt ein mobiles Geraet an. Allerdings ist die Tablet-Erkennung weniger konsistent, und einige mobile Browser im "Desktop-Modus" senden Desktop-artige User-Agent-Strings. Fuer zuverlaessigere Erkennung kombinieren Sie User-Agent-Parsing mit Responsive-Design-Techniken.

Wie erkenne ich Bots und Crawler?

Legitime Bots identifizieren sich typischerweise klar: Googlebot, bingbot, Baiduspider, YandexBot, DuckDuckBot. Der Parser pflegt eine Liste bekannter Bot-Kennungen. Allerdings faelschen boesartige Bots oft echte Browser-User-Agent-Strings, sodass der User-Agent allein fuer sicherheitskritische Bot-Erkennung nicht ausreicht.

Warum meldet Chrome "Safari" in seinem User-Agent?

Chrome enthaelt Safari/537.36 aus historischen Kompatibilitaetsgruenden. Als Chrome erstmals gestartet wurde, prueften viele Websites auf "Safari", um WebKit-kompatiblen Inhalt auszuliefern. Chrome erbte WebKit (spaeter als Blink abgespalten) und behielt das Safari-Token bei, um nicht degradierten Inhalt zu erhalten. Es ist ein reines Kompatibilitaetsartefakt und bedeutet nicht, dass Chrome mit Safari verwandt ist.

Was ist die "reduzierte User-Agent"-Initiative?

Ab Chrome 110 hat Google schrittweise die Informationen in Chromes User-Agent-String im Rahmen der Privacy-Sandbox-Initiative reduziert. Das Ziel ist die Minimierung passiven Fingerprintings durch Einfrieren oder Entfernen granularer Versionsnummern, Betriebssystem-Details und Geraetemodell-Informationen. Entwickler, die diese Informationen benoetigen, werden ermutigt, stattdessen User-Agent Client Hints zu verwenden, die ein explizites Server-Opt-in erfordern und datenschutzfreundlicher sind.

Kann ich der Betriebssystem-Version in einem User-Agent-String vertrauen?

Generell ja, um die Betriebssystem-Familie (Windows, macOS, Linux, iOS, Android) zu identifizieren, aber die spezifische Version kann eingefroren oder ungenau sein. Chrome unter Windows meldet Windows NT 10.0 sowohl fuer Windows 10 als auch fuer Windows 11. Chrome unter macOS friert die Version moeglicherweise bei einem bestimmten Wert ein. Fuer praezise Betriebssystem-Versionserkennung verwenden Sie Client Hints oder serverseitige Erkennungsmethoden.

Verwandte Tools

IPparse•Kostenlose Netzwerk- & Subnetz-Rechner-Tools

© 2026 IPparse. All tools run locally in your browser.

100% Privacy-First • No Data Collected