fragen stichworte

Stateful DHCPv6 unter Linux einrichten

Ich möchte in meinem lokalen Netzwerk einen DHCP-Server für IPv6 einrichten, der Adressen und weitere Informationen wie DNS/NTP usw. ausgibt. Von meinem ISP erhielt ich das IPv6-Präfix, auf das ich als & lt; Präfix & gt; in weiteren Ausschnitten.

Ich benutze den isc-dhcp-server. Unter/etc/dhcpd.conf habe ich

option dhcp6.name-servers <prefix>::2;
option dhcp6.info-refresh-time 21600;

subnet6 <prefix>::/64 {
    range6 <prefix>::1 2<prefix>::ffff:ffff;
}

Die eth0-Schnittstelle (die mit dem Router verbunden ist) wird statisch in der Datei/etc/networking/interfaces konfiguriert:

iface eth0 inet6 static
address <prefix>::2
netmask 64

Der Client verfügt über Ubuntu 14.04 LTS mit Netzwerkmanager und ist über die Schnittstelle Wlan0 an den Router gebunden (Router fungiert als Zugangspunkt). Unter der GUI-Konfiguration des Ubuntu Network-Managers auf der Registerkarte IPv6 wähle ich "Methode: automatisch, nur DHCP" (also erwarte ich eine zustandsorientierte DHCPv6-Konfiguration des Clients - es sollte eine IPv6-Adresse aus dem oben definierten Bereich erhalten).

Das passiert jedoch nicht. ifconfig impliziert, dass der Client mit der stateless-Methode konfiguriert wurde (die konfigurierte IPv6-Adresse hat die Clients, deren wlan0 HW-Adresse codiert ist)

Ich vermute, der Router hat die falschen Werbeflaggen gesetzt. Ich kann den Router jedoch nicht konfigurieren, da er vom ISP bereitgestellt wird. Was kann ich machen? Gibt es Vorschläge?

antworten

Kurz gesagt: Ich denke, der DHCP-Server hört auf der falschen Schnittstelle.

Lange Antwort: Nehmen wir an, Sie erhalten das Präfix 2001: DB8: 1234 ::/48 von Ihrem ISP. Außerdem nehmen wir an, dass Ihr Router zwei Netzwerkschnittstellen hat: eth0 (Uplink zu ISP) und wlan0 (für Clients). Wenn Sie Ihren DHCPv6-Server jetzt wie folgt konfigurieren:

subnet6 2001:DB8:1234::/64 {
    range6 2001:DB8:1234::10 2001:DB8:1234::ffff:ffff;
}

Nach dem Start des DHCP-Servers sucht er nach Schnittstellen auf dem Server, die im Jahr 2001 konfiguriert sind: DB8: 1234 ::/64 Bereich und überwacht diese Schnittstellen auf DHCP-Anfragen.

Dies bedeutet, dass die Server-Schnittstellen konfiguriert werden müssen

  • eth0 mit IP nicht in 2001: DB8: 1234 ::/64-Bereich (z. B. 2001: DB8: 1234: 1 :: 2/64)
  • wlan0 mit IP in 2001: DB8: 1234 ::/64 Bereich (z. B. 2001: DB8: 1234 :: 2/64)

Zusätzlich sollten Sie den Server mit einer Debugging-Ausgabe starten, um zu testen, ob Anfragen vom Client kommen. Für ISC dhcpd können Sie die Optionen "-d -f" verwenden, z.

/usr/sbin/dhcpd -6 -cf/etc/dhcp/dhcpd.conf -pf/var/run/dhcpd.pid -f -d