Poprawny zapis adresu IPv6 składa się z segmentów (grup) liczb w systemie szesnastkowym rozdzielonych dwukropkami. Każdy segment może mieć od 1 do 4 znaków szesnastkowych, a cały adres w zapisie pełnym ma 8 segmentów.
W praktyce często stosuje się skracanie: ciąg kolejnych segmentów o wartości 0 można skompresować do "::". Kluczowa zasada brzmi: w jednym adresie "::" wolno użyć tylko raz, ponieważ w przeciwnym razie nie dałoby się jednoznacznie odtworzyć liczby pominiętych segmentów.
Dlatego zapis "2001:DB8::BAF:FE94" jest poprawny: używa dwukropków jako separatorów i jednorazowo stosuje "::" jako kompresję zer. Z kolei zapis z "2001:DB8::BAF::FE94" jest niepoprawny właśnie przez dwukrotne wystąpienie "::".
Pozostałe propozycje są błędne, bo stosują separatory niezgodne z notacją IPv6: myślniki ("2001-DB8-BAF-FE94") oraz kropki ("2001.DB8.BAF.FE94"). Kropki są charakterystyczne dla zapisu IPv4 (cztery oktety w systemie dziesiętnym), a nie IPv6.
Wskazówka egzaminacyjna: jeśli widzisz kropki lub myślniki, to niemal na pewno nie jest to poprawny zapis IPv6; następnie sprawdź, czy "::" nie pojawia się więcej niż raz.