Umbenennen und umnummerieren

Du kannst ein Netz umbenennen und seine IPv4-Adressen in einen anderen Bereich verschieben, ohne etwas neu einzurichten. Alte Adressen funktionieren eine Woche weiter, damit ein Gerät, das in der Zeit offline ist, nicht abgeschnitten wird.

Worum es geht

Der Name eines Netzes ist ein Etikett. Er steht in juist status, und mit ihm nennst du das Netz in Befehlen. Ein neuer Name ändert sonst nichts.

Jedes Gerät hat eine Adresse im Netz: eine IPv4- und eine IPv6-Adresse. Umnummerieren verschiebt die IPv4-Adressen, aller Geräte oder eines einzelnen. Das brauchst du, wenn der Bereich des Netzes mit einem LAN kollidiert, das du nutzt, oder mit einem anderen Netz auf demselben Gerät. IPv6-Adressen ändern sich nie.

Beides sind Änderungen am Mitgliederlog, der signierten Liste aller Änderungen, die jedes Gerät prüft (So funktioniert juist). Ein Admin macht sie, und jedes Gerät zieht nach. Braucht das Quorum mehr als einen Admin, wartet die Änderung auf die anderen (Mehrere Admins).

Das Netz umbenennen

1auf dem Gerät eines Admins
juist network rename office

Es gibt renamed "home" to "office" aus, und jedes Gerät übernimmt den neuen Namen.

Die Adressen aller Geräte verschieben

2auf dem Gerät eines Admins

Das ganze Netz in einen neuen Bereich verschieben:

$ juist network renumber 10.7.0.0/22
move "home" from 198.18.36.0/22 to 10.7.0.0/22, old addresses until Fri 9 Oct 14:00? [y/N] y
moving to 10.7.0.0/22; old addresses until Fri 9 Oct 14:00

Jedes Gerät behält seinen Platz im Bereich, wo der frei ist: Aus 198.18.36.2 wird 10.7.0.2.

3auf einem beliebigen Gerät

Den Umzug verfolgen:

$ juist network
home
  IPv4          10.7.0.0/22, 198.18.36.0/22 until Fri 9 Oct 14:00
  IPv6          fd77:9359:d9fb::/48

MOVING  FROM         TO        OLD UNTIL
laptop  198.18.36.1  10.7.0.1  Fri 9 Oct 14:00
nas     198.18.36.2  10.7.0.2  Fri 9 Oct 14:00

juist devices zeigt die neue Adresse jedes Geräts und die alte dahinter, als 10.7.0.2 (was 198.18.36.2).

Bis zur Frist antworten die Geräte unter beiden Adressen. Danach gelten nur noch die neuen.

Die Adresse eines Geräts verschieben

juist network renumber phone 10.7.0.9

Das verschiebt phone auf 10.7.0.9, im Bereich des Netzes. Seine alte Adresse funktioniert bis zur Frist weiter, wie oben.

Alte Adressen sofort stilllegen

Wenn jedes Gerät vom Umzug erfahren hat, musst du nicht auf die Frist warten:

Um …führe aus
ein Gerät zu verschieben und seine alte Adresse sofort stillzulegenjuist network renumber phone 10.7.0.9 --finish
alle alten Adressen jetzt stillzulegenjuist network renumber --finish

--finish warnt vorher: Geräte, die vom Umzug noch nichts wissen, verlieren die alte Adresse.

Gut zu wissen

  • Alte IPv4-Adressen funktionieren standardmäßig 7 Tage weiter. --for 12h oder --for 14d setzt eine andere Zeit; wähle sie so lang, dass jedes Gerät in der Zeit einmal online kommt.
  • Die Frist steht fest, sobald die Änderung vorgeschlagen ist. Bestätigen andere Admins sie später, sehen sie, wie viel davon noch übrig ist.
  • Ein Gerät behält eine alte Adresse. Wird es vor der Frist noch einmal verschoben, fällt die frühere alte Adresse sofort weg, und juist warnt davor.
  • Stillgelegte Adressen bleiben reserviert, damit kein anderes Gerät sie bekommt, bis zu einem einfachen juist network renumber --finish.
  • Der neue Bereich muss Platz für alle Geräte haben. juist warnt, wenn er sich mit einem LAN dieses Hosts überschneidet oder mit einem anderen Netz, in dem das Gerät ist.
  • Konfiguration außerhalb von juist, die alte Adressen nennt, wird nicht mitverschoben: Firewall-Regeln, Einträge in /etc/hosts und Ähnliches passt du selbst an.
  • Mit mehreren Netzen auf dem Gerät nennst du das Netz zuerst: juist network renumber work 10.7.0.0/24, juist network rename work office.

Wenn etwas nicht klappt

Du siehstWas zu tun ist
juist status: no IPv4 on this host: …zwei Netze hier überschneiden sich; nummeriere eines um, wie der Hinweis sagt
juist: 10.7.0.9 is taken by naseine freie Adresse wählen
juist: 10.7.0.9 is outside the network's range …eine aus dem Bereich wählen, den juist network zeigt
juist: the network predates renumberingsobald alle Geräte diese Version haben: juist log upgrade