Na początku lat 90-tych, organizacja Internet Engineering Task Force (IETF) zajęła się problemem wyczerpywania się dostępnych adresów IPv4, rozpoczynając jednocześnie prace nad próbą zmiany tego protokołu. Działania te doprowadziły do opracowania protokołu IP w wersji 6 (IPv6). Protokół IPv6 przezwycięża ograniczenia protokołu IPv4. Jest on wyposażony w nowe funkcje, które lepiej odpowiadają wymaganiom obecnych i przyszłych sieci.
Do ulepszeń związanych z protokołem IPv6 należą:
- Zwiększona przestrzeń adresowa - Adresy IPv6 oparte są na 128-bitowej hierarchicznej strukturze adresowania w odróżnieniu od adresów IPv4, które wykorzystują 32 bity. Rozwiązanie to zapewnia znaczne zwiększenie liczby dostępnych adresów IP.
- Udoskonalenie obsługi pakietów - Nagłówek IPv6 został uproszczony i posiada mniejszą liczbę pól niż nagłówek IPv4. Zmiana ta wpłynęła na poprawę obsługi pakietów przez routery pośredniczące, a także zapewniła wsparcie dla dodatkowych rozszerzeń oraz opcji w celu zwiększenia skalowalności oraz długowieczności tych rozwiązań.
- Eliminuje potrzebę wykorzystywania NAT - Zapewnienie tak dużej liczby publicznych adresów IPv6 spowodowało, iż technika translacji adresów sieciowych (NAT) nie będzie już potrzebna. Oznacza to, iż adresy publiczne IPv6 są dostępne dla wszystkich potencjalnych użytkowników zaczynając od dużych przedsiębiorstw, a na pojedynczych użytkownikach domowych kończąc. Pozwala to uniknąć niektórych problemów z aplikacjami wymagającymi połączeń typu end-to-end związanymi ze stosowaniem NAT.
- Zintegrowane bezpieczeństwo - IPv6 w sposób natywny obsługuje funkcje uwierzytelniania i prywatności. W przypadku IPv4 zapewnienie tych funkcji wymagało zaimplementowania dodatkowych rozwiązań.
32-bitowa przestrzeń adresowa IPv4 zapewnia około 4294967296 unikalnych adresów. Jednakże spośród nich tylko 3,7 mld adresów może być przypisanych do interfejsów sieciowych. Związane jest to z podziałem przestrzeni adresowej na klasy, zarezerwowaniem odpowiednich zakresów adresów do komunikacji grupowej, testów oraz innych szczególnych zastosowań.
Jak pokazano na rysunku, protokół IP w wersji 6 zapewnia 340282366920938463463374607431768211456 adresów (inaczej około 340 sekstylionów). Liczba ta jest mniej więcej równoważna liczbie ziarenek piasku na Ziemi.