Bug 28468 - Fehlerhafte zufällige Zeroconf/APIPA-IP-Adresse
Fehlerhafte zufällige Zeroconf/APIPA-IP-Adresse
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Network
UCS 3.0
Other Linux
: P5 normal (vote)
: UCS 3.1
Assigned To: Stefan Gohmann
Felix Botner
: interim-2
Depends on: 28467
Blocks:
  Show dependency treegraph
 
Reported: 2012-09-11 16:19 CEST by Stefan Gohmann
Modified: 2012-12-12 21:08 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 2012-09-11 16:19:53 CEST
Das muss auch im dhclient.conf Template angepasst werden.

+++ This bug was initially created as a clone of Bug #28467 +++

In univention-installer/sbin/univention-installer-network-startup wird
versucht, eine zufällige Zeroconf-Adresse zu erzeugen:

    r1=$((RANDOM % 255))
    r2=$((RANDOM % 255))
    eval $interface\_ip="169.254.$r1.$r2"

Hier gibt es mehrere Probleme:
r1 und r2 sind im Schnitt bei jedem 65025. Fall beide 0 und ergeben damit das
Subnetz selbst: 169.254.0.0

Zudem dürfen die ersten 256 IP-Adressen gar nicht automatisch gewählt werden:

"""Wenn ein Rechner eine Link-Local-IP-Adresse konfigurieren will, wählt er mit
Hilfe eines Zufallszahlengenerators eine IP-Adresse zwischen 169.254.1.0 und
169.254.254.255 aus. Die ersten 256 und die letzten 256 Adressen sind von der
IANA für zukünftige Anwendungen reserviert und dürfen unter keinen Umständen
ausgewählt werden. Auch muss bei der Auswahl der IP-Adresse rechnerspezifische
Information einfließen, wie etwa die MAC-Adresse der Netzwerkschnittstelle, um
sicherzustellen, dass – soweit möglich – jedes Mal dieselbe IP-Adresse
generiert wird (sie wird damit also pseudozufällig gewählt)."""
Quelle: http://de.wikipedia.org/wiki/APIPA

Eine Konflikterkennung findet auch nicht statt. Ggf. haben somit zwei Systeme
die gleiche IP-Adresse.
Comment 1 Stefan Gohmann univentionstaff 2012-09-24 14:21:34 CEST
Aktuell auch ein 24iger Netz konfiguriert, das müsste demnach ein 16er Netz sein.
Comment 2 Stefan Gohmann univentionstaff 2012-09-24 14:38:34 CEST
Der Bereich 169.254.0 wurde entfernt. Zusätzlich wird das Interface als Class B Netzwerk konfiguriert.
Comment 3 Felix Botner univentionstaff 2012-10-18 17:15:34 CEST

OK Netzmaske  
   print '  option subnet-mask 255.255.0.0;'
   print '  option broadcast-address 169.254.255.255;'

OK ... dürfen die ersten 256 IP-Adressen gar nicht autom
  r1 = random.randrange(1, 255)
  r2 = random.randrange(0, 255)

-> more /etc/dhcp/dhclient.conf
lease {
  interface "eth0_1";
  fixed-address 169.254.160.60;
  option subnet-mask 255.255.0.0;
  option broadcast-address 169.254.255.255;
  expire 3 2012/10/18 23:14:40;
}


Changelog Eintrag vorhanden.
Comment 4 Philipp Hahn univentionstaff 2012-12-06 09:44:28 CET
Im DHCP-Produktest aufgefallen: svn35820
@@ -79,8 +79,8 @@ if configRegistry.is_true('dhclient/linklocal/fallback', True):
-			r1 = random.randrange(0, 255) # 0 to 254
-			r2 = random.randrange(0, 255) # 0 to 254
+			r1 = random.randrange(1, 255) # 1 to 254
+			r2 = random.randrange(0, 255) # 1 to 254

1. Der Kommentar für r2 stimmt nicht
2. Für r2 ist auch 255 erlaubt; Die Netzwerk-(all zero) und Broadcast-(all one)-Adressem können wegen 1<=r1<=255 nweiterhin nicht vorkommen.

+			r2 = random.randrange(0, 256) # 0 to 255
Comment 5 Stefan Gohmann univentionstaff 2012-12-12 21:08:01 CET
UCS 3.1-0 has been released: 
 http://forum.univention.de/viewtopic.php?f=54&t=2125

If this error occurs again, please use "Clone This Bug".