I tidigare avsnitt togs upp att IPv6 erbjuder tre olika metoder för adressering av klienter:
- SLAAC (Stateless Address Autoconfiguration) – klienten skapar hela adressen själv, endast med hjälp av information från routern.
- SLAAC och Stateless DHCPv6 – adressen skapas med SLAAC, men klienten hämtar kompletterande information, t.ex. DNS, från en DHCPv6-server.
- Stateful DHCPv6 – all adresseringsinformation, inklusive själva IPv6-adressen, tilldelas av en DHCPv6-server.
I den här lektionen fokuserar vi på metod 3: Stateful DHCPv6.
En stateful DHCPv6-server används när vi vill ha centraliserad adresstilldelning i ett nätverk. Till skillnad från stateless DHCPv6, där klienterna får sina adresser via SLAAC och endast kompletterande parametrar från servern, ansvarar en stateful server för att dela ut hela IPv6-adressen tillsammans med annan viktig nätverksinformation, till exempel DNS-servrar och domännamn.
Begreppet stateful betyder att servern håller reda på (“har state”) vilka adresser som är utdelade, till vem, och under vilken tidsperiod. Detta gör att administratören får en tydlig överblick och kontroll över användningen av IPv6 i nätverket, ungefär som i IPv4-DHCP.
En stateful DHCPv6-lösning används ofta i företagsnät och datacenter där man behöver spårbarhet, kontroll och enkel administration av adresser, i stället för att låta klienterna skapa sina egna adresser genom SLAAC. Routrar signalerar till klienterna att de ska använda stateful DHCPv6 genom att sätta M-flaggan (Managed) i sina Router Advertisements.

- PC:n skickar ett RS-meddelande till alla IPv6-routrar: ”Jag behöver adresserings information.”
- Routern skickar ett RA-meddelande till alla IPv6-noder med metod 3 (Stateful DHCPv6) angiven: ”Jag är din default gateway, men du måste fråga en stateful DHCPv6-server efter din IPv6-adress och annan adresseringsinformation.”
- PC:n skickar därefter ett DHCPv6 Solicit-meddelande till alla DHCPv6-servrar: ”Jag fick min standard-gatewayadress från RA-meddelandet, men jag behöver en IPv6-adress och all annan adresseringsinformation från en stateful DHCPv6-server.”
RA-flaggorna i Stateful DHCPv6
När en router skickar ut ett RA-meddelande finns det två flaggor som talar om för klienterna hur de ska konfigurera sig:
- M (Managed Address Configuration) – Adressen hanteras av en server istället för att klienten hanterar själv.
- O (Other Configuration) – Andra parametrar och information om konfigurationer hämtas från en annan typ av DHCPv6 server.
Flaggornas kombinationer
Man pratar ofta om stateless och stateful DHCPv6 som olika typer av servrar, men i praktiken är det oftast samma DHCPv6-server som kan leverera båda typerna av information. Skillnaden ligger i vad klienten ber om och hur routern instruerar klienten.
RA-meddelande kan inkludera följande kombinationer:
- M = 1, O = 0 indikerar att DHCPv6 används för adress men inte för andra parametrar.
- M = 1, O = 1 indikerar att DHCPv6 används för både adress och andra parametrar.
Obs! O-flaggan behövs även om M=1, eftersom standarden skiljer på adress och annan konfiguration.
Kommunikation mellan DHCPv6-klient och server
Kommunikationen mellan en DHCPv6-klient och en DHCPv6-server sker via UDP-portar 546 och 547:
- UDP-port 546 – används av klienten. Klienten lyssnar på den här porten för att ta emot meddelanden från servern eller en relay-agent.
- UDP-port 547 – används av servern (och relay-agenter). Servern lyssnar på den här porten för att ta emot förfrågningar från klienten (t.ex. Solicit, Request, Renew).
På så sätt är rollerna tydligt uppdelade:
- Klienten tar emot på port 546.
- Servern tar emot på port 547.
Kommunikationen är meddelande-baserad där klient och server skickar korta, fristående meddelanden till varandra. Varje meddelande har en specifik funktion, till exempel:
| Nr | Meddelande | Beskrivning |
|---|---|---|
| 1 | SOLICIT | DHCPv6-klienter använder ett SOLICIT-meddelande för att hitta servrar. |
| 2 | ADVERTISE | En server skickar ett meddelande som svar på en klients SOLICIT-meddelande för att ange att den är tillgänglig för DHCPv6-tjänster. |
| 3 | REQUEST | En klient skickar ett REQUEST-meddelande för att begära konfigurationsparametrar, inklusive IPv6-adresser, från en specifik DHCPv6-server. |
| 4 | CONFIRM | En klient skickar ett CONFIRM-meddelande för att verifiera att tilldelad adress fortfarande är giltig. |
| 5 | RENEW | En klient skickar ett RENEW-meddelande för att begära förlängning av adressleasing och andra konfigurationsparametrar. |
| 6 | REBIND | En klient skickar ett REBIND-meddelande om den inte får svar på ett RENEW-meddelande. |
| 7 | REPLY | En server skickar ett REPLY-meddelande som innehåller tilldelade adresser och konfigurationsparametrar som svar på klientens SOLICIT-, REQUEST-, RENEW- eller REBIND-meddelande. Används också som svar på andra klientmeddelanden. |
| 8 | RELEASE | En klient skickar ett RELEASE-meddelande när den inte längre behöver den tilldelade IPv6-adressen. |
| 9 | DECLINE | En klient skickar ett DECLINE-meddelande om den tilldelade IPv6-adressen redan är upptagen. |
| … | Fler meddelanden | Exempel: RECONFIGURE, INFORMATION-REQUEST, RELAY-FORWARD, RELAY-REPLY m.fl. |