Myślnik w domenie: historia pełna niespodzianek
Zaskakująco skomplikowana historia myślników w domenach
Zastanawiałeś się kiedyś, ile myślników można upchnąć w jednej nazwie domeny? Ja tak. To z pozoru błahe pytanie zaprowadziło mnie w głąb historii internetowych standardów — i przyznać muszę, że odpowiedź jest znacznie ciekawsza, niż mogłoby się wydawać.
Krótka odpowiedź (ale to nie takie proste)
Teoretycznie możesz wcisnąć nawet 59 myślników z rzędu w nazwie domeny. Ale w praktyce? Jest różnie. Wszystko zależy od tego, który RFC sprawdzasz, do kogo należy rejestr TLD, no i czy przez ostatnie 25 lat ktoś w ogóle przejmował się egzekwowaniem zasad.
Długa i dziwna podróż przez historię internetu
Cofnijmy się trochę. W 1978 roku wczesne standardy internetowe nazywały myślnik „minusem". RFC 608 określał, że nazwy hostów mogą zawierać litery, cyfry i znak minus — z zaledwie dwoma ograniczeniami: pierwszy znak musiał być literą, a ostatni NIE mógł być minusem.
W 1981 roku zapisano to formalnie w RFC 810, opisując składnię domen za pomocą zapisu przypominającego starożytne języki programowania: <name> ::= <let>[*[<let-or-digit-or-hyphen>]<let-or-digit>]. W skrócie: zacznij od litery, zakończ literą lub cyfrą, a w środku rób co chcesz.
RFC 952 z 1989 roku kontynuowało te zasady w nieco czystszej formie. Później pojawiło się RFC 1035 z 1987 roku, często cytowane jako „preferowana składnia nazwy". Potwierdzało: etykiety muszą zaczynać się od litery, kończyć literą lub cyfrą, a w środku допускаły только буквы, цифры и дефисы.
Zauważ coś? Nie było żadnego limitu na liczbę myślników.
Zwrot z IDN
Przez lata nic się nie zmieniało, aż do 2010 roku, gdy na scenę wkroczyły Międzynarodowe Nazwy Domen (IDN). Używają prefiksu xn--, który pozwala na znaki spoza ASCII. I tutaj robi się ciekawie.
RFC 5891 wprowadziło nową zasadę: „Łańcuch Unicode NIE MOŻE zawierać '--' (dwóch kolejnych myślników) na pozycjach trzeciej i czwartej."
Dlaczego? Bo xn-- wygląda jak -- właśnie na pozycjach 3-4. Ta reguła istnieje, żeby uniknąć zamieszania. Jeśli twoja domena zaczyna się od xn, jesteś bezpieczny. Wszyscy inni? Dwa myślniki na pozycjach 3 i 4 są zakazane.
Teoretycznie więc możesz mieć do 59 myślników z rzędu, zaczynając od pozycji 4 i kończąc na 62. Coś jak abc---[…]---z.com powinno przejść.
Albo nie?
Rzeczywistość: ograniczenia TLD
Oto sedno sprawy — standardy to tylko zalecenia, dopóki ktoś ich nie egzekwuje. Każdy rejestr domeny najwyższego poziomu ustala własne zasady, często bardziej restrykcyjne niż RFC-y.
Niektóre registry blokują konkretne słowa. Inne nie pozwalają na rejestrację IDN w ogóle. Jeszcze inne chronią się przed podszywaniem pod publiczne sufiksy.
A potem jest rejestr .ss Sudanu Południowego, który rzekomo nie pozwala na żadne myślniki. Zero. Żadnego. Ani jednego.
Nominet, zarządzający domeną .uk, nie ma co prawda ograniczeń dotyczących myślników jako takich, ale za to blokuje domeny z prefiksem xn--.
Ogólnie rzecz biorąc, większość rejestrów pozwoli ci zarejestrować domenę z mnóstwem myślników — ale „większość" to nie „wszyscy".
Anomalie: domeny, które nie powinny istnieć
A tutaj zaczyna się prawdziwa zabawa. Internet działa na masie systemów legacy, przypadkowych rozwiązań i implementacji „jako tako". Ktoś postanowił trochę pokopać i znalazł setki domen, które łamią współczesne zasady.
Oto kilka perełek:
0-------------------------------------------------------------0.com— założona w 1999, teraz nieaktywna0-------------------------------------------------------------5.com— założona w 2001, wciąż działaa-------------------------------------------------------------a.com— 61 myślników. Tak, sześćdziesiąt jeden. Maksimum możliwe. Ta strona nadal działa i wygląda, jakby nie była aktualizowana od 2000 roku.
Dokładnie. Domenę z 61 myślnikami z rzędu można otworzyć w przeglądarce w 2024 roku.
Jest też zz--icann-monitoring.uk, zarejestrowana w 2024 roku — długo po ustaleniu reguł IDN. Ale ponieważ Nominet nie pozwala na domeny xn--, ta technicznie rzecz biorąc jest zgodna z przepisami.
Inne ciekawostki to domeny wyglądające jak losowe ciągi znaków, prawdopodobnie używane jako serwery command-and-control. Wzory są fascynujące, jeśli lubisz takie rzeczy.
Co to oznacza dla ciebie?
Szczerze? Prawdopodobnie nic. Większość rejestratorów domen i tak nie pozwoli ci zarejestrować czegoś absurdalnego. Ale znajomość tych zasad ma znaczenie, jeśli:
- Tworzysz walidację domen w swoich aplikacjach
- Pracujesz z międzynarodowymi domenami i musisz rozumieć wyjątek
xn-- - Audytujesz istniejącą infrastrukturę pod kątem zgodności
- Po prostu jesteś ciekaw, jak internet działa od środka
Standardy internetu to żywe dokumenty, ewoluujące przez dziesięciolecia — pisane przez ludzi rozwiązujących realne problemy w danym momencie. Zasady dotyczące myślników odzwierciedlają równowagę między elastycznością a jasnością — i jak większość ludzkich systemów, nabrały swoich dziwactw po drodze.
Następnym razem, gdy będziesz wybierać nazwę domeny, może zostań przy czymś prostym i łatwym do zapamiętania. Ale teraz wiesz: jeśli naprawdę chcesz, technicznie mógłbyś zarejestrować hello------------------------------------------world.com.
Prawdopodobnie nie powinieneś. Ale mógłbyś.
A jaka jest najdziwniejsza domena, jaką kiedykolwiek spotkałeś? Napisz w komentarzach — jestem szczerze ciekaw, jakie inne anomalie tam jeszcze grasują.