SNI/ALPN-Troubleshooting wird immer dann zum entscheidenden Skill, wenn in der Produktion „nur bestimmte Domains ausfallen“, obwohl IP, Load Balancer und Zertifikate auf den ersten Blick korrekt wirken. Typisch sind Fälle wie: api.example.com ist erreichbar, login.example.com bricht während des TLS-Handshakes ab; oder nur Clients mit HTTP/2 (bzw. gRPC) melden Fehler, während klassische Browser über HTTP/1.1 funktionieren. In solchen Situationen ist es selten „einfach DNS“ oder „einfach das Netzwerk“. Häufig liegt der Auslöser in TLS-Extensions und Protokoll-Aushandlungen: SNI (Server Name Indication) entscheidet, welches Zertifikat und welche virtuelle Konfiguration der Server präsentiert, während ALPN (Application-Layer Protocol Negotiation) entscheidet, welches Anwendungsprotokoll (z. B. HTTP/2 vs. HTTP/1.1) nach TLS genutzt wird. Beide Mechanismen sind extrem mächtig – und genau deshalb auch eine häufige Fehlerquelle in Multi-Domain-Setups, CDNs, WAFs, Ingress-Controllern und Service-Meshes. Der Knackpunkt: Wenn SNI fehlt, falsch ist oder unterwegs „verloren geht“, fällt nicht „alles“ aus, sondern oft nur einzelne Hostnames. Wenn ALPN inkonsistent ist, wirken Probleme domain- oder client-spezifisch, weil nur bestimmte Endpunkte HTTP/2 erwarten oder nur bestimmte Clients HTTP/2 aushandeln. Dieser Artikel zeigt Ihnen eine praxistaugliche Vorgehensweise, um SNI- und ALPN-Probleme schnell zu erkennen, sauber zu isolieren und dauerhaft zu verhindern – verständlich für Einsteiger, aber mit genug Tiefe für professionelle Incident-Triage.
SNI und ALPN: Kurz erklärt, ohne zu vereinfachen
Bevor Sie debuggen, lohnt sich ein präzises Bild davon, was SNI und ALPN im Handshake leisten – und wo sie in der Kette „kaputtgehen“ können.
- SNI (Server Name Indication) ist eine TLS-Extension. Der Client sendet den gewünschten Hostnamen bereits im ClientHello, damit der Server das passende Zertifikat und die richtige „virtuelle“ Konfiguration auswählen kann. Das ist essenziell, wenn mehrere Domains auf derselben IP/Port-Kombination liegen (Virtual Hosting). Eine gute Übersicht bietet Cloudflares Erklärung zu SNI.
- ALPN (Application-Layer Protocol Negotiation) ist ebenfalls eine TLS-Extension. Client und Server handeln darüber aus, welches Protokoll nach dem Handshake verwendet wird, z. B. h2 (HTTP/2) oder http/1.1. Ohne ALPN kann HTTP/2 scheitern oder stillschweigend auf HTTP/1.1 zurückfallen – was bei gRPC typischerweise nicht funktioniert. Als Referenz eignet sich RFC 7301 (ALPN).
Praktisch heißt das: SNI steuert die Auswahl der TLS-Konfiguration pro Domain, ALPN steuert das Anwendungsprotokoll nach TLS. Beides passiert, bevor ein einziger HTTP-Request verarbeitet wird.
Warum „nur bestimmte Domains fallen aus“ ein SNI-Alarmzeichen ist
Wenn ein gemeinsamer Load Balancer oder Ingress mehrere Domains bedient, dann ist der Hostname oft der einzige Schlüssel, der entscheidet, welche Konfiguration greift. Fällt nur ein Teil der Domains aus, sind die häufigsten Ursachen SNI-bezogen:
- SNI fehlt: Manche Legacy-Clients, alte Libraries oder spezielle Health-Checks senden keinen SNI. Dann landet die Verbindung im „Default“-Zertifikat oder in der Default-Backend-Regel.
- SNI ist falsch: Der Client verbindet sich per IP, nutzt aber einen anderen Hostname als erwartet (z. B. durch Redirects, falsch konfigurierte Base-URLs, oder ein Proxy ersetzt den Host).
- SNI wird unterwegs verändert oder entfernt: Bestimmte Proxies, TLS-Inspection-Lösungen oder Fehlkonfigurationen in Chain-of-Proxy-Setups können SNI beeinflussen.
- Wildcard-/SAN-Mismatch: Das Zertifikat deckt nicht alle Subdomains ab, obwohl es „ähnlich“ wirkt. Häufig bei mehrstufigen Subdomains (z. B. a.b.example.com) oder bei getrennten Zonen.
Wichtig: Ein DNS-Problem betrifft meistens Auflösung (NXDOMAIN, falsche IP, falsches CNAME), während SNI-Probleme oft erst nach erfolgreicher TCP-Verbindung sichtbar werden, also als TLS-Handshake-Fehler oder falsches Zertifikat.
ALPN als Ursache: Wenn die Domain „geht“, aber bestimmte Clients trotzdem scheitern
ALPN-Probleme sind besonders häufig in modernen Stacks: HTTP/2, gRPC, Browser-Optimierungen, CDNs und WAFs. Die Domain kann aus „klassischer Sicht“ erreichbar sein, aber bestimmte Clients fallen aus, weil das erwartete Protokoll nicht zustande kommt.
- HTTP/2 erwartet, aber nur HTTP/1.1 ausgehandelt: Browser können oft fallbacken, gRPC meist nicht.
- ALPN-Listen unterscheiden sich: Mobile Clients bieten z. B. nur h2 an, während ein Proxy nur http/1.1 akzeptiert.
- HTTP/2 ist nur für bestimmte Hostnames aktiv: Manche Ingress-Konfigurationen oder LB-Listener haben pro Host/Route unterschiedliche Protokoll-Settings.
- Zwischenkomponente terminiert TLS: Wenn CDN/WAF TLS terminiert und zum Origin neu aufbaut, kann die ALPN-Aushandlung am Edge korrekt sein, aber intern anders laufen.
Wenn Sie gRPC im Spiel haben, ist eine gute Ergänzung die gRPC-Dokumentation zu Core Concepts, da dort klar wird, wie stark gRPC auf HTTP/2 und korrekte Handshakes angewiesen ist.
Das Kernprinzip beim Troubleshooting: „Was wird wo terminiert?“
Der häufigste Grund für lange Incidents ist Debugging am falschen Terminierungspunkt. SNI und ALPN wirken nur dort, wo TLS tatsächlich terminiert. Das kann sein: CDN, WAF, Load Balancer, Ingress, Sidecar-Proxy oder die Anwendung selbst.
- Edge-Termination: Zertifikat kommt vom CDN/WAF/LB. SNI/ALPN-Probleme sind dann primär dort zu suchen.
- Pass-through (L4): TLS endet im Ingress oder in der App. Dann sind Edge-Konfigurationen (bis auf Routing) weniger relevant.
- Re-Encryption: TLS endet am Edge und wird intern neu aufgebaut. Dann existieren effektiv zwei Handshakes (extern und intern), die getrennt betrachtet werden müssen.
Als Orientierung für TLS/HTTPS-Grundlagen ist die MDN-Seite zu TLS hilfreich, insbesondere für typische Fehlermeldungen und Handshake-Mechanik.
Schnelltest: Zwei Signale, die SNI/ALPN-Fehler stark wahrscheinlich machen
- Signal 1: TCP-Verbindung ist stabil, aber TLS bricht ab oder liefert „falsches“ Zertifikat (z. B. Default-Cert, anderes SAN).
- Signal 2: Browser funktionieren, aber HTTP/2- oder gRPC-Clients melden Fehler; oder nur ein Teil der Subdomains fällt aus.
Wenn beide Signale zutreffen, sollten Sie nicht in Routingtabellen oder Firewall-Regeln abtauchen, sondern zuerst SNI/ALPN sauber verifizieren.
Systematische Diagnose: Von außen nach innen
Der zuverlässigste Ansatz ist ein reproduzierbarer Ablauf: erst Symptome segmentieren, dann Handshake-Parameter sammeln, dann Konfigurationen entlang der Kette vergleichen.
Schritt 1: Betroffene Domains und Client-Klassen segmentieren
„Nur bestimmte Domains“ reicht als Beschreibung nicht aus. Sie brauchen ein klares Bild, welche Domains, welche Client-Typen und welche Pfade betroffen sind.
- Domain-Gruppen: Apex (example.com), Subdomain (api.example.com), Multi-Level (a.b.example.com)
- Client-Gruppen: Browser, Mobile SDK, Java, IoT, Synthetics, Corporate Proxy
- Pfad-Gruppen: direkt, über CDN, über VPN, über WAF, intern im Mesh
Ein häufiges Muster: Nur eine Domain-Gruppe fällt aus, weil sie auf einen anderen Listener, ein anderes Zertifikat, eine andere TLS-Policy oder eine andere Ingress-Regel zeigt.
Schritt 2: SNI-Beweis führen: „Welches Zertifikat kommt bei welchem Host?“
SNI-Probleme zeigen sich fast immer daran, dass der Server das falsche Zertifikat liefert oder den Handshake abbricht, weil keine passende virtuelle Konfiguration gefunden wird. Der entscheidende Punkt ist: Sie müssen prüfen, ob SNI tatsächlich gesendet und korrekt verarbeitet wird.
- Erwartung: Der Hostname bestimmt die Zertifikatsauswahl (SAN/Wildcard passt).
- Abweichung: Es kommt ein Default-Zertifikat, ein Zertifikat einer anderen Domain oder ein Handshake-Error.
Typische Ursachen auf Serverseite:
- Fehlender oder falscher „Default“-VirtualHost (fängt unbekannte SNI-Werte ab)
- Ingress-Regel matcht nicht (Host-Matcher falsch, Regex/Exact-Match verwechselt)
- Zertifikat ist zwar installiert, aber nicht dem richtigen Listener/Server-Block zugeordnet
- CDN/WAF sendet zum Origin einen anderen Hostname als erwartet (Origin Host Header / SNI Override)
Gerade bei CDNs ist es wichtig, zwischen „User-facing Hostname“ und „Origin Hostname“ zu unterscheiden – viele Plattformen erlauben ein separates Origin-SNI. Wenn das falsch gesetzt ist, fällt oft nur eine Domain aus.
Schritt 3: ALPN-Beweis führen: „Wird h2 wirklich ausgehandelt?“
ALPN-Probleme sind meist weniger sichtbar, weil viele Tools und Browser stillschweigend fallbacken. Für Debugging ist entscheidend: Welches Protokoll wurde am Ende wirklich ausgehandelt?
- Erwartung: Client und Server einigen sich auf h2 (HTTP/2) oder auf http/1.1 – passend zum Workload.
- Abweichung: ALPN wird nicht angeboten, nicht akzeptiert oder unterwegs verändert; gRPC bricht ab, HTTP/2-Clients sehen Protokollfehler.
Häufige Ursachen:
- HTTP/2 nur auf bestimmten Listenern aktiviert
- WAF/Proxy unterstützt HTTP/2 extern, spricht zum Origin aber nur HTTP/1.1
- mTLS/Service Mesh konfiguriert Downstream anders als Upstream (z. B. h2 nur auf einer Seite)
- ALPN-Policy kollidiert mit Cipher/Version-Policy (selten, aber möglich)
Für HTTP/2-Hintergründe ist RFC 7540 (HTTP/2) eine solide Referenz.
Typische „nur manche Domains“-Szenarien und ihre schnellen Checks
In der Praxis tauchen SNI/ALPN-Probleme in wiederkehrenden Konstellationen auf. Diese Szenarien helfen, Hypothesen schnell zu priorisieren.
Mehrere Zertifikate auf einem Load Balancer, aber falscher Listener greift
- Symptom: Eine Domain bekommt korrektes Zertifikat, die andere bekommt Default-Cert.
- Ursache: Hostname-Routing oder SNI-Mapping im Listener ist unvollständig.
- Check: Prüfen, ob alle Domains im Zertifikat (SAN) oder als separate Zertifikate korrekt zugeordnet sind.
Wildcard deckt nicht, was man glaubt
- Symptom: api.example.com geht, a.b.example.com nicht.
- Ursache: *.example.com deckt nur eine Subdomain-Ebene, nicht zwei.
- Check: SAN-Liste und Host-Struktur vergleichen; ggf. eigenes Zertifikat oder anderes Namensschema.
CDN/WAF mit Origin-SNI/Host-Override falsch konfiguriert
- Symptom: Extern sieht alles gut aus, intern (Origin) sporadische TLS-Fehler – aber nur für eine Domain.
- Ursache: CDN sendet falsches SNI zum Origin oder setzt falschen Host Header.
- Check: Origin-Konfiguration pro Hostname prüfen, insbesondere bei Multi-Origin oder „Custom Host Header“.
gRPC nur auf einem Host aktiv, ALPN inkonsistent
- Symptom: Browser (HTTP/1.1) ok, gRPC-Clients failen, aber nur auf grpc.example.com.
- Ursache: ALPN/HTTP2 ist nicht durchgängig aktiv oder wird am Proxy/LB terminiert und falsch weitergereicht.
- Check: Sicherstellen, dass h2 am richtigen Terminierungspunkt angeboten und akzeptiert wird.
Mess- und Observability-Signale, die Sie etablieren sollten
Ein wiederkehrendes Problem bei SNI/ALPN-Incidents ist fehlende Telemetrie. Mit den richtigen Metriken erkennen Sie bereits im Rollout, ob nur ein Teil der Domains oder nur bestimmte Protokolle degradiert.
- TLS Handshake Failures nach Grund (z. B. „unrecognized_name“, „handshake_failure“, „no_application_protocol“)
- Negotiated ALPN (Anteil h2 vs. http/1.1)
- Zertifikats-Served-by-Host: Welches Zertifikat wurde pro SNI ausgeliefert (Fingerprint/SAN)
- HTTP/2 Error Counters (GOAWAY, PROTOCOL_ERROR, stream resets), besonders wichtig bei gRPC
- Client-Segmentierung (User-Agent/SDK-Versionen, soweit datenschutzkonform) für „Works only on some clients“
Für standardisierte Instrumentierung und Korrelation ist OpenTelemetry eine gute Grundlage, weil Sie Metriken und Traces über mehrere Komponenten hinweg konsistent erfassen können.
ALPN-Erfolgsquote als SLI (MathML)
Wenn HTTP/2 wichtig ist (z. B. für gRPC), lohnt sich ein eigenes Service-Level-Indicator für erfolgreiche ALPN-Aushandlung von h2 pro Hostname.
SLI_h2(host) = tls_connections_with(ALPN=h2,host) tls_connections_total(host)
Runbook: Schnelle Checkliste für Incident-Triage
- Ist der Fehler domain-spezifisch? Betroffene Hostnames exakt auflisten, inklusive Subdomain-Ebenen.
- Wo terminiert TLS? CDN/WAF/LB/Ingress/App – pro Pfad eindeutig bestimmen.
- SNI validieren: Wird der erwartete Hostname im ClientHello verwendet und verarbeitet?
- Zertifikat prüfen: SAN/Wildcard passt exakt zur betroffenen Domain?
- ALPN validieren: Wird h2 angeboten/akzeptiert, wenn nötig (HTTP/2/gRPC)?
- Pfadunterschiede testen: Corporate Proxy/VPN vs. direkt, Edge vs. Origin.
- Konfigurationsdrift ausschließen: Listener/TLS-Profile/Ingress-Regeln vergleichen, nicht nur „IaC-Desired State“.
- Fix kontrolliert ausrollen: Canary pro Hostname/Listener, Metriken pro Domain beobachten.
Prävention: Wie Sie SNI/ALPN-Probleme dauerhaft vermeiden
Viele SNI/ALPN-Ausfälle sind nicht „unvermeidbar“, sondern ein Prozessproblem: fehlende Tests, unklare Ownership, und Änderungen ohne domain-spezifische Beobachtung. Diese Praktiken reduzieren das Risiko deutlich:
- Preflight-Tests pro Domain: Nicht nur „die Seite“, sondern jede kritische Subdomain testet TLS-Handshake, Zertifikat und ALPN.
- Standardisierte TLS-Profile: Einheitliche Policies pro Edge/Ingress, mit klaren Ausnahmen.
- Explizites Default-Handling: Definieren, was passiert, wenn SNI fehlt oder unbekannt ist (z. B. sauberer Fehler statt falsches Backend).
- gRPC/HTTP2 explizit absichern: ALPN-Metriken und SLOs für h2 dort, wo es geschäftskritisch ist.
- Change-Management: TLS-Policy-Änderungen wie Code behandeln (Review, Rollout-Plan, Rollback, Metriken).
Outbound-Links für vertiefende Informationen
- RFC 6066: TLS Extensions (inkl. SNI)
- RFC 7301: ALPN
- RFC 7540: HTTP/2
- MDN: Transport Layer Security (TLS)
- Cloudflare Learning: What is SNI?
- OpenTelemetry: Observability Standard
Cisco Netzwerkdesign, CCNA Support & Packet Tracer Projekte
Cisco Networking • CCNA • Packet Tracer • Network Configuration
Ich biete professionelle Unterstützung im Bereich Cisco Computer Networking, einschließlich CCNA-relevanter Konfigurationen, Netzwerkdesign und komplexer Packet-Tracer-Projekte. Die Lösungen werden praxisnah, strukturiert und nach aktuellen Netzwerkstandards umgesetzt.
Diese Dienstleistung eignet sich für Unternehmen, IT-Teams, Studierende sowie angehende CCNA-Kandidaten, die fundierte Netzwerkstrukturen planen oder bestehende Infrastrukturen optimieren möchten. Finden Sie mich auf Fiverr.
Leistungsumfang:
-
Netzwerkdesign & Topologie-Planung
-
Router- & Switch-Konfiguration (Cisco IOS)
-
VLAN, Inter-VLAN Routing
-
OSPF, RIP, EIGRP (Grundlagen & Implementierung)
-
NAT, ACL, DHCP, DNS-Konfiguration
-
Troubleshooting & Netzwerkoptimierung
-
Packet Tracer Projektentwicklung & Dokumentation
-
CCNA Lern- & Praxisunterstützung
Lieferumfang:
-
Konfigurationsdateien
-
Packet-Tracer-Dateien (.pkt)
-
Netzwerkdokumentation
-
Schritt-für-Schritt-Erklärungen (auf Wunsch)
Arbeitsweise:Strukturiert • Praxisorientiert • Zuverlässig • Technisch fundiert
CTA:
Benötigen Sie professionelle Unterstützung im Cisco Networking oder für ein CCNA-Projekt?
Kontaktieren Sie mich gerne für eine Projektanfrage oder ein unverbindliches Gespräch. Finden Sie mich auf Fiverr.

