Bug 22871 - IPv6 in UCR
IPv6 in UCR
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Network
UCS 3.0
Other Linux
: P5 enhancement (vote)
: UCS 3.0 - MS1
Assigned To: Janek Walkenhorst
Andreas Büsching
:
: 15438 (view as bug list)
Depends on:
Blocks: 14697 22872
  Show dependency treegraph
 
Reported: 2011-06-28 07:26 CEST by Stefan Gohmann
Modified: 2011-12-13 15:47 CET (History)
3 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2011-06-28 07:26:02 CEST
Es sollte möglich sein IPv6 in UCR zu konfigurieren.
Comment 1 Janek Walkenhorst univentionstaff 2011-07-21 14:22:36 CEST
Es können jetzt IPv6-Adressen mit UCRV nach dem Format:
 interfaces/eth?/ipv6/*/{address,network}
definiert werden.

Zum Beispiel:
interfaces/eth0/ipv6/base/address=2001:db8:723::192:168:0:3
interfaces/eth0/ipv6/base/netmask=64
interfaces/eth0/ipv6/ftp/address=2001:db8:a6ae::21
interfaces/eth0/ipv6/ftp/netmask=64
interfaces/eth0/ipv6/www/address=2001:db8:a6ae::80
interfaces/eth0/ipv6/www/netmask=64

Es können nur "echte" (eth0) Schnittstellen mit IPv6 konfiguriert werden, virtuelle (eth0:0), wie sie für IPv4 für mehrere Adressen verwendet werden, funktionieren nicht.
Darum können für jede Schnittstelle mehrere Adressen zugewiesen werden, indem ein frei wählbarer Bezeichner (im obigen Beispiel www/ftp/base) vergeben wird.

Damit eine Netzschnittstelle nicht auch über NDP mit Router Advertisements konfiguriert wird, kann dies für jede Schnittstelle einzeln deaktiviert werden:
interfaces/eth0/ipv6/acceptRA=false


Das Verhalten ändert sich nicht gegenüber UCS 2.4, wenn nichts konfiguriert wird.



univention-base-files (1.0.5-1) unstable; urgency=low

  * make IPv6 configurable (Bug #22871)
Comment 2 Andreas Büsching univentionstaff 2011-08-10 12:00:12 CEST
Das Setzen von IPv6-Adressen, Netzmasken und einem Gateway funktioniert. Auch die RAs können abgeschaltet werden. Der Changelog-Eintrag ist auch vorhanden.

Es gibt noch einen Punkt: Wird das IPv4-Gateway gesetzt, dann wird dies entsprechend direkt neugesetzt. Beim IPv6-Gateway wird das nicht gemacht.

Das Anpassen der Adressen führt bei IPv4 und IPv6 zur direkten Anpassung des Interfaces.

Ich denke wenn wir dabei bleiben wollen, dass die Interfaces automatisch angepasst werden, dann sollte auch das IPv6-Gateway gesetzt werden.

Da das nicht so wichtig ist (grundsätzlich funktioniert es ja), kann das auch auf MS2 geschoben werden.
Comment 3 Stefan Gohmann univentionstaff 2011-08-10 12:21:59 CEST
(In reply to comment #2)
> Da das nicht so wichtig ist (grundsätzlich funktioniert es ja), kann das auch
> auf MS2 geschoben werden.

Es wäre gut, wenn wir die UCR Integration von IPv6 mit MS1 abschließen können.
Comment 4 Janek Walkenhorst univentionstaff 2011-08-10 16:40:22 CEST
(In reply to comment #2)
> Ich denke wenn wir dabei bleiben wollen, dass die Interfaces automatisch
> angepasst werden, dann sollte auch das IPv6-Gateway gesetzt werden.

univention-base-files (1.0.14-1) unstable; urgency=low

  * set IPv6 gateway on UCRV change (Bug #22871)
Comment 5 Andreas Büsching univentionstaff 2011-08-11 11:15:07 CEST
(In reply to comment #4)
> (In reply to comment #2)
> > Ich denke wenn wir dabei bleiben wollen, dass die Interfaces automatisch
> > angepasst werden, dann sollte auch das IPv6-Gateway gesetzt werden.
> 
> univention-base-files (1.0.14-1) unstable; urgency=low
> 
>   * set IPv6 gateway on UCRV change (Bug #22871)

Ok, das funktioniert
Comment 6 Sönke Schwardt-Krummrich univentionstaff 2011-09-15 16:59:54 CEST
(In reply to comment #1)
> Es können jetzt IPv6-Adressen mit UCRV nach dem Format:
>  interfaces/eth?/ipv6/*/{address,network}
> definiert werden.
> 
> Zum Beispiel:
> interfaces/eth0/ipv6/base/address=2001:db8:723::192:168:0:3
> interfaces/eth0/ipv6/base/netmask=64
> interfaces/eth0/ipv6/ftp/address=2001:db8:a6ae::21
> interfaces/eth0/ipv6/ftp/netmask=64
> interfaces/eth0/ipv6/www/address=2001:db8:a6ae::80
> interfaces/eth0/ipv6/www/netmask=64

Es handelt sich hierbei aber nicht um eine "Netzmaske" sondern um einen "Präfix". Daher sollten wir die UCR-Variablen "netmask" in "prefix" umbenennen, um Verwirrungen bei den Kunden zu vermeiden. Sämtliche Literatur/Standards/... verwendet das Wort "prefix".
Comment 7 Janek Walkenhorst univentionstaff 2011-09-15 17:06:45 CEST
(In reply to comment #6)
> (In reply to comment #1)
> Daher sollten wir die UCR-Variablen "netmask" in "prefix" umbenennen,
> um Verwirrungen bei den Kunden zu vermeiden. Sämtliche Literatur/Standards/...
> verwendet das Wort "prefix".
Zum Beispiel: http://en.wikipedia.org/w/index.php?oldid=448113080#Networks
Comment 8 Janek Walkenhorst univentionstaff 2011-09-19 12:59:48 CEST
univention-base-files (1.0.24-1)

Die URCV heißen jetzt prefix anstatt netmask.

Changelog angepasst.
Comment 9 Andreas Büsching univentionstaff 2011-09-22 12:04:10 CEST
(In reply to comment #8)
> Die URCV heißen jetzt prefix anstatt netmask.
> 
> Changelog angepasst.

Funktioniert und ChangeLog ist angepasst
Comment 10 Alexander Kläser univentionstaff 2011-10-19 10:01:23 CEST
(In reply to comment #8)
> univention-base-files (1.0.24-1)
> 
> Die URCV heißen jetzt prefix anstatt netmask.
> 
> Changelog angepasst.

Das erste Interface sollte statt 'base' 'default' genannt werden, das scheint vom Sprachgebrauch intuitiver.
Comment 11 Janek Walkenhorst univentionstaff 2011-10-19 11:40:56 CEST
(In reply to comment #10)
> Das erste Interface sollte statt 'base' 'default' genannt werden, das scheint
> vom Sprachgebrauch intuitiver.
Wird auch über Bug #22872 und Bug #24109 bearbeitet.


Hier sollte die default-Adresse bevorzugt werden indem sie den Platz der direkten Konfiguration in der /etc/network/interfaces einnimmt.
Comment 12 Janek Walkenhorst univentionstaff 2011-10-25 16:43:48 CEST
(In reply to comment #11)
> (In reply to comment #10)
> > Das erste Interface sollte statt 'base' 'default' genannt werden, das scheint
> > vom Sprachgebrauch intuitiver.
> Wird auch über Bug #22872 und Bug #24109 bearbeitet.
> 
> 
> Hier sollte die default-Adresse bevorzugt werden indem sie den Platz der
> direkten Konfiguration in der /etc/network/interfaces einnimmt.

"default" wird jetzt bevorzugt behandelt.

univention-base-files (1.0.33-1) unstable; urgency=low
  * special handling for IPv6 "default" address (Bug #22871)

Changelog wurde erweitert.
Comment 13 Janek Walkenhorst univentionstaff 2011-10-27 11:14:02 CEST
*** Bug 15438 has been marked as a duplicate of this bug. ***
Comment 14 Janek Walkenhorst univentionstaff 2011-10-27 11:15:08 CEST
Aus Bug #15438

(In reply to comment #5)
> Leider nicht reproduzierbar ist folgender Fehler aufgetreten:
> 
> # ucr set interfaces/eth0/ipv6/address="2001:db8:100::10"
> Create interfaces/eth0/ipv6/address
> Multifile: /etc/hosts
> File: /etc/issue
> File: /etc/apache2/mods-available/ssl.conf
> File: /etc/network/interfaces
> SIOCADDRT: File exists
> Failed to bring up eth0.
> 
> Danach lässt sich auch das entsprechende Interface bzw. das Netzwerk nicht neu
> starten - ein Blick in /etc/network/run/ifstate zeigt dann auch nur: lo=lo
> Da das interface aber noch gestartet war, hat in diesem Fall einfach das
> Hinzufügen von eth0=eth0 in ifstate Abhilfe geschaffen.

Der Fehler tritt noch auf (bei mir reproduzierbar), wenn eine neue IPv6-Adresse
hinzugefügt wird.
Comment 15 Janek Walkenhorst univentionstaff 2011-10-27 11:16:33 CEST
(In reply to comment #14)
> Aus Bug #15438
> 
> (In reply to comment #5)
> > Leider nicht reproduzierbar ist folgender Fehler aufgetreten:
> > 
> > # ucr set interfaces/eth0/ipv6/address="2001:db8:100::10"
> > Create interfaces/eth0/ipv6/address
> > Multifile: /etc/hosts
> > File: /etc/issue
> > File: /etc/apache2/mods-available/ssl.conf
> > File: /etc/network/interfaces
> > SIOCADDRT: File exists
> > Failed to bring up eth0.
> > 
> > Danach lässt sich auch das entsprechende Interface bzw. das Netzwerk nicht neu
> > starten - ein Blick in /etc/network/run/ifstate zeigt dann auch nur: lo=lo
> > Da das interface aber noch gestartet war, hat in diesem Fall einfach das
> > Hinzufügen von eth0=eth0 in ifstate Abhilfe geschaffen.
> 
> Der Fehler tritt noch auf (bei mir reproduzierbar), wenn eine neue IPv6-Adresse
> hinzugefügt wird.

Dieser Fehler konnte nur reproduziert werden, wenn eine Adresse an einem Interface doppelt vergeben wird.
Daher wird jetzt geprüft, dass keine doppelten Adressen in der /etc/network/interfaces laden:

univention-base-files (1.0.34-1)
Comment 16 Janek Walkenhorst univentionstaff 2011-10-27 11:17:15 CEST
(In reply to comment #15)
> univention-base-files (1.0.34-1)
Außerdem werden jetzt ungültige Adressen/Präfixe nicht mehr akzeptiert.
Comment 17 Andreas Büsching univentionstaff 2011-11-29 13:56:11 CET
Ungültige Adressen, Präfixe und doppelte Adressen werden abgefangen. Ein Hinweis dazu steht dann in der /etc/network/interfaces
Comment 18 Sönke Schwardt-Krummrich univentionstaff 2011-12-13 15:41:39 CET
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert werden:
"Clone This Bug"