Odwrotne wyszukiwanie IP (rekordy PTR)

Odwrotny DNS odpowiada na pytanie odwrotne względem zwykłego wyszukiwania: dla danego adresu, jaką nazwę wskazał jego właściciel? Strona sama buduje nazwę odwrotną — a.b.c.d.in-addr.arpa dla IPv4, postać nibble pod ip6.arpa dla IPv6 — pyta o rekord PTR i pokazuje, który resolwer odpowiedział, jaki był kod odpowiedzi, łańcuch CNAME (jeśli istniał) oraz TTL. Drugi tryb przechodzi po adresach sąsiadujących z wpisanym, w tym samym bloku, po jednym adresie naraz, ponieważ dostawcy zwykle nazywają swoje maszyny w widocznym wzorze. Wszystko tutaj to publiczne, pasywne informacje: bez skanowania, bez ataku słownikowego, bez WHOIS.
Gotowe. Jeszcze nie wysłano żadnego zapytania.
Wpisz adres, a następnie uruchom odwrotne wyszukiwanie.
Kierunek zapytania. Zwykłe wyszukiwanie prowadzi od nazwy do adresu przez rekordy A i AAAA, a kontroluje je właściciel strony. Odwrotne wyszukiwanie prowadzi od adresu do nazwy przez rekordy PTR, a kontroluje je właściciel sieci, a nie właściciel strony. Ta jedna różnica wyjaśnia większość rzeczy, które tu wyglądają dziwnie: nazwa w stylu dostawcy, np. srv12.hoster.example, mówi, kto prowadzi maszynę, i nic nie mówi o tym, która strona na niej działa.

Brak odpowiedzi PTR to normalny wynik. Nikt nie jest zobowiązany do tworzenia nazwy odwrotnej, a większość bloków adresów nigdy jej nie tworzy. Pusta odpowiedź oznacza, że właściciel zostawił pole puste lub że odpowiedź została usunięta, a nie że adres jest nieużywany czy zachowuje się nieprawidłowo. Odpowiedź przechodzi też przez zwykłą pamięć podręczną, więc świeżo dodana nazwa może pojawiać się wszędzie z opóźnieniem.

Dlaczego sąsiedzi są interesujący. Bloki adresów przydziela się w zakresach, a najmniejszy zakres, jaki zwykle posiada klient, to /24 — 256 adresów. Dostawcy nazywają te adresy według schematu, więc odczytanie kilku nazw wokół jednego adresu często pokazuje wzorzec i dostawcę stojącego za całym blokiem. Ta strona pyta najpierw o adresy najbliższe wpisanemu, w obrębie tego samego /24, i nigdy nie szuka nazw, które nie są adresami.

Czego to nie oznacza. Nazwa odwrotna nie jest nazwą strony: nazwa w odpowiedzi może należeć do routera, serwera pocztowego lub load balancera, a nie do jakiejkolwiek strony. Jeden adres może obsługiwać setki niezwiązanych ze sobą stron, a jedna duża strona może rozciągać się na dziesiątki adresów, więc wspólna nazwa to wskazówka o hostingu, nigdy dowód, że dwie rzeczy są powiązane. Traktuj sąsiadów jako wzorzec nazewnictwa, a nie listę właścicieli.

Koszt i dlaczego lista sąsiadów jest powolna. Każdy adres na liście to osobne zapytanie do tego samego limitu resolwerów, którego używają inne strony, a lista działa po jednym adresie naraz z przerwą między pozycjami, aby pozostać w granicach akceptowanych przez publiczne resolwery. Pełna lista zajmuje więc chwilę, a można ją anulować: pozostałe adresy są porzucane bez zostawiania czegokolwiek uruchomionego.

Czego ta strona nie robi. Bez ataku słownikowego, bez skanowania zakresów, bez sondowania portów i bez wyszukiwania danych rejestracyjnych. Jeśli adres nie ma nazwy odwrotnej, a jest potrzeba ustalenia, do której sieci należy, uczciwym kolejnym krokiem jest strona Wyszukiwanie IP, która odczytuje pola sieci i lokalizacji publikowane przez publiczne usługi, oraz Kalkulator podsieci, który pokazuje granice bloku tego adresu bez wysyłania czegokolwiek nigdzie.

Publiczne źródła, które można przeczytać samodzielnie. Autorytatywny zapis tego, kto posiada zakres adresów, prowadzą rejestry regionalne: pliki IANA IPv4 address space oraz IANA IPv6 unicast assignments wymieniają, który rejestr otrzymał dany blok, a każdy rejestr publikuje potem własne rekordy delegacji. Ta strona celowo nie odpytuje tych plików: to osobny, cięższy rodzaj zapytań, a ręczne czytanie ich pod podanymi linkami jest uczciwym sposobem odpowiedzi na pytanie „czyja to sieć”.