Tag: DHCPv6

  • (K) Dynamiczne przydzielanie adresów IPv6 (SLAAC)**

    (K) Dynamiczne przydzielanie adresów IPv6 (SLAAC)**

    Manipulowanie wartościami flag wiadomości RA

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# [no] ipv6 nd prefix prefix-IPv6/prefix-length no-autoconfig

    Zmienia domyślną wartość flagi A z 1 na 0. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd other-config-flag

    Zmienia domyślną wartość flagi O z 0 na 1. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd managed-config-flag

    Zmienia domyślną wartość flagi M z 0 na 1. Pod-komenda NO odwraca to działanie.

    Metoda I – Stateless Autoconfiguration IPv6 (SLAAC)

    Teoria związana z przyznawaniem adresów IPv6 za pomocą funkcji SLAAC została opisana w artykule: Przydzielanie adresów (SLAAC).

    Konfiguracja prowadzona na ruterze

    (config)# ipv6 unicast-routing

    Aktywuje funkcję routingu względem protokołu IPv6.

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address prefix-IPv6/prefix-length

    Przypisuje adres IPv6, do konfigurowanego interfejsu sieciowego.

    (config-if)# no shutdown

    Administracyjnie włącza konfigurowany interfejs sieciowy.

    Konfiguracja prowadzona na hoście

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address autoconfig

    Rozpoczyna proces dynamicznego pozyskiwania adresu IPv6.

    (config-if)# no shutdown

    Administracyjnie włącza konfigurowany interfejs sieciowy.

    Opcjonalna konfiguracja SLAAC

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 nd prefix prefix-IPv6/prefix-length no-advertise 0-4294967295(Valid Lifetime) 0-4294967295(Preferred Lifetime) [no-onlink / off-link / no-autoconfig]

    Zmienia domyślną wartość rozgłaszanego czasu Valid Lifetime oraz Preferred Lifetime.
    * no-advertise – Blokuje rozgłaszanie wskazanego prefix-u.
    * no-onlink – Określa dany prefix jako (No onlink (Flaga F)).
    * off-link – Określa dany prefix jako (Off link (Flaga L = 0)).
    * no-autoconfig – Określa dany prefix jako niezdatny do auto-konfiguracji adresu IPv6.

    (config-if)# ipv6 nd router-preference {high / medium / low}(medium)

    Zmienia domyślną wartość Router Preference.

    (config-if)# ipv6 nd ra lifetime 0-9000(sekundy)(1800)

    Zmienia domyślną wartość czasu Router Lifetime.

    (config-if)# ipv6 nd ra solicited unicast

    Zmienia domyślny, docelowy adres IPv6 wiadomości Router Advertisement (FF02::1), na adres unicast.

    (config-if)# ipv6 nd ra interval msec {70-1800000(Interwał) 30-257(Minimalny interwał) / 4-1800(Interwał) 3-3(Minimalny interwał)}(200)

    Zmienia domyślne odstępy czasowe w wysyłania wiadomości Router Advertisement.

    (config-if)# [no] ipv6 nd ra suppress [all](no)

    Odblokowuje / Blokuje wysyłanie wiadomości Router Advertisement. Pod-komenda all blokuje wysyłanie wszelkich wiadomości RA (Komenda NO odblokowuje wysyłanie wiadomości RA).

    (config-if)# ipv6 nd ra dns server adres-IPv6(DNS) 200-4294967295(sekundy)(Lifetime)(400)

    Określa adres serwera DNS, bądź wielu serwerów DNS, jakie będą rozgłaszane przez wiadomości Router Advertisement (Adres DNS Gogle to: 2001:4860:4860::8888 oraz 2001:4860:4860::8844).

    Pozostałe tematy związane z konfiguracją protokołu IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (K) Dynamiczne przydzielanie adresów IPv6 (Stateless DHCPv6)**

    (K) Dynamiczne przydzielanie adresów IPv6 (Stateless DHCPv6)**

    Manipulowanie wartościami flag wiadomości RA

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# [no] ipv6 nd prefix prefix-IPv6/prefix-length no-autoconfig

    Zmienia domyślną wartość flagi A z 1 na 0. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd other-config-flag

    Zmienia domyślną wartość flagi O z 0 na 1. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd managed-config-flag

    Zmienia domyślną wartość flagi M z 0 na 1. Pod-komenda NO odwraca to działanie.

    Metoda II – Stateless DHCPv6

    Teoria związana z przyznawaniem adresów IPv6 za pomocą funkcji Stateless DHCPv6 została opisana w artykule: Przydzielanie adresów (SLAAC + Stateless DHCPv6).

    Konfiguracja serwera DHCPv6

    (config)# ipv6 unicast-routing

    Aktywuje funkcję routingu względem protokołu IPv6.

    (config)# ipv6 dhcp pool nazwa-puli

    Tworzy nową pulę DHCPv6 względem protokołu IPv6.

    (config-dhcpv6)# dns-server adres-IPv6

    Definiuje rozgłaszany adres IPv6, serwera DNS.

    (config-dhcpv6)# domain-name nazwa-domeny

    Definiuje rozgłaszaną nazwę domenową, przypisaną do serwera DHCPv6.

    Konfiguracja interfejsu na którym ma pracować serwer DHCPv6

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address prefix-IPv6/prefix-length

    Przypisuje adres IPv6, do konfigurowanego interfejsu sieciowego.

    (config-if)# ipv6 nd other-config-flag

    Zmienia domyślną wartość flagi O z 0 na 1.

    (config-if)# ipv6 dhcp server nazwa-puli [rapid-commit]

    Przypisuje pulę DHCP do konfigurowanego interfejsu.
    * rapid-commit – aktywuje szybszy proces, przydzielania adresu IPv6.
    Tryb rapid-commit umożliwia pozyskanie adresu IPv6, przy wykorzystaniu szybszej dwuetapowej metody rapid. Wymieniającej pomiędzy urządzeniem końcowym a serwerem DHCPv6 jedynie dwie wiadomości (Solicit oraz Reply).

    (config-if)# no shutdown

    Administracyjnie włącza konfigurowany interfejs sieciowy.

    Konfiguracja klienta DHCPv6

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 enable*

    Aktywuje protokół IPv6 na konfigurowanym interfejsie sieciowym (Automatycznie generując adres IPv6 Link-Local).

    (config-if)# ipv6 address dhcp [rapid-commit]

    Aktywuje klienta DHCP na konfigurowanym interfejsie sieciowym.
    * rapid-commit – aktywuje szybszy proces, pozyskiwania adresu IPv6.

    (config-if)# no shutdown

    Administracyjnie włącza konfigurowany interfejs sieciowy.

    Konfiguracja dodatkowych opcji protokołu DHCPv6

    DHCPv6 Agent relay

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu wspierającego protokół IPv6.

    (config-if)# ipv6 dhcp relay destination {adres-IPv6 / FF02::1:2 / FF05::1:3} [interfejs] [source-address adres-IPv6 link-address adres-IPv6]

    Aktywuje funkcję agenta Relay, określając adres IPv6 serwera DHCPv6.
    * source-address –Określa źródłowy adres IPv6 dla komunikacji z serwerem DHCPv6 (RELAY-FORWARD).
    * FF02::1:2 – Multicast-owy adres IPv6 Link-Local, określający wszystkie serwery DHCPv6.
    * FF05::1:3 – Multicast-owy adres IPv6 Site-Local, określający wszystkie serwery DHCPv6 (Wymaga skonfigurowania funkcji Multicast dla adresów IPv6 Site-Local za pomocą komendy [ipv6 multicast-routing]).

    Pozostałe tematy związane z konfiguracją protokołu IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (K) Dynamiczne przydzielanie adresów IPv6 (Stateful DHCPv6)**

    (K) Dynamiczne przydzielanie adresów IPv6 (Stateful DHCPv6)**

    Manipulowanie wartościami flag wiadomości RA

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# [no] ipv6 nd prefix prefix-IPv6/prefix-length no-autoconfig

    Zmienia domyślną wartość flagi A z 1 na 0. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd other-config-flag

    Zmienia domyślną wartość flagi O z 0 na 1. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd managed-config-flag

    Zmienia domyślną wartość flagi M z 0 na 1. Pod-komenda NO odwraca to działanie.

    Metoda III – Stateful DHCPv6

    Teoria związana z przyznawaniem adresów IPv6 za pomocą funkcji Stateful DHCPv6 została opisana w artykule: Przydzielanie adresów (Stateful DHCPv6).

    Konfiguracja serwera DHCPv6

    (config)# ipv6 unicast-routing

    Aktywuje funkcję routingu względem protokołu IPv6.

    (config)# ipv6 dhcp pool nazwa-puli

    Tworzy nową pulę DHCPv6, względem protokołu IPv6.

    (config-dhcpv6)# ipv6 address prefix-IPv6/prefix-length

    Przypisuje adres IPv6, do konfigurowanego interfejsu sieciowego.
    Serwer DHCPv6 nie posiada możliwości wykluczenia adresów IPv6 z dostępnej puli. Administrator może jednak wykorzystać mniejszą długość prefix-u np. /80 zamiast /64, w celu redukcji możliwych do przyznania adresów IPv6). 

    (config-dhcpv6)# dns-server adres-IPv6

    Definiuje rozgłaszany adres IPv6, serwera DNS.

    (config-dhcpv6)# domain-name nazwa-domeny

    Definiuje rozgłaszaną nazwę domenową, przypisaną do serwera DHCPv6.

    Konfiguracja interfejsu na którym ma pracować serwer DHCPv6

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address prefix-IPv6/prefix-length

    Przypisuje adres IPv6, do konfigurowanego interfejsu sieciowego.

    (config-if)# ipv6 nd prefix prefix-IPv6/prefix-length no-autoconfig

    Zmienia domyślną wartość flagi A z 1 na 0.

    (config-if)# ipv6 nd managed-config-flag

    Zmienia domyślną wartość flagi M z 0 na 1.

    (config-if)# ipv6 dhcp server nazwa-puli [rapid-commit]

    Przypisuje pulę DHCP do konfigurowanego interfejsu.
    * rapid-commit – aktywuje szybszy proces, pozyskiwania adresu IPv6.
    Tryb rapid-commit umożliwia pozyskanie adresu IPv6, przy wykorzystaniu szybszej dwuetapowej metody rapid. Wymieniającej pomiędzy urządzeniem końcowym a serwerem DHCPv6 jedynie dwie wiadomości (Solicit oraz Reply).

    (config-if)# no shutdown

    Administracyjnie włącza interfejs sieciowy.

    Konfiguracja klienta dhcp

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 enable*

    Aktywuje protokół IPv6 na konfigurowanym interfejsie sieciowym (Automatycznie generując adres IPv6 Link-Local).

    (config-if)# ipv6 address dhcp [rapid-commit]

    Aktywuje klienta DHCP na konfigurowanym interfejsie sieciowym.
    * rapid-commit – aktywuje szybszy proces, pozyskiwania adresu IPv6.

    (config-if)# no shutdown

    Administracyjnie włącza interfejs sieciowy.

    Konfiguracja dodatkowych opcji protokołu DHCPv6

    DHCPv6 Agent relay

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu wspierającego protokół IPv6.

    (config-if)# ipv6 dhcp relay destination {adres-IPv6 / FF02::1:2 / FF05::1:3} [interfejs] [source-address adres-IPv6 link-address adres-IPv6]

    Aktywuje funkcję agenta Relay, określając adres IPv6 serwera DHCPv6.
    * source-address –Określa źródłowy adres IPv6 dla komunikacji z serwerem DHCPv6 (RELAY-FORWARD).
    * FF02::1:2 – Multicast-owy adres IPv6 Link-Local, określający wszystkie serwery DHCPv6.
    * FF05::1:3 – Multicast-owy adres IPv6 Site-Local, określający wszystkie serwery DHCPv6 (Wymaga skonfigurowania funkcji Multicast dla adresów IPv6 Site-Local za pomocą komendy [ipv6 multicast-routing]).

    Pozostałe tematy związane z konfiguracją protokołu IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (K) Dynamiczne przydzielanie adresów IPv6 (Prefix Delegation)**

    (K) Dynamiczne przydzielanie adresów IPv6 (Prefix Delegation)**

    Manipulowanie wartościami flag wiadomości RA

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# [no] ipv6 nd prefix prefix-IPv6/prefix-length no-autoconfig

    Zmienia domyślną wartość flagi A z 1 na 0. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd other-config-flag

    Zmienia domyślną wartość flagi O z 0 na 1. Pod-komenda NO odwraca to działanie.

    (config-if)# [no] ipv6 nd managed-config-flag

    Zmienia domyślną wartość flagi M z 0 na 1. Pod-komenda NO odwraca to działanie.

    Metoda IV – Prefix Delegation

    Teoria związana z przyznawaniem adresów IPv6 za pomocą funkcji Prefix Delegation została opisana w artykule: Prefix Delegation Options.

    Konfiguracja Prefix Delegation (ISP)

    Ruter ISP – konfiguracja puli Prefix Delegation

    (config)# ipv6 local pool nazwa-puli-do-delegacji prefix-IPv6/40 48

    Tworzy nową pulę adresów IPv6 (Wykorzystywaną przez funkcję Prefix Delegation).
    Prefix /40 określa całą pulę adresów IPv6 przeznaczoną do delegacji (PD). Natomiast prefix /48 określa pulę przyznawaną poszczególnym klientom.
    Przykładowe zastosowanie komendy wygląda następująco [ipv6 local pool nazwa-puli 2001:db8:cafe::/40 48].

    Ruter ISP – konfiguracja serwera DHCPv6

    (config)# ipv6 unicast-routing

    Aktywuje funkcję routingu względem protokołu IPv6.

    (config)# ipv6 dhcp pool nazwa-puli

    Tworzy nową pulę DHCPv6 względem protokołu IPv6.

    (config-dhcpv6)# prefix-delegation pool nazwa-puli-do-delegacji

    Określa rolę serwera DHCPv6 na DHCPv6 Prefix Delegation.

    (config-dhcpv6)# dns-server adres-IPv6

    Definiuje rozgłaszany adres IPv6, serwera DNS.

    (config-dhcpv6)# domain-name nazwa-domeny

    Definiuje rozgłaszaną nazwę domenową, przypisaną do serwera DHCPv6.

    Ruter ISP – konfiguracja interfejsu WAN

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address prefix-IPv6/prefix-length

    Określa adres IPv6 przypisany do konfigurowanego interfejsu sieciowego.

    (config-if)# ipv6 dhcp server nazwa-puli [rapid-commit]

    Przypisuje pulę DHCP do konfigurowanego interfejsu.
    * rapid-commit – aktywuje szybszy proces, przydzielania adresu IPv6.
    Tryb rapid-commit umożliwia pozyskanie adresu IPv6, przy wykorzystaniu szybszej dwuetapowej metody rapid. Wymieniającej pomiędzy urządzeniem końcowym a serwerem DHCPv6 jedynie dwie wiadomości (Solicit oraz Reply).

    Konfiguracja Prefix Delegation (ISP)

    Ruter ISP – konfiguracja puli Prefix Delegation

    (config)# ipv6 local pool nazwa-puli-do-delegacji prefix-IPv6/40 48

    Tworzy nową pulę adresów IPv6 (Wykorzystywaną przez funkcję Prefix Delegation).
    Prefix /40 określa całą pulę adresów IPv6 przeznaczoną do delegacji (PD). Natomiast prefix /48 określa pulę przyznawaną poszczególnym klientom.
    Przykładowe zastosowanie komendy wygląda następująco [ipv6 local pool nazwa-puli 2001:db8:cafe::/40 48].

    Ruter ISP – konfiguracja serwera DHCPv6

    (config)# ipv6 unicast-routing

    Aktywuje funkcję routingu względem protokołu IPv6.

    (config)# ipv6 dhcp pool nazwa-puli

    Tworzy nową pulę DHCPv6 względem protokołu IPv6.

    (config-dhcpv6)# prefix-delegation pool nazwa-puli-do-delegacji

    Określa rolę serwera DHCPv6 na DHCPv6 Prefix Delegation.

    (config-dhcpv6)# dns-server adres-IPv6

    Definiuje rozgłaszany adres IPv6, serwera DNS.

    (config-dhcpv6)# domain-name nazwa-domeny

    Definiuje rozgłaszaną nazwę domenową, przypisaną do serwera DHCPv6.

    Ruter ISP – konfiguracja interfejsu WAN

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 address prefix-IPv6/prefix-length

    Określa adres IPv6 przypisany do konfigurowanego interfejsu sieciowego.

    (config-if)# ipv6 dhcp server nazwa-puli [rapid-commit]

    Przypisuje pulę DHCP do konfigurowanego interfejsu.
    * rapid-commit – aktywuje szybszy proces, przydzielania adresu IPv6.
    Tryb rapid-commit umożliwia pozyskanie adresu IPv6, przy wykorzystaniu szybszej dwuetapowej metody rapid. Wymieniającej pomiędzy urządzeniem końcowym a serwerem DHCPv6 jedynie dwie wiadomości (Solicit oraz Reply).

    Konfiguracja dodatkowych opcji protokołu DHCPv6

    DHCPv6 Agent relay

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu wspierającego protokół IPv6.

    (config-if)# ipv6 dhcp relay destination {adres-IPv6 / FF02::1:2 / FF05::1:3} [interfejs] [source-address adres-IPv6 link-address adres-IPv6]

    Aktywuje funkcję agenta Relay, określając adres IPv6 serwera DHCPv6.
    * source-address –Określa źródłowy adres IPv6 dla komunikacji z serwerem DHCPv6 (RELAY-FORWARD).
    * FF02::1:2 – Multicast-owy adres IPv6 Link-Local, określający wszystkie serwery DHCPv6.
    * FF05::1:3 – Multicast-owy adres IPv6 Site-Local, określający wszystkie serwery DHCPv6 (Wymaga skonfigurowania funkcji Multicast dla adresów IPv6 Site-Local za pomocą komendy [ipv6 multicast-routing]).

    Pozostałe tematy związane z konfiguracją protokołu IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (T) Teoria Prefix Delegation Options**

    (T) Teoria Prefix Delegation Options**

    Wstęp do metody Prefix Delegation Options

    • Prefix Delegation umożliwia przyznanie adresu IPv6 urządzeniom końcowym, podłączonym do domowego rutera SOHO (Small office Home office), przez dostawcę usług Internetowych ISP. Dzięki tej metodzie ruter SOHO stanowić będzie urządzenie pośredniczące w procesie przyznawania adresu IPv6, przez dostawcę ISP.
    • Metoda Prefix Delegation wyróżnia dwa rodzaje urządzeń:
      • RR (Requesting Router) – Urządzenie końcowe wysyłające zapytanie o adres IPv6.
      • DR (Delegating Route) – Urządzenie ISP przyznające adres IPv6.
    • Prefix (/56) przyznawany przez ruter DR umożliwia stworzenie 256 pod-sieci, po stronie rutera RR (0:0:0:0001::1/56).

    Proces przyznawania adresu IPv6 metodą Prefix Delegation

    Proces przyznawania adresu IPv6 metodą Prefix Delegation

    Proces przyznawania adresu IPv6 metodą Prefix Delegation wygląda następująco

    • SOHO wysyła wiadomość Router Solicitation do rutera ISP.
    • ISP odpowiada na otrzymaną wiadomość Router Solicitation, wiadomością Router Advertisement. Dzięki czemu ruter SOHO jest w stanie stworzyć własny adres IPv6 Global Unicast.
    • Jako że SOHO został skonfigurowany w trybie DHCPv6-PD, inicjuje proces przyznawania adresów IPv6 za pomocą wiadomości SOLICIT zawierającej opcję Prefix Delegation Option.
    • Rutery wymieniają pomiędzy sobą wiadomości ADVERTISE oraz REQUEST.
    • ISP odpowiada na wiadomość REQUEST, wiadomością REPLAY. Zawierającą prefix IPv6 jaki ruter SOHO może przypisać do swojej sieci wewnętrznej (LAN), wraz z innymi informacjami takimi jak adres serwera DNS czy nazwę domenową.
    • Po otrzymaniu wiadomości REQUEST, ruter SOHO:
      • Przypisuje otrzymany prefix IPv6 do wewnętrznego interfejsu sieciowego (LAN).
      • Generuje adres IPv6 w oparciu o otrzymany prefix IPv6.
      • Rozpoczyna rozsyłanie wiadomości Router Advertisement z flagą O ustawioną na 1.

    Pozostałe tematy związane z protokołem IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (T) Przydzielanie adresów (Stateful DHCPv6)**

    (T) Przydzielanie adresów (Stateful DHCPv6)**

    Wstęp do Stateful DHCPv6

    RFC 3315 – Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
    • Dynamiczne adresowanie sieci, przy wykorzystaniu metody Stateful DHCPv6, działa analogicznie do dynamicznej adresacji protokołu DHCPv4. Proces nauki adresacji IPv6 różni się jedynie sposobem pozyskiwania adresu bramy domyślnej.
    • W procesie adresacji lokalny ruter rozgłasza wiadomości RA z flagą A = 0, O = 0 oraz M = 1. Jeżeli zarówno flago O jak i M będą posiadały wartość 1, klient w zależności od systemu operacyjnego, stworzy dwa adresy IPv6 (Jeden w oparciu o metodę SLAAC oraz drugi pozyskany od serwera DHCPv6).
    Porównanie DHCPv4 do Stateful DHCPv6

    Pozostałe tematy związane z protokołem IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (T) Przydzielanie adresów (SLAAC + Stateless DHCPv6)**

    (T) Przydzielanie adresów (SLAAC + Stateless DHCPv6)**

    Wstęp do Stateless DHCPv6

    RFC 3736 – Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6
    • Dynamiczne adresowanie sieci, przy wykorzystaniu metody Stateless DHCPv6 (RFC 3736) umożliwia urządzeniu końcowemu, stworzenie adresu IPv6 za pomocą funkcji SLAAC (Stateless Address Autoconfiguration) oraz pobranie dodatkowych informacji protokołu DHCPv6 (Takich jak adres serwera DNS, NTP czy nazwę domenową) za pośrednictwem serwera DHCPv6.
    • Metoda Stateless DHCPv6 współpracuje z protokołem NDP w procesie pozyskiwania adresu IPv6, za pomocą wiadomości RS oraz RA, wymienianych pomiędzy urządzeniem końcowym a lokalnym ruterem. Wiadomość RA zawiera oprócz adresacji sieci lokalnej (Prefix-u oraz długości Prefix-a) flagi A = 1, O = 1 oraz M = 0.
    • Ostatnim krokiem procesu Stateless DHCPv6 jest pozyskanie dodatkowych informacji takich jak adres serwera DNS czy nazwę domenową, za pomocą serwera DHCPv6.
    Porównanie SLAAC do Stateless DHCPv6

    Pozostałe tematy związane z protokołem IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (T) Teoria protokołu DHCPv6**

    (T) Teoria protokołu DHCPv6**

    Wstęp do protokołu DHCPv6

    Zagadnienia związane z protokołem DHCPv6

    RFC 3315 – Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
    • DHCPv6 Client – Urządzenie inicjujące proces przydzielania adresu IPv6, oraz innych informacji rozgłaszanych przez serwer DHCPv6 (Takich jak adres serwera DNS czy nazwa domenowa).
    • DHCPv6 Server – Serwer DHCP odpowiadający na zapytania klienta, może lecz nie musi być w tej samej sieci co klient.
    • DHCPv6 Relay Agent – Urządzenie pośrednie, umożliwiające komunikację klienta z serwerem DHCP, w sytuacji gdy obydwa urządzenia znajdują się w innej sieci (Przeważnie jest to ruter).
    • Inne zagadnienia związane z protokołem DHCPv6:
      • DUID (DHCP Unique Identifier) – Numer identyfikujący urządzenia wspierającego protokół DHCPv6. Zarówno klient jak i serwer DHCP posiadają po jednej unikalnej 2-bajtowej wartości, która wraz z zmienną tworzy numer DUID (Referencja RFC 3315 ogranicza wielkość wartości DUID do 128 bajtów). Obecnie występują trzy rodzaje wartości DUID:
        • Adres Link-Local połączony z czasem.
        • Unikalny numer ID nadany przez organizację IANA.
        • Adres Link-Layer.
      • IA (Identity Association) – Kombinacja adresów przypisanych do jednego interfejsu sieciowego.
      • IAID (Identity Association Identifier) – Unikalna wartość przypisane do interfejsu sieciowego.
    • Adresy IPv6 oraz porty wykorzystywane przez serwer DHCPv6:
      • All_DHCP_Relay_Agents_and_Servers (FF02::1:2) – Multicast-owy adres Link-Local określający wszystkie serwery DHCPv6 oraz wszystkich agentów pośredniczących (Relay Agents).
      • All_DHCP_Servers (FF05::1:3) – Multicast-owy adres Site-Local określający wszystkie serwery DHCPv6.
      • UDP port 546 – Server DHCPv6 oraz agent pośredniczący (Relay) wysyłają wiadomości DHCP do klienta na porcie docelowym UDP 546.
      • UDP port 547 – Klient wysyła wiadomości DHCP do serwera DHCPv6 bądź agenta pośredniczącego (Relay) na porcie docelowym UDP 547.

    Wiadomości protokołu DHCPv6

    • SOLICIT (1) – Wiadomość wysyłana przez klienta w celu zlokalizowania serwera bądź wielu serwerów DHCPv6.
    • ADVERTISE (2) – Odpowiedź serwera DHCPv6 na wiadomość SOLICIT.
    • REQUEST (3) – Zapytanie klienta skierowane do jednego z wybranych serwerów DHCPv6, z prośbą o przydzielenie adresu IPv6 oraz innych informacji protokołu DHCPv6 (Takich jak adres serwera DNS czy nazwa domenowa).
    • REPLAY (7) – Odpowiedź serwera DHCPv6 na wiadomość REQUEST. Zawiera adres IPv6 oraz inne informację protokołu DHCPv6. Odpowiedź REPLAY jest również stosowana w odpowiedzi na wiadomość SOLICIT w sytuacji skonfigurowania serwera DHCPv6 z opcją Rapid Commit Option.
    • INFORMATION-REQUEST (11) – Zapytanie klienta wysłane do jednego z wybranych serwerów DHCPv6, z prośbą o przesłanie innych informacji protokołu DHCPv6 bez jednoczesnego przydzielania adresu IPv6.
    • RENEW (5) – Prośba klienta o przedłużenie dzierżawy adresu IPv6 (Zawiera adres oraz inne informacje protokołu DHCP).
    • RELEASE (8) – Prośba klienta o unieważnienie dzierżawy adresu IPv6.
    • DECLINE (9) – Wiadomość wysłana przez klienta DHCP w celu poinformowania serwera DHCPv6, że wydzierżawiony przez serwer adres występuje już w sieci lokalnej (Duplikacja wykryta za pomocą funkcji DAD).

    Podstawowa zasada działania protokołu DHCPv6

    • Wymiana informacji pomiędzy klientem a serwerem DHCPv6, jest zbliżona w swym działaniu do zasad protokołu DHCP względem protokołu IPv4, istnieje jednak pomiędzy nimi pewna różnica wynikająca z np. braku adresu rozgłoszeni-owego w protokole IPv6.
    • Proces wymiany danych pomiędzy klientem a serwerem DHCPv6 wygląda następująco:
      • Klient wysyła zapytanie SOLICIT (multicast address).
      • Serwer odpowiada komunikatem ADVERTISE (unicast address).
        • Klient kolekcjonuje otrzymane komunikaty ADVERTISE, zebrane od wielu serwerów DHCPv6. W celu wybrania najlepszej propozycji względem propagowanego prefiksu.
      • Klient potwierdza wybranie adresu IPv6 za pomocą komunikatu REQUEST.
      • Serwer potwierdza rezerwację adresu za pomocą komunikatu CONFIRM.
    • Oprócz tradycyjnej cztero-fazowej negocjacji adresu IPv6, istnieje jeszcze jedna opcjonalna, dwuetapowa negocjacja (Rapid two-way message Exchange), w której klient wraz z serwerem DHCPv6 wymieniają jedynie komunikaty SOLICIT oraz REPLY.
    Aby opcja dwuetapowej negocjacji adresu IPv6 była dostępna, obydwa urządzenia muszą być skonfigurowane w trybie szybkiego zatwierdzania pakietów protokołu DHCP „rapid-commit” (RFC 4039).
    Proces cztero-stopniowej negocjacji jest wykorzystywany w sieci posiadającej więcej niż jeden serwer DHCPv6. Natomiast w przypadku sieci z jednym serwerem, możliwe staje się wykorzystanie negocjacji dwuetapowej.

    Stateful DHCPv6 – Relay Agent

    • W sytuacji, w której docelowy serwer DHCPv6 znajduje się w innej sieci niż host. Protokół DHCP wykorzystuje dwa adresy IPv6. Źródłowy Link-Local oraz docelowy multicast, kierowany do wszystkich agentów pośredniczących (Relay).
      • Adres źródłowy Link-Local – Klient wykorzystuje własny adres IPv6 Link-Local w celu nadania zapytania DHCPv6.
      • Adres Multicast-owy FF02::1:2 – Link-Local Multicast Address jest wykorzystywany jako adres docelowy skierowany do wszystkich serwerów znajdujących się w sieci lokalnej oraz ruterów działających jako agenci przekierowania (Relay).
    W przypadku agenta Relay względem protokołu IPv6, ruter pełniący tę rolę zmienia adres źródłowy (Link-Local klienta DHCP) na swój własny adres unicast-owy. Jest to istotna różnica w stosunku do protokołu IPv4.

    Działanie protokołu DHCPv6

    Proces działania protokołu DHCPv6

    Wiadomości RS, RA zostały opisane w artykule: Router Solicitation oraz Router Advertisement.

    Diagram opisujący działanie protokołu DHCPv6
    1. Jeżeli klient protokołu DHCPv6 nie otrzymał jeszcze wiadomości Router Advertisement, sam zainicjuje proces pozyskiwania adresu IPv6 za pomocą wiadomości Router Solicitation, wysłanej na adres FF02::2.
    2. Ruter systematycznie co 200 sekund, bądź w odpowiedzi na zapytania Router Solicitation wysyła odpowiedzi Router Advertisement, ze skonfigurowanymi przez administratora flagami A, O oraz M.
    3. Klient wyśle wiadomość SOLICIT do wszystkich dostępnych serwerów DHCPv6 (Na adres IPv6 FF02::1:2). W niektórych przypadkach klient może wysłać wiadomość SOLICIT na opcjonalnie skonfigurowany adres Unicast.
    4. Serwer odpowie na wiadomość SOLICIT, wiadomością ADVERTISE. Jeżeli klient otrzyma więcej niż jedną wiadomość ADVERTISE rozpocznie proces wyboru najlepszej oferty (RFC 3315 rozdział 17.1.3).
    5. Klient wyśle wiadomość REQUEST bądź INFORMATION-REQUEST w zależności od wybranej metody pobierania adresu IPv6 (Stateful bądź Stateless DHCPv6) w oparciu o wartości otrzymanych flag A, O oraz M.
      1. Jeżeli flaga M posiada wartość 1, klient wyśle wiadomość REQUEST.
      1. Jeżeli flaga M posiada wartość 0 a flaga O wartość 1, klient wyśle wiadomość INFORMATION-REQUEST.
    6. Serwer odpowie na wiadomość REQUEST, wiadomością REPLAY zawierającą adres IPv6 oraz inne informacje protokołu DHCPv6. W przypadku otrzymania wiadomości INFORMATION-REQUEST, serwer odpowie wiadomością REPLAY zawierającą jedynie pozostałe informacje protokołu DHCPv6 bez adresu IPv6.
    7. W sytuacji, w której czas dzierżawy adresu IPv6 zbliża się ku końcowi, klient wyśle wiadomość RENEW z prośbą o wydłużenie tego czasu.
    8. Serwer odpowie na otrzymaną wiadomość RENEW, wiadomością REPLAY, potwierdzając tym samym przedłużenie czasu dzierżawy.
    Zarówno wiadomość RENEW jak i REPLAY zawierają adres IP wraz z innymi informacjami protokołu DHCPv6.
    • Jeżeli klient nie potrzebuje już przydzielonego adresu IPv6, wyśle wiadomość zwalniającą posiadany adres (RELEASE).
    Serwer wysyła wiadomość potwierdzającą REPLAY, w odpowiedzi na wiadomość RELEASE bądź DECLINE.

    Zasada działania protokołu DHCPv6 Relay Agent

    W przypadku łączenie się z serwerem DHCPv6 za pośrednictwem rutera pośredniczącego (Relay Agent), proces przydziału adresu IPv6 przez serwer DHCPv6 wygląda następująco:

    1. Jeżeli klient protokołu DHCPv6 nie otrzymał jeszcze wiadomości Router Advertisement, sam zainicjuje proces pozyskiwania adresu IPv6 za pomocą wiadomości Router Solicitation, wysłanej na adres FF02::2.
    2. Ruter systematycznie co 200 sekund, bądź w odpowiedzi na zapytania Router Solicitation wysyła odpowiedzi Router Advertisement, ze skonfigurowanymi przez administratora flagami A, O oraz M.
    3. Klient wyśle wiadomość SOLICIT do wszystkich dostępnych serwerów DHCPv6 (Na adres IPv6 FF02::1:2). W niektórych przypadkach klient może wysłać wiadomość SOLICIT na opcjonalnie skonfigurowany adres Unicast.
    4. Agent wyśle wiadomość RELAY-FORWARD zawierającą enkapsulowaną, oryginalną wiadomość SOLICIT otrzymaną od klienta, na multicast-owy adres Site-Local (FF05::1:3), bądź skonfigurowany przez administratora adres Unicast.
    5. Serwer odpowie na wiadomość RELAY-FORWARD, wiadomością RELAY-REPLY zawierającą enkapsulowaną wiadomość ADVERTISE …
    Wszystkie wiadomości nadawane przez agenta Relay do serwera DHCPv6 stanowią oryginalną wiadomość otrzymaną od klienta, enkapsulowaną do postaci wiadomości RELAY-FORWARD.
    Wszystkie wiadomości wysyłane przez serwer DHCPv6 do Agenta Relay stanowią oryginalną wiadomość serwera enkapsulowaną do postaci wiadomości RELAY-REPLY.

    Pozostałe tematy związane z protokołem IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6

  • (T) Struktura adresacji IPv6*

    (T) Struktura adresacji IPv6*

    Struktura adresacji IPv6

    Rodzaje adresów IPv6

    Adresy IPv6 unicast

    • [2000::/3] Global Unicast Address (IPv4 Public Address) – Pełni identyczną rolę względem protokołu IPv6, jaką pełnią adresy publiczne względem protokołu IPv4. Jest to adres publiczny globalnie rutowalny.
    • [FC00::/7] Unique Local Address (IPv4 Private Address) – Pełni identyczną rolę względem protokołu IPv6, jaką pełnią adresy prywatne względem protokołu IPv4. Jest to adres prywatny związku z tym nie jest globalnie rutowalny.
    • [FC00::/7] Site-Local Address (IPv4 Private Address) – Prywatny adres będący poprzednikiem adresu Unique Local Address (RFC 3513). Obecnie nie zaleca się jego wykorzystywania w sieciach produkcyjnych. Starsza pula adresów Site-Local obejmowała następujący zakres adresów IPv6 [FEC0::/7].
    • [FE80::/10] Link-Local Address (Local address) – Adres lokalny, nie rutowalny, działający w obszarze jednej sieci. Domyślnie tworzony na podstawie adresacji EUI-64, służy do komunikacji pomiędzy urządzeniami w obrębie jednej sieci np. pomiędzy dwoma ruterami czy hostem a bramą domyślną (Przez protokoły routingu dynamicznego jest wykorzystywany jako adres następnego przeskoku).
      • Adres Link-Local reprezentuje jedynie jedno urządzenie w danej sieci (Unicast).
      • Adres Link-Local nie może opuścić lokalnej sieci data-link, ponieważ nie jest przepuszczany przez rutery.
      • Adres Link-Local jest automatycznie generowany na podstawie adresacji EUI-64.
      • Adres Link-Local jest wykorzystywany przez protokoły do określania adresu następnego przeskoku
      • Adres Link-Local zaczyna się od cyfr FE80::/10 co oznacza, że jego pierwsze trzy hexadecymalne liczby mogą być następujące: FE8, FE9, FEA oraz FEB, jednak zgodnie z zaleceniami standaryzacji RFC 4291 po pierwszych 10 liczbach powinny nastąpić 54 zera. Przez co adres Link-Local zawsze zaczyna się od FE80::/64.
      • Adres Link-Local statycznie przypisany przez administratora może zaczynać się od liczb FE8, FE9, FEA oraz FEB.
      • Rutery Cisco funkcjonują w oparciu o adresacje Link-Local.
    • [::/128] Unkown Address / Unspecified Address – Nieokreślony (pusty) adres protokołu IPv6. Odpowiada adresowi 0.0.0.0/0 wykorzystywanemu przez protokół IPv4.
    • [::1/128] Loopback Address – Wewnętrzny adres IPv6, karty sieciowej.
      • Areas Loopback nie może być przypisany do interfejsu fizycznego.
      • Pakiet z docelowym bądź źródłowym adresem Loopback nie może być wysłany poza urządzenie.
      • Ruter nie może routować pakietów z docelowym adresem Loopback.
      • Urządzenie musi porzucić otrzymany pakiet z docelowym adresem Loopback.
    • [::1/80] Embedded IPv4 Address – Adres IPv6 służący do odwzorowania adresu IPv4 (RFC 4291):
      • IPv4 Mapped IPv6 Address – Adres wykorzystywany w sieciach Dual-Stuck (Np. ::FFFF:192.168.10.10).
      • IPv4 Compatible IPv6 Address – Starsza obecnie nie wykorzystywana wersja adresu Embedded IPv4 Address.
    • [2002::/16] 6to4 Unicast – Adres wykorzystywany w dynamicznym tunelowaniu IPv6 to IPv4 (6to4).
    • [64:FF9B::/96] Well-known NAT64 Prefix – Dobrze znany adres translacji NAT64.

    Adresy IPv6 multicast

    • [FF00::/8] Multicast Address (IPv4 Multicast Address) – Pełni identyczną rolę względem protokołu IPv6, jaką pełnią adresy multicast względem protokołu IPv4. Wyróżnia się następujące adresy IPv6 multicast:
      • [FF00::/12] Well Known Multicast Address – Dobrze znane adresy multicast, przydzielane przez IANA.
      • [FF10::12/] Transient Multicast Address – Dynamiczne adresy multicast, przydzielane przez aplikacje.
      • [FF02:0:0:0:0:1:FF00::/104] Solicited-Node Multicast Address.
    • [FF02::/16] Well Known Multicast Address – Działa na zasadzie adresu multicast w obrębie jednej sieci, tym samym nie jest rozgłaszany przez rutery. Wyróżnia się następujące adresy IPv6 multicast:
      • (All nodes) FF02::1 – Określa wszystkie urządzenia wykorzystujące protokół IPv6, w danej sieci. Stanowi odpowiednik adresu subnet broadcast wykorzystywanego w protokole IPv4.
      • (All Routers) FF02::2 – Określa wszystkie rutery używające adresacji IPv6, w danej sieci.
      • (All OSPFv3) FF02::5/6 – Określa wszystkie rutery używające protokołu OSPFv3, w danej sieci.
      • (RIPng Routers) FF02::9 – Określa wszystkie rutery używające protokołu RIPng, w danej sieci.
      • (EIGRPv6 Routers) FF02::A – Określa wszystkie rutery używające protokołu EIGRPv6, w danej sieci.
      • (DHCP Relay Agent) FF02::1:2 – Określa wszystkie rutery działające jako agent relay dla protokołu DHCPv6.
      • (DHCP Servers) FF05::1:3 – Określa wszystkie serwery protokołu DHCPv6, w danej sieci.
      • (DHCP Routers) FF05::2 – Określa wszystkie interfejsy ruterów używające adresację IPv6, w danej sieci.
    • [FF02:0:0:0:0:1:FF00::/104] Solicited-Node Multicast Address – Umożliwia przesyłanie ruchu multicast do wielu hostów posiadających podobny adres IPv6 (Dokładnie rzecz ujmując końcówkę tego adresu). Adres ten jest wykorzystywany między innymi przez protokół NDP w wiadomości NS.
      • Multicast – Należy do grupy adresów Multicast.
      • Link-Local – Nie jest przekazywany przez rutery (Nie jest routowany).
      • Calculated – Jest tworzony na podstawie adresu „Unicast IPv6” danego hosta. A dokładnie rzecz ujmując, na podstawie jego sześciu ostatnich hexadecymalnych cyfr.
      • Operation – Każdy interfejs posiada jak i nasłuchuje na swoim adresie Solicited-Node Multicast Address.
      • Overlap – Nie jest unikalny, może się powtarzać.
    • [FF08::/16] Organization Local Multicast Address – Przepuszcza ruch multicast w obrębie danej firmy, blokując tym samym jego rozprzestrzenianie się poza jej obszar.

    Inne adresy IPv6

    • Anycast Address – Umożliwia zaadresowanie wielu urządzeń tym samym adresem IPv6. Dzięki czemu host nawiązujący połączenie z danym adresem zostanie przekierowany do najbliższego urządzenia.
    • Adresacja EUI-64 – Metoda automatycznego generowania adresów IPv6 przez hosty, na podstawie adresu sieci (Prefix/Length) rozgłaszanego przez lokalny ruter za pomocą protokołu NDP (Metoda ta działa jedynie w przypadku sieci z prefix-em /64).

    Adresacja sieci IPv6

    Metody adresacji sieci za pomocą protokołu IPv6

    Tworzenie adresu metodą EUI-64

    • Adres
      IPv6 wyliczany za pomocą metody EUI składa się z prefix-u połączonego z adresem
      MAC.
    • Proces
      zamiany siódmego bitu zwanego bitem L/U powinien zachodzić jedynie kiedy bit
      ten posiada wartość 0.
    Prefix (ISP) Podsieć (Subnet) Pierwsza część adresu MAC Uzupełnienie (FFEE) Druga część adresu MAC

    Adresacja hosta metodą EUI-64

    Router Advertisement Flags A, O i M

    Respektowanie flag zawartych w wiadomościach RA, jest zależne od systemu operacyjnego zainstalowanego na urządzeniu końcowym. 
    • Address Autoconfiguration Flag (A Flag) – Kiedy flaga A jest ustawiona na wartość 1, wymusza na urządzeniu końcowym pozyskanie adresu IPv6 (GUA) poprzez metodę SLAAC. Za pomocą funkcji EUI-64 bądź liczby randomowo generowanej.
    • Other Configuration Flag (O Flag) – Kiedy flaga O jest ustawiona na wartość 1, wymusza na urządzeniu końcowym pozyskanie adresu IPv6 (GUA) poprzez metodę SLAAC, a innych informacji protokołu DHCP Np. adresu DNS czy nazwy domeny, za pomocą serwera Stateless DHCPv6. Adres GUA może być generowany za pomocą funkcji EUI-64 bądź liczby randomowej.
    • Managed Address Configuration Flag (M Flag) – Kiedy flaga M jest ustawiona na wartość 1, wymusza na urządzeniu końcowym pozyskanie adresu IPv6 (GUA) oraz innych informacji protokołu DHCP Np. adresu DNS czy nazwy domeny, za pomocą serwera Stateful DHCPv6. Jedyną informacją udzielaną przez ruter jest adres bramy domyślnej (Source RA address).
    RA Adress Allocation Method A Flag (SLAAC) O Flag (Stateless DHCPv6) M Flag (Stateful DHCPv6)
    Method 1: SLAAC 1 0 0
    Method 2: SLAAC + Stateless DHCPv6 1 1 0
    Method 3: Stateful DHCPv6 0 N/A 1

    Metody przydzielania adresów IPv6 a Flagi zawarte w wiadomości RA

    Ustawienie wszystkich Flag zawartych w wiadomości RA, na wartość 1 może spowodować wygenerowanie adresu IPv6 (GUA) za pomocą serwera Stateful DHCPv6. Bądź też pozyskanie jednego adresu IPv6 (GUA) poprzez metodę SLAAC a drugiego adresu IPv6 (GUA) przy pomocy serwera Stateful DHCPv6.

    Pozostałe tematy związane z protokołem IPv6

    Przydzielanie adresów IPv6

    Protokół NAT względem protokołu IPv6