Freigeben über


Verwenden eines Repeaters

Eine Repeaterverbindung befolgt sehr einfache Regeln:

  • Jede Kommunikation, die Server und Client füreinander beabsichtigen, wird ohne Änderung über den Repeater weitergeleitet.

  • Jede Aktion, die der Server in Bezug auf die Transportverbindung ausführt, wirkt sich auf den Repeater aus (und wirkt sich nur indirekt auf den Client aus).

  • Jede Aktion, die der Client in Bezug auf die Transportverbindung ausführt, wirkt sich auf den Repeater aus (und wirkt sich nur indirekt auf den Server aus).

Dies bedeutet, dass alle Debugbefehle, Debuggerausgaben, Steuerungsschlüssel und Dateizugriff genau so erfolgen, als wären Client und Server direkt verbunden. Der Repeater ist für alle diese Befehle unsichtbar.

Aktionen, die die Verbindung selbst beenden, wirken sich auf den Repeater aus. Wenn Sie beispielsweise einen qq -Befehl (Quit) vom Client ausgeben, wird der Server heruntergefahren und sendet ein Signal zum Herunterfahren an den Transport. Dies führt dazu, dass der Repeater beendet wird (es sei denn, er wurde mit der Option -p gestartet). Als weiteres Beispiel listet der Befehl .clients (List Debugging Clients) den Computernamen des Clients auf, zeigt jedoch das Verbindungsprotokoll an, das zum Verbinden des Servers mit dem Repeater verwendet wird.

Wenn der Server heruntergefahren wird, wird der Repeater automatisch beendet (es sei denn, er wurde mit der Option -p gestartet). Wenn der Repeater heruntergefahren wird, führt dies dazu, dass auch ein Debugclient beendet wird, obwohl ein smarter Client dies nicht. Wenn Sie den Repeater aus irgendeinem Grund direkt beenden müssen, können Sie den Task-Manager oder das kill.exe-Tool verwenden.