# Die macOS-App im Detail

URnetwork auf dem Mac ist aus demselben Xcode-Projekt gebaut wie die
iPhone- und iPad-App: eine Codebasis, eine Engine, zwei Fensterformen. Du
nutzt es wie ein VPN (verbinden, und dein Datenverkehr erscheint von
woanders), aber es tritt über echte Heimanschlüsse aus, geteilt von anderen
Mitgliedern, nicht über Rechenzentren. Diese Tour behandelt die
Mac-förmigen Teile vollständig und geht die geteilten Funktionen mit genug
Tiefe durch, um sie zu nutzen; wo das Verhalten identisch mit iOS ist, hat
die [iOS-Tour](/docs/tour-ios) die erschöpfende Fassung. Für Installation
und erstes Verbinden siehe
[Erste Schritte auf macOS](/docs/getting-started-macos); für das, was von
Mitgliedern betriebene Exits ändern, den [Überblick](/docs/overview).

## Wie die App gebaut ist

Zwei Prozesse, wie jedes ernsthafte VPN auf Apple-Plattformen:

- **Die App** (Bundle `network.ur`) ist das Fenster und das
  Menüleisten-Extra.
- **Die Tunnel-Extension** (`network.ur.extension`) ist eine
  `NEPacketTunnelProvider`-Network-Extension, die macOS startet und
  beaufsichtigt. Dein Datenverkehr bewegt sich durch diesen Prozess — dein
  Schutz hängt also nie davon ab, dass das Fenster offen ist.

Die App spricht mit dem Tunnel über ein lokales Device-RPC (einen privaten
Steuerkanal zwischen den beiden Prozessen), sie kann sich also an einen
bereits laufenden Tunnel anhängen. Beende und öffne die App mitten in der
Sitzung, oder lass sie abstürzen, und sie übernimmt den laufenden Tunnel,
statt ihn neu zu starten. Das ist auch der Grund, warum macOS dich beim
ersten Verbinden eine VPN-Konfiguration genehmigen lässt: Die Extension ist
eine systemverwaltete Komponente, und das OS verlangt Zustimmung.

Die App verlangt macOS 13.5 oder neuer, und alles ist Open Source auf
[github.com/urnetwork](https://github.com/urnetwork) — Aussagen wie „der
Datenpfad loggt nichts“ lassen sich also im Code prüfen, statt sie auf
Vertrauen zu nehmen. Kein unabhängiges Audit deckt das Protokoll oder den
Server-Code des Operators ab, wo die Privacy-Zusagen liegen. Zwei externe
Prüfungen aus 2025 decken andere Flächen ab: ein Penetrationstest der
Web-Anwendung und API und eine MASA-AL2-Prüfung der Android-App durch die
Leviathan Security Group, die bestanden wurde. Keine der beiden deckt die
Mac-App ab. Das [Bedrohungsmodell](/docs/threat-model) verzeichnet beide
und ihre Grenzen.

## Das Fenster: eine Seitenleiste mit vier Bereichen

Das Hauptfenster ist eine geteilte Ansicht. Die Seitenleiste hat dieselben
vier Bereiche wie die iOS-Tabs (**Verbinden** (Connect), **Konto**
(Account), **Bestenliste** (Leaderboard), **Support**), und der gewählte
Bereich füllt den Rest des Fensters.

### Verbinden

Der große Globus ist der Verbinden-Button. Die Statuszeile darunter liest
**Mit N Providern verbunden** (Connected to N providers), und ein Klick auf
diese Zeile öffnet **Provider-Standorte** (Provider Locations): ein
drehbarer Globus über der Liste der Provider, die dich gerade wirklich
tragen. Erwarte mehrere zugleich, üblicherweise drei bis acht. Dein Client
fährt zwei Sets nebeneinander (ein Qualitäts-Set für HTTPS, ein
Geschwindigkeits-Set für alles andere) und pinnt jede Website auf einen
Provider — das Bild ist also mit Absicht plural, während jede einzelne
Website weiterhin eine stabile Adresse sieht. Langsame oder verschwundene
Provider werden automatisch ersetzt; geht einer mitten im Stream offline,
kostet das höchstens ein kurzes Stocken, während diese Website auf einen
anderen in deinem Set umzieht, und zieht sich eine ganze Sitzung, verbinde
neu, um ein frisches Set zu ziehen. Der [Überblick](/docs/overview) erklärt
den Pfad jeder Verbindung, warum er bei vier Etappen endet und was jede
Partei entlang davon sehen kann und was nicht.

Unter dem Globus sitzt der Detail-Drawer: dein gewählter Standort, die
**Verbindungsoptionen** (Connect options) (Verbindungsmodus, Feste IP
(Fixed IP), Starke Anonymisierung (Strong Anonymization),
Post-Quanten-Verschlüsselung (Post Quantum Encryption)), die
Statistik-Karten Remote / Blockiert / Lokal (Remote / Blocked / Local), die
Client-Verträge öffnen, die Split-Regeln und das DNS-Panel, und der
Schalter **Werbung und Tracker blockieren** (Block ads and trackers).
Verbindung teilen ist nicht hier. Es liegt in Konto → Einstellungen.

| Einstellung | Standard | Wirkung | Hauptkosten |
|---|---|---|---|
| Verbindungsmodus (Connection mode) | Auto | Auto fährt beide Provider-Sets und routet jedes Paket ins passende | Web oder Streaming legen sich auf ein einzelnes Set fest |
| Feste IP | Aus | Verengt das Fenster auf einen Provider, sodass jede Website eine stabile Adresse sieht | Gibt den pluralen Exit auf |
| Starke Anonymisierung | An | Verbietet einen direkten Client-zu-Provider-Pfad, sodass ein Provider nie deine echte IP sieht | Langsamer als der direkte Pfad |
| Post-Quanten-Verschlüsselung | An | Versiegelt die Sitzung Ende-zu-Ende bis zum Provider, sodass der Operator Chiffretext trägt | Überspringt Provider, mit denen keine Versiegelung möglich ist |
| Werbung und Tracker blockieren | Aus | Filtert Werbung und Tracker aus allem, was der Tunnel trägt | Gefiltert wird tunnelweit, nicht pro App |

- Starke Anonymisierung auszuschalten ist der Direktmodus: schneller, und
  dieser Provider sieht dann deine echte Adresse.
- Die Versiegelung ist fail-closed. Solange die
  Post-Quanten-Verschlüsselung an ist, sendet und akzeptiert der Client
  keine Anwendungsdaten im Klartext: Ein Provider, mit dem er keine
  versiegelte Sitzung aufbauen kann, wird übersprungen statt unversiegelt
  genutzt. Der Preis ist Verfügbarkeit, nicht Vertraulichkeit — du
  verlierst diesen Provider, nicht deine Verschlüsselung. Jeder aktuelle
  Provider-Build aktiviert die Responder-Seite, das ist also selten.
  Schalte die Einstellung aus, dann kann der Verkehr wieder den
  Standardpfad nehmen. Noch zeigt keine App ein
  Versiegelt-oder-nicht-Urteil pro Verbindung.

Ein Provider ist der echte Anschluss eines anderen Mitglieds; die Plattform
ist der Operator dazwischen, der dich ihnen zuordnet. Ein Provider sieht,
wohin der Datenverkehr geht, den er trägt — der Blick, den dein
Internetanbieter heute auf dich hat —, aber nicht, was darin ist, denn fast
jede Website versiegelt ihre eigenen Inhalte mit HTTPS. Standardmäßig
erfährt er nie deine echte IP, die bei der Plattform bleibt. Die Plattform
wiederum behält fast nichts: Deine Adresse wird als Einweg-Hash mit
geheimem Schlüssel (verwürfelt mit einem geheimen Schlüssel, nicht
umkehrbar) über den umgebenden Adressblock gehalten statt als die Adresse
selbst, und das Transferregister verzeichnet Bytezahlen zwischen
Client-IDs, nie die Websites, die du besuchst. Eine Geo-Abfrage legt
allerdings eine ungefähre Stadt zu jeder Verbindung ab, das grobe Wo ist
also bekannt; das Was nie. Mit beiden Standardwerten an erfährt ein
Provider nie, wer du bist, und der Operator kann nicht lesen, was du
sendest — keine einzelne Partei hält also zugleich deine Identität und
deine Aktivität.

| Modus | Operator sieht | Provider sieht | Standard und Verfügbarkeit |
|---|---|---|---|
| **Relay, versiegelt** | dein Konto und deine Quellverbindung, auf welchen Providern du bist, und Chiffretext mit Timing und Volumen | Ziele, die er nach außen trägt, und eine Geräte-/Vertrags-ID, **nicht** deine echte IP | der ausgelieferte Standard: Post-Quanten-Verschlüsselung, an im Connect-Drawer |
| **Relay, Standard** | dein Konto und deine Quellverbindung, auf welchen Providern du bist, und die Ziele und Paketbytes darin | Ziele, die er nach außen trägt, und eine Geräte-/Vertrags-ID, **nicht** deine echte IP | nur mit ausgeschalteter **Post-Quanten-Verschlüsselung** |
| **Direkt** | weniger Relay-Beteiligung | **deine echte IP** und die Ziele, die er nach außen trägt | opt-in: **Starke Anonymisierung** ausschalten |

Grenze: Nichts verifiziert, dass die dir angebotenen Provider voneinander
oder vom Operator unabhängig sind, und der Operator kann selbst Provider
betreiben. Das [Bedrohungsmodell](/docs/threat-model) spielt diese Zeilen
gegen benannte Angreifer durch, einschließlich eines feindseligen
Operators, und benennt ausdrücklich, wo jede versagt.

Klick auf die Standortkarte, und die Provider-Liste öffnet sich. Auf dem
Mac gleitet sie als Panel neben die Verbinden-Ansicht statt als Sheet, und
der Toolbar-Button **Provider-Liste anzeigen** (Show Provider List)
schaltet sie ebenfalls um. Beim Durchstöbern listet sie Länder, jedes mit
einer Live-Zahl der online befindlichen Provider; tipp einen Ortsnamen in
**Provider suchen** (Search providers), und in den Ergebnissen erscheint
ein Abschnitt **Städte** (Cities). Auf Stadtebene zielst du per Suche,
nicht per Scrollen. Jeder Standort ist das Gerät eines Mitglieds, das
physisch dort ist: Die Plattform geolokalisiert die Verbindung, die sie
beobachtet, und eine Adresse, die nach Rechenzentrum oder VPN aussieht,
wird herabgestuft statt geglaubt. „Bester verfügbarer“ (Best available)
optimiert auf Geschwindigkeit in deiner Nähe; ein bestimmter Standort lässt
dich dort erscheinen.

### Konto

Identität und Tarif leben hier:

- **Tarif (Plan).** Gratis ist ein echtes tägliches Datenkontingent; UR Pro
  ein großes monatliches für 5 $/Monat oder 40 $/Jahr. Aktuelle Zahlen auf
  [ur.io/products](https://ur.io/products).
- **Deine Teilen-Aktivität.** Wo das Teilen eingerichtet wird, mit einer
  Aufschlüsselung dessen, was deines getragen hat. Die Einstellungen
  verlinken es als „Nutzt das UR Protocol“ (Uses the UR Protocol);
  [ur.xyz](https://ur.xyz) dokumentiert, wie die Vergütung fürs Mitmachen
  funktioniert.
- **Guthaben-Codes (Balance codes).** Einmalige Daten-Aufladungen: eine
  Geschenkkarte für Daten, ohne angehängtes Abo.
- **Blockierte Standorte (Blocked locations).** Länder, über die du nie
  austreten willst.
- **Provider-Identitäten (Provider identities).** Die Provider, mit denen
  dein Client gerade eine verifizierte versiegelte Sitzung hält.
- **Das Post-Quanten-Identitäts-Panel.** Unten behandelt.
- **Einstellungen (Settings).** Wo Verbindung teilen (Provide mode), der
  Kill Switch, blockierte Standorte, der Start beim Anmelden, deine
  Seedphrase und Anmeldemethoden und die Kontolöschung alle leben.

Die Einstellungs-Schalter auf einen Blick:

| Einstellung | Standard | Wirkung | Hauptkosten |
|---|---|---|---|
| Verbindung teilen (Provide mode) | Nie | Teilt die übrige Bandbreite deines Mac öffentlich, oder nur mit deinen eigenen Geräten | Jedes getragene Byte zählt gegen ein Datenlimit des Internetanbieters |
| Kill Switch | Aus | Verweigert den lokalen Fallback, sodass Datenverkehr stoppt statt zu lecken, wenn kein Provider erreichbar ist | Kein Datenverkehr, wenn Provider ausfallen |
| URnetwork beim Systemstart starten (Launch URnetwork on system startup) | Aus | Startet die App beim Anmelden über macOS' eigenen Anmeldeobjekte-Dienst | Ein Eintrag in Systemeinstellungen → Anmeldeobjekte |

Ohne E-Mail zu starten ist hier ein erstklassiger Weg. **Sofort-Konto
erstellen** (Create Instant Account) auf dem Login-Bildschirm erzeugt in
einem Klick ein echtes, dauerhaftes Netzwerk, gesichert durch eine
Seedphrase, die die Plattform generiert und einmal zeigt, sofort nach der
Erstellung. Sichere sie: Sie ist der einzige Weg zurück, der Operator
behält nur gehashte Formen davon, und gesichert überlebt das Konto diesen
Mac. Im Konto-Bereich kannst du dann jede andere Anmeldemethode (Apple,
Google, E-Mail oder Telefon, Solana, Bittensor) an dasselbe Netzwerk
anhängen, unter Erhalt von Guthaben und Historie. Eine E-Mail oder
Telefonnummer ist dein Anmelde- und Wiederherstellungsweg, mehr nicht, und
die Seedphrase- und Wallet-Wege, mit On-Chain-USDC-Zahlung, lassen ein
Konto ganz ohne E-Mail, Namen oder Karte auskommen. Ein **Auth-Code**,
erzeugt auf irgendeinem schon angemeldeten Gerät, ist der schnellste Weg,
deinen Mac auf ein bestehendes Konto zu bringen.

### Bestenliste

Top-Provider nach bewegten Daten, nie irgendetwas über irgendjemandes
Surfen. Teile von deinem Mac, und du kannst hier erscheinen, öffentlich mit
Netzwerknamen oder privat, unbenannt. Teilst du nicht, stehst du schlicht
nicht darauf.

### Support

Tarife, Hilfe, Feedback und Community-Links, mit der Möglichkeit,
Client-Logs an einen Bericht anzuhängen: der normale Weg, wenn etwas
kaputtgeht. Außerhalb der App funktioniert feedback.ur.io aus jedem
Browser; Sicherheitsfunde gehen an security@ur.io unter der
Offenlegungsrichtlinie auf ur.io/vdp.

## Das Menüleisten-Extra

URnetwork lebt auch in der Menüleiste, und das ist der schnellste Weg, die
App im Alltag zu nutzen:

- **Status auf einen Blick.** Verbunden und Teilend, jeweils mit Haken oder
  Kreuz.
- **Verbinden / Trennen (Connect / Disconnect).** Ein Klick, kein Fenster
  nötig.
- **Anzeigen (Show).** Holt das Hauptfenster zurück.
- **URnetwork beenden (Quit URnetwork).** Trennt und beendet.

Schließ das Fenster, und die App läuft in der Menüleiste weiter; der Tunnel
läuft ohnehin weiter, denn er ist ein separater, systemverwalteter Prozess.
⌘Q ist absichtlich auch kein Beenden: Es versteckt das Fenster und nimmt
die App aus dem Dock in die Menüleiste. **URnetwork beenden** hier ist der
echte Ausstieg, und er nimmt den Tunnel mit herunter.

## Mit iOS geteilt: die tiefen Funktionen

Diese funktionieren identisch zur iOS-App; die [iOS-Tour](/docs/tour-ios)
behandelt jede in vollem Detail.

### Eigenes DNS

Ein vollständiges DNS-Panel unter Verbinden. DNS ist das Telefonbuch des
Internets (es verwandelt einen Namen wie netflix.com in die Adresse, mit
der sich dein Mac verbindet) und ein klassischer Ort für Schnüffeln und
Blockieren durch lokale und regionale Firewalls. Du musst das Panel nicht
anfassen: Der Standard, verschlüsseltes DNS over HTTPS, aufgelöst durch den
Tunnel, ist bereits die sicherste Einstellung. Von dort kannst du jede
Kombination aus **DoH (remote/lokal)** und **unverschlüsseltem DNS
(remote/lokal)** schalten, die Resolver-Listen selbst bearbeiten und den
**lokalen DNS-Fallback** (local DNS fallback) nutzen, der einen lokalen
Resolver mitlaufen lässt, während der Tunnel startet, damit Auflösungen
während des Handshakes nie stocken (aus heißt: DNS löst nur durch den
Tunnel auf). Der Bildschirm bietet empfohlene Einstellungen pro Land, weil
manche nationalen Netze Auflösungen genug stören, um die strengste
Konfiguration zu brechen, mit Ein-Tipp-Anwenden und Ein-Tipp-Rückkehr zu
den sicheren Standardwerten, plus vorgeschlagene Server, markiert in der
Farbe deines verbundenen Landes.

### Split-Regeln

Route bestimmten Datenverkehr am Tunnel vorbei oder pinn ihn fest, auf
Domain- und IP-Ebene. Tipp auf Live-Datenverkehr, um ihn lokal zu routen —
die Lösung, wenn ein Büro-Intranet, Drucker oder NAS hinter dem Tunnel
verschwindet. Oder halte eine Website auf einem einzelnen Provider für eine
stabile Adresse, was adress-empfindliche Websites wie Banken ruhig hält;
dieser Provider sieht dann deine Besuche auf dieser einen Website,
weiterhin ohne deine Identität oder Inhalte. Regeln erfassen den ganzen
mit-assoziierten Netzwerk-Cluster, CDN- und Subdomain-Datenverkehr zieht
also gemeinsam um. Wie auf iOS gibt es **hier kein Split-Tunneling pro
App**. Android und Windows haben es, aber Apple-Plattformen geben VPN-Apps
keinen unterstützten Pro-App-Haken — Regeln auf dem Mac sind also auf
Netzwerkebene.

### Verbindung teilen

Das Teilen der übrigen Bandbreite deines Mac (ein Desktop an einem guten
Upload ist genau das Gerät, das das Netzwerk will) wird in Konto →
Einstellungen → Verbindungen eingestellt, wo **Verbindung teilen** (Provide
mode) eine Vierfach-Wahl ist statt eines Schalters:

| Modus | Was er trägt |
|---|---|
| **Nie (Never)** | Nichts. Der Standard: Du bist rein Nutzer |
| **Auto** | Öffentlichen Datenverkehr, während du verbunden bist; nur deine eigenen Geräte, wenn nicht |
| **Immer (Always)** | Öffentlichen Datenverkehr, verbunden oder nicht |
| **Netzwerk (Network)** | Immer nur deine eigenen Geräte |

Öffentlicher Datenverkehr wird unter signierten Verträgen gemessen
(kryptografischen Vereinbarungen, die Bytes zwischen Client-Identitäten
zählen — so wird Nutzung abgerechnet, ohne Ziele aufzuzeichnen), und
Provider nehmen am UR Protocol teil; [ur.xyz](https://ur.xyz) dokumentiert,
wie die Vergütung für diese Teilnahme funktioniert.

Die Sicherheit ist auf deiner eigenen Maschine konstruiert. Die quelloffene
Inspektionsschicht der Connect-Engine läuft auf deinem Mac am Ausgang und
blockiert Filesharing (BitTorrent-Klasse) und Angriffsmuster-Datenverkehr,
bevor er deine Verbindung verlässt. Was ein Treffer erzeugt: Das Paket wird
verworfen, und eine Filesharing-Signatur hebt zusätzlich eine
Missbrauchsmarkierung an den Operator, die nur die ID des sendenden Geräts
und einen Boolean trägt (kein Ziel, keine Domain, keine Inhalte), und für
die der Operator heute keinen Handler ausliefert. Verwürfe von
Angriffsmustern und opaken Tunneln heben gar nichts. Derselbe Filter ist
der Grund, warum URnetwork absichtlich kein Torrenting-Werkzeug für Nutzer
ist. Grenze: Kein Design mit geteiltem Exit macht das Risiko exakt null,
weshalb das Publikum deine Wahl bleibt, und jedes Byte, das du trägst,
zählt gegen ein Datenlimit des Internetanbieters — auf einem Tarif mit
Volumenlimit teile also selektiv oder gar nicht.

### Das Post-Quanten-Identitäts-Panel

Die Einstellung selbst ist **Post-Quanten-Verschlüsselung**, ein Schalter
im Connect-Drawer unter den Verbindungsoptionen, und sie wird **an**
ausgeliefert: Versiegelt ist der Zustand, in dem eine frische Installation
startet, keine Wahl, die du treffen musst. Das Konto zeigt dann die
Post-Quanten-Sitzungsidentität deines Clients mit einem Teilen-Sheet für
den Abgleich über einen anderen Kanal, dieselbe Idee wie der Vergleich von
Sicherheitsnummern in einer Messaging-App: Den Fingerabdruck über einen
anderen Kanal vorzulesen beweist, dass die versiegelte Sitzung dort endet,
wo du denkst. Was die Einstellung abdeckt: Dein Client versiegelt
Datenverkehr direkt zu einem Provider über eine TLS-1.3-Sitzung,
ausgehandelt mit **X25519MLKEM768** (hybrid klassisch + ML-KEM), sodass der
Operator in der Mitte Bytes trägt, die er nicht lesen kann, und heute
angefertigte Aufzeichnungen selbst gegen einen künftigen Quantencomputer
versiegelt bleiben sollen (die Bedrohung „harvest now, decrypt later“). Sie
ist fail-closed: Solange die Einstellung an ist, sendet und akzeptiert der
Client keine Anwendungsdaten im Klartext, ein Provider, mit dem er keine
versiegelte Sitzung aufbauen kann, wird also übersprungen statt
unversiegelt genutzt — du verlierst diesen Provider, nicht deine
Verschlüsselung. Jeder aktuelle Provider-Build aktiviert die
Responder-Seite, das ist also selten; schalte die Einstellung aus, dann
kann der Verkehr wieder den Standard-Plattformpfad nehmen. Noch zeigt keine
App ein Versiegelt-oder-nicht-Urteil pro Verbindung.
Identitätssignaturen bleiben Ed25519, und „Post-Quanten“ meint diesen
Sitzungs-Schlüsselaustausch, nichts Breiteres.

## Fehlerbehebung

### Die Genehmigung der VPN-Konfiguration

Das erste Verbinden löst einen Systemdialog aus, der bittet, eine
VPN-Konfiguration zu erlauben. Wurde er abgelehnt, kann der Tunnel nie
starten. Genehmige ihn beim nächsten Versuch, oder schau in
**Systemeinstellungen → VPN** (auch unter Netzwerk sichtbar), wo die
URnetwork-Konfiguration gelistet und aktiviert sein sollte.

### Mehrere VPN-Profile, und wie die App sie verwaltet

Neuinstallationen und Upgrades können macOS mit mehr als einem
URnetwork-VPN-Profil zurücklassen. Die App erwartet das: Beim Verbinden
zählt sie jedes Profil auf, und scheitert das Starten eines, setzt sie
dieses Profil zurück und versucht es erneut, dann geht sie zum nächsten.
Läuft schon ein Tunnel, übernimmt sie ihn über das Device-RPC, statt neu zu
starten. Kaputte Profile werden zurückgesetzt oder entfernt, mit einer
Obergrenze für Entfernungen, und jede Profil-Operation ist mit Frist
versehen, damit ein verklemmter System-Daemon die App nicht aufhängen kann.
Es ist automatisch, und steht hier, damit die Einträge in den
Systemeinstellungen Sinn ergeben.

### „Failed to load VPN profiles“ (Fehler 12)

Scheitert das Verbinden mit **„Failed to load VPN profiles“** (Fehlercode
12), weigert sich der VPN-Einstellungsspeicher des Systems, Profile
aufzuzählen — ein Zustand, den die App von innen nicht reparieren kann.
Repariere ihn von Hand:

1. Öffne die Systemeinstellungen und such die VPN-Konfigurationen
   (Systemeinstellungen → VPN, oder das Äquivalent von Allgemein → VPN &
   Geräteverwaltung auf deiner macOS-Version).
2. Entferne die URnetwork-Konfiguration(en).
3. Verbinde neu aus der App und genehmige die frische Konfiguration.

Das Entfernen der Konfiguration löscht Leitungen, keine Daten: Dein Konto,
deine Einstellungen und Split-Regeln bleiben unberührt, und das nächste
Verbinden erstellt sie neu (und zeigt den einmaligen Genehmigungsdialog
erneut).

### Beim Anmelden starten

**URnetwork beim Systemstart starten** (Launch URnetwork on system startup)
ist ein Schalter in Konto → Einstellungen, unter System. Er registriert die
App bei macOS' eigenem Anmeldeobjekte-Dienst — er funktioniert also auf
jeder Version, die die App unterstützt, und der Eintrag erscheint in
Systemeinstellungen → Allgemein → Anmeldeobjekte (Login Items), wo du ihn
auch von Hand entfernen kannst. Den Schalter auszuschalten hebt die
Registrierung wieder auf.

### Wie der Kill Switch hier funktioniert

Wie auf iOS: Die App liefert einen Schalter **Kill Switch** in Konto →
Einstellungen → Verbindungen mit, dasselbe SDK-Steuerelement, das jede
URnetwork-App hat. Er startet aus, ihn einzuschalten ist also eine bewusste
Handlung. Eingeschaltet weigert sich der Client, auf deine lokale Route
zurückzufallen — der Datenverkehr stoppt also, statt zu lecken. Was der Mac
nicht hinzufügt, ist Durchsetzung auf OS-Ebene. Die App setzt
`includeAllNetworks` nicht — stirbt der Tunnel-Prozess unerwartet, stellt
macOS also die normale Netzverbindung wieder her, statt geschlossen zu
scheitern: Deine Apps arbeiten über das darunterliegende Netz mit deiner
echten IP weiter, wahrscheinlich ohne dass du mehr als einen kurzen Ruckler
bemerkst. Der Haken/das Kreuz in der Menüleiste ist der Stolperdraht auf
einen Blick. Die App beaufsichtigt den Tunnel und stellt Profile aggressiv
wieder her, aber sie bittet das OS derzeit nicht, Datenverkehr hart zu
blockieren, wenn der Tunnel unten ist. Brauchst du garantiert geschlossen
scheiterndes Verhalten, erzwing es außerhalb des Mac (eine Router- oder
Firewall-Regel, die nur Tunnel-Datenverkehr durchlässt), oder erledige
browser-kritische Arbeit über die URnetwork-Browser-Erweiterung, deren Kill
Switch standardmäßig an ist und nur Browser-Datenverkehr abdeckt.

### Die Logs des Tunnels lesen

Die Tunnel-Extension loggt ins vereinheitlichte Systemlog: Console.app,
keine Dateien.

1. Öffne **Console.app** und wähl deinen Mac.
2. Aktiviere im Menü „Aktion“ **Info-Meldungen einbeziehen** (Include Info
   Messages) und **Debug-Meldungen einbeziehen** (Include Debug Messages).
   Die nützlichen Zeilen liegen auf diesen Stufen.
3. Filter nach dem Subsystem `network.ur.extension` oder such nach
   „URnetwork“, und reproduziere dann das Verbinden.

### Verhalten im Ruhezustand

Der Tunnel ist mit ausgeschaltetem `disconnectOnSleep` konfiguriert: Den
Deckel zu schließen reißt die Sitzung nicht ab, du machst also weiter, wo
du warst, statt bei jedem Aufwachen neu zu handshaken. Ein schlafender Mac
bewegt keinen Datenverkehr. Er surft nicht und er teilt nicht; die
Einstellung erspart dir nur den erneuten Handshake.

## Wohin als Nächstes

- [Erste Schritte auf macOS](/docs/getting-started-macos) für den kurzen
  Weg.
- [Die iOS-Tour](/docs/tour-ios) für dieselben Funktionen in ihrer
  erschöpfenden Form, plus Siri-Kurzbefehle.
- Der [Überblick](/docs/overview) dafür, wie das Netzwerk Ende zu Ende
  funktioniert, und die [FAQ](/docs/faq) für schnelle Antworten.
