Node-ID oder Netzwerk-ID: Welche bringt ein Gerät in ein ZeroTier-Netzwerk
Eine Node-ID benennt ein Gerät, eine Netzwerk-ID das virtuelle Netzwerk. Zum Beitreten braucht man das Netzwerk, zum Autorisieren eines Mitglieds die Identität des Geräts.
In jedem ZeroTier-Gespräch tauchen zwei Kennungen auf, und sie sehen ähnlich genug aus, um in einem Chatfenster verwechselt zu werden. Die Node-ID benennt ein Gerät. Die Netzwerk-ID benennt das virtuelle Netzwerk, dem dieses Gerät beitreten will. Der Beitritt braucht die zweite, die Autorisierung eines Mitglieds die erste.
Zwei Kennungen, zwei Aufgaben
Eine Node-Identität entsteht beim ersten Start des Dienstes auf einem Rechner, und sie ist eine hexadezimale Adresse aus zehn Zeichen. Sie bleibt bei dieser Installation, bis die Identitätsdateien entfernt werden, weshalb eine Neuinstallation ein neues Mitglied erzeugen kann, das niemand freigegeben hat. Eine Netzwerk-ID besteht aus sechzehn hexadezimalen Zeichen und bezeichnet ein virtuelles Netzwerk statt eines Rechners. Der Controller, dem das Netzwerk gehört, ist selbst ein Node, weshalb die ersten zehn Zeichen der Netzwerk-ID mit der Adresse des Controllers übereinstimmen.
Keiner der beiden Werte ist ein Geheimnis, und keiner ersetzt den anderen. Die Netzwerk-ID mit allen Teilnehmern zu teilen ist normal; eine Node-ID zu teilen weist den Controller auf ein Gerät hin.
Jeden Wert aus dem Befehl lesen, der ihn meldet
Ein Befehl meldet die Identität des lokalen Dienstes, ein anderer die Netzwerke, denen er beigetreten ist. Den falschen Befehl nach einem Wert zu fragen, ist der Weg, auf dem Leute eine Netzwerk-ID in eine Mitgliederliste einfügen.
zerotier-cli info zerotier-cli status zerotier-cli listnetworks
Der erste gibt die Node-Adresse aus und ob der Dienst online ist. Der zweite ergänzt Angaben zu Version und Port. Der dritte listet beigetretene Netzwerke mit ihren IDs, Status und zugewiesenen Adressen und ist der einzige, der verwendet werden sollte, wenn Sie die Netzwerk-ID brauchen.
Mit dem Netzwerk beitreten, mit dem Node autorisieren
Der Beitrittsbefehl nimmt die Netzwerk-ID, die derjenige bereitstellt, der den Controller betreibt. Eine positive Antwort des Befehls bedeutet, dass die Anfrage eingereicht wurde, nicht dass die Mitgliedschaft in einem privaten Netzwerk gewährt wurde.
Nach dem Beitritt autorisiert der Administrator das Gerät über seine Node-ID in der Mitgliederliste dieses Netzwerks. Er braucht die Netzwerk-ID nicht erneut und kann ein Gerät nicht über seinen Hostnamen autorisieren, weil die Identität die Adresse ist. Wenn Sie der Administrator sind, lesen Sie die Mitgliederliste und gleichen Sie die Node-Adresse mit der Anfrage ab. Eine Anfrage, die ein Netzwerk, aber keine Node-Adresse nennt, ist nicht ausführbar.
Das gemeinsame Präfix hat einen Grund
Weil eine Netzwerk-ID mit der Node-Adresse des Controllers beginnt, erscheinen dieselben zehn Zeichen an beiden Stellen. Das ist eine Routing-Bequemlichkeit, kein Hinweis darauf, dass die beiden Werte austauschbar sind.
Das erklärt auch, warum die Identität eines Controllers mehr zählt als sein Anzeigename. Einen Controller unter einer neuen Identität wiederherzustellen erzeugt einen anderen Adressraum, sodass die unter der alten definierten Netzwerke nicht dieselben Netzwerke sind, selbst wenn die Namen wiederverwendet werden.
Bewahren Sie die Controller-Identität zusammen mit ihrer Konfiguration in Ihrer Sicherung auf. Diese Identität als ein neu erzeugbares Etikett zu behandeln, macht aus einer Wiederherstellung eine Neugestaltung.
Prüfen Sie das Ergebnis, nicht die Ausgabe des Befehls
Ein erfolgreicher Beitritt ist der Anfang der Prüfung, nicht ihr Ende. Sehen Sie sich danach den Netzwerkeintrag an und lesen Sie drei Felder: den Status, die zugewiesene Adresse und die Netzwerk-ID.
zerotier-cli listnetworks -j ip -br addr show | grep zt ping -c 2 10.147.20.5
Der erste Befehl gibt dieselbe Liste in auswertbarer Form aus, was den Vergleich mit dem erleichtert, was der Administrator erwartet hat. Der zweite bestätigt, dass die Schnittstelle eine Adresse erhalten hat, und der dritte prüft einen Peer im Netzwerk statt des lokalen Zustands.
Wenn der Eintrag ACCESS_DENIED sagt, ist die Node-ID nicht autorisiert. Wenn er NOT_FOUND sagt, ist die Netzwerk-ID falsch. Wenn er OK ohne Adresse sagt, ist die Adresszuweisung des Controllers die nächste Frage, und keine dieser drei wird durch erneutes Beitreten beantwortet.