Warum NAT im Weg steht
Die meisten Computer sitzen hinter einer Netzwerkadressübersetzung (NAT): einem Router, der eine öffentliche Adresse auf viele private verteilt und nur Pakete hereinlässt, die auf eine von innen gestartete Verbindung antworten. Zwei Rechner in verschiedenen Heim- oder Büronetzen können deshalb nicht einfach eine Verbindung zueinander öffnen: Jeder Router verwirft das erste Paket der Gegenseite.
Wie schwer das Problem ist, hängt vom Router ab. RFC 4787 beschreibt, wie NATs UDP-Verkehr zuordnen und filtern: Verwendet ein Router für jedes Ziel denselben öffentlichen Port, ist ein direkter Pfad meist leicht zu finden; wählt er für jedes Ziel einen neuen Port (oft symmetrisches NAT genannt), ist es deutlich schwieriger.
Wie Hole Punching funktioniert
NAT-Traversal ist die Sammlung von Techniken, die trotzdem einen direkten Pfad finden. Zuerst erfährt jede Seite, wie sie von außen aussieht, meist durch eine Anfrage an einen STUN-Server. Die beiden Seiten tauschen diese Kandidatenadressen über einen Koordinationsserver aus und senden dann gleichzeitig Pakete zueinander. Jeder Router sieht zuerst ein ausgehendes Paket und behandelt die Antwort als Teil dieses Datenflusses. So öffnet sich ein Pfad in beide Richtungen. RFC 5128 gibt einen Überblick über diese Techniken.
Router lassen sich auch direkt fragen: UPnP IGD, NAT-PMP und sein Nachfolger, das Port Control Protocol (RFC 6887), erlauben einer Anwendung, eine Portweiterleitung anzufordern. Manche Unternehmensfirewalls und Carrier-Grade-NAT verhindern jede dieser Techniken. Wenn nichts davon klappt, weicht die Sitzung auf ein Relay aus, das den Verkehr zwischen beiden Seiten weiterleitet.
Wie Vexaro Desk sich verbindet
Eine Vexaro-Desk-Sitzung verbindet sich direkt, wo immer das Netzwerk es zulässt, und sonst über ein authentifiziertes Vexaro-Relay. Einzustellen gibt es nichts: Der Client findet selbst einen Weg.
Der Installer legt eine Windows-Firewall-Regel an, damit direkte Verbindungen und Verbindungen im lokalen Netz funktionieren; eine portable Version kann das nicht, ihre Sitzungen laufen daher häufiger über ein Relay. Direkte Verbindungen lassen sich in den Einstellungen abschalten, und das Sitzungsfenster zeigt, ob eine Sitzung direkt oder über ein Relay läuft. Direkte Sitzungen sind Ende-zu-Ende-verschlüsselt. Erzwingt ein Netzwerk eine Verbindung über ein Relay, bleibt der Datenverkehr auf dem Übertragungsweg über die von Vexaro betriebenen Relays verschlüsselt.