Kody odpowiedzi DNSBL: 127.0.0.2, 127.255.255.x i NXDOMAIN
Jeśli zapytanie do DNSBL zwraca adres z zakresu 127.0.0.0/8, adres IP lub domena jest wpisana; odpowiedź NXDOMAIN oznacza brak wpisu. Poza tym dokładna wartość zależy od listy, niektóre odpowiedzi 127.x są kodami błędów, a nie wpisami, a SERVFAIL lub przekroczenie limitu czasu nie mówią nic o statusie wpisu.
Ten poradnik omawia konwencje opisane w RFC 5782 oraz kody odpowiedzi, które Spamhaus, SpamCop i UCEPROTECT dokumentują na swoich stronach. Opiera się na tych oficjalnych stronach według stanu na listopad 2026. Listy zmieniają swoje dane i zasady, dlatego przed podjęciem działań na podstawie wyniku warto sprawdzić dokumentację operatora. Podstawy działania list blokujących wyjaśnia artykuł czym jest DNSBL (RBL).
Podstawy: co RFC 5782 mówi o kodach odpowiedzi
RFC 5782, opublikowany w lutym 2010 roku, opisuje, jak odpytuje się czarne i białe listy DNS i jak wyglądają ich odpowiedzi. Jest to dokument informacyjny (Informational), a nie specyfikacja Standards Track: odnotowuje powszechną praktykę, a szczegóły przypisywania wartości pozostawia operatorom poszczególnych list.
Jak buduje się zapytanie
W przypadku IPv4 odwraca się kolejność oktetów i dopisuje strefę listy. Aby sprawdzić 192.0.2.99 na liście bl.example.com:
dig +short 99.2.0.192.bl.example.com A
dig +short 99.2.0.192.bl.example.com TXTW przypadku IPv6 adres zapisuje się jako 32 półbajty (nibble) szesnastkowe w odwrotnej kolejności, a po nich strefę. Listy oparte na domenach przyjmują po prostu nazwę domeny, a po niej nazwę strefy; RFC zaznacza, że listy oparte na nazwach są znacznie rzadsze niż listy oparte na IP.
Rekord A: wpisany czy nie
- Wpisany: lista zwraca rekord A. RFC mówi, że wszystkie wartości A powinny należeć do 127.0.0.0/8, aby zapobiec niepożądanemu ruchowi sieciowemu, i że wartość ta zgodnie z konwencją wynosi 127.0.0.2.
- Brak wpisu: dla danego adresu nie może istnieć żaden rekord. W terminologii DNS odpowiedzią jest NXDOMAIN, co oznacza, że nazwa nie istnieje.
- Wartości rekordu A nie wolno używać jako adresu IP. 127.0.0.2 to znacznik, a nie serwer, z którym należy się łączyć.
Rekord TXT: powód i adres URL
Według RFC listy DNSBL powinny publikować rekord TXT opisujący, dlaczego dany wpis istnieje, a powód ten często zawiera adres URL z dodatkowymi informacjami. Oprogramowanie klienckie musi sprawdzać rekord A i może sprawdzać rekord TXT. Tekst TXT jest często używany w komunikacie błędu SMTP, więc komunikat o niedoręczeniu może zawierać pochodzący z niego adres URL do sprawdzenia lub usunięcia wpisu.
Dlaczego listy zwracają różne wartości: listy składowe i maski bitowe
Wartość inna niż 127.0.0.2 zwykle oznacza, że strefa łączy kilka list składowych. RFC 5782 opisuje trzy sposoby ich reprezentowania: subdomeny, wiele rekordów A oraz wartości kodowane bitowo.
- Wiele rekordów A: każda lista składowa ma własną wartość, a lista zwraca po jednym rekordzie A dla każdej listy składowej, na której znajduje się adres.
- Maski bitowe: każdej liście składowej przypisuje się bit, a odpowiedź jest logicznym OR bitów wszystkich pasujących list składowych. W przykładzie z RFC adres znajdujący się na listach składowych 127.0.0.2 i 127.0.0.4 zwraca 127.0.0.6.
Najważniejsze jest to, że sam RFC stwierdza, iż nie ma powszechnie stosowanej konwencji przypisywania nazw list składowych do wartości. Ta sama liczba może oznaczać różne rzeczy na różnych listach. Kod odpowiedzi zawsze należy odczytywać razem ze strefą, która go zwróciła, i według dokumentacji tej listy. RFC mówi też, że oprogramowanie klienckie powinno umieć stosować do zwracanych wartości maski bitowe i testy zakresów.
Spamhaus ZEN to dobry przykład stylu z wieloma odpowiedziami. Jego dokumentacja podaje, że zapytanie zwykle daje kilka różnych odpowiedzi w tej samej odpowiedzi DNS, po jednej dla każdego zbioru danych, na którym wpisany jest adres IP, z innym kodem odpowiedzi dla każdego zbioru. Dwa lub trzy kody naraz to normalna sytuacja.
Kody odpowiedzi głównych list blokujących
Poniższa tabela obejmuje kody odpowiedzi, które operatorzy dokumentują na swoich oficjalnych stronach.
| Lista (strefa) | Kod odpowiedzi | Znaczenie (według operatora) |
|---|---|---|
| Spamhaus ZEN (zen.spamhaus.org) | 127.0.0.2 | SBL |
| Spamhaus ZEN | 127.0.0.3 | CSS |
| Spamhaus ZEN | 127.0.0.4 | XBL (dane CBL) |
| Spamhaus ZEN | 127.0.0.9 | DROP, zwracany razem z 127.0.0.2 |
| Spamhaus ZEN | 127.0.0.10 / 127.0.0.11 | PBL (utrzymywana przez ISP / utrzymywana przez Spamhaus) |
| Spamhaus DBL (dbl.spamhaus.org) | 127.0.1.2, 127.0.1.4 do 127.0.1.6 | Domena o niskiej reputacji: spam, phishing, złośliwe oprogramowanie, C&C botnetu |
| Spamhaus DBL | 127.0.1.102 do 127.0.1.106 | Nadużywana legalna domena (127.0.1.103: nadużyta domena przekierowująca używana w spamie) |
| Spamhaus DBL | 127.0.1.255 | Wysłano do DBL zapytanie o adres IP, co jest niedozwolone |
| SpamCop (bl.spamcop.net) | 127.0.0.2 | Wpisany |
| UCEPROTECT (dnsbl-1, dnsbl-2, dnsbl-3.uceprotect.net) | Nie podano na stronie o korzystaniu z DNS | Po jednej strefie dla Level 1, 2 i 3 |
- Spamhaus: ZEN łączy SBL, CSS, XBL i PBL i obejmuje wyłącznie adresy IP; domeny sprawdza się na DBL. DBL używa zakresu 127.0.1.0/24, a lista Zero Reputation Domains zakresu 127.0.2.0/24. Ponieważ DBL na zapytanie o IP zawsze odpowiada 127.0.1.255, nie można jej używać do sprawdzania adresów IP. Znaczenie poszczególnych list Spamhaus i sposób składania wniosku o usunięcie opisuje nasz poradnik o usuwaniu ze Spamhaus.
- SpamCop: oficjalne FAQ podaje 127.0.0.2 jako odpowiedź wskazującą wpisany adres IP. Zaleca też zapewnienie użytkownikom dostępu do odfiltrowanej poczty, na przykład przez jej oznaczanie lub przenoszenie do osobnego folderu, zamiast bezwzględnego odrzucania. Usuwanie z listy omawia nasz poradnik o usuwaniu ze SpamCop.
- UCEPROTECT: strona o korzystaniu z DNS wymienia nazwy trzech stref, ale nie opisuje zwracanych wartości. Podaje, że metoda DNS jest naprawdę przydatna tylko dla małych i średnich serwerów pocztowych, i sugeruje rsync dla systemów wykonujących ponad 100 000 zapytań dziennie. Poziomy wyjaśnia nasz poradnik o UCEPROTECT Level 2 i 3.
- Barracuda: jej wartości odpowiedzi nie są tu omawiane. Sprawdź strony samego Barracuda Central.
127.255.255.x i publiczne resolvery: odpowiedzi, które nie są wpisami
Spamhaus rezerwuje zakres 127.255.255.0/24 na kody błędów. Mogą być zwracane dla dowolnej strefy, a oficjalne FAQ podaje, że nie wolno ich traktować jako oznaki, że odpytywany obiekt jest wpisany.
| Kod odpowiedzi | Znaczenie |
|---|---|
| 127.255.255.252 | Literówka w nazwie DNSBL |
| 127.255.255.254 | Zapytanie przez publiczny lub otwarty resolver |
| 127.255.255.255 | Nadmierna liczba zapytań |
Dlaczego wyniki z publicznych resolverów są niewiarygodne
FAQ Spamhaus podaje, że przy zapytaniach przez duże publiczne resolvery w większości przypadków otrzymuje się odpowiedź „brak wpisu” (NXDOMAIN). Innymi słowy, wpisany adres IP może wyglądać na czysty. To samo FAQ wskazuje korzystanie z Amazon, Quad9, Google, Cloudflare lub innego publicznego resolvera jako najczęstszą przyczynę problemu odwrotnego, gdy lista wydaje się blokować cały internet.
Niektóre resolvery podmieniają też odpowiedzi NXDOMAIN i zwracają adres IP dla nieistniejących nazw. Serwer pocztowy może wziąć to za wpis. FAQ sugeruje skonfigurowanie serwera pocztowego tak, aby ignorował każdą odpowiedź spoza 127.0.0.0/8, uruchomienie własnego resolvera lub kontakt z ISP albo dostawcą DNS. Aby sprawdzić, z którego resolvera faktycznie korzystasz, FAQ podaje taki test:
dig txt whoami.fastly.netJeśli stosujesz filtrowanie DNSBL na własnym serwerze pocztowym, upewnij się też, że nie odrzuca on poczty za każdym razem, gdy otrzyma odpowiedź 127.255.255.x. Spamhaus określa to jako błędną konfigurację.
NXDOMAIN, SERVFAIL i przekroczenie limitu czasu
Każda odpowiedź DNS zawiera kod odpowiedzi (RCODE) zdefiniowany w RFC 1035. Odczytując wynik DNSBL, oddzielaj RCODE od wartości rekordu A.
| Odpowiedź | Co oznacza w DNS | Jak ją odczytać dla DNSBL |
|---|---|---|
| Rekord A z zakresu 127.0.0.0/8 (z wyjątkiem 127.255.255.x) | Brak błędu (NOERROR) | Wpisany; sprawdź wartość w dokumentacji danej listy |
| NXDOMAIN (Name Error) | Odpytywana nazwa nie istnieje | Brak wpisu, pod warunkiem że zapytanie przeszło przez odpowiedni resolver |
| 127.255.255.x | Odpowiedź wyglądająca na zwykłą, która sygnalizuje błąd | Nieznany; popraw resolver lub zapytanie |
| SERVFAIL (Server failure) | Serwer nazw nie mógł przetworzyć zapytania | Nieznany |
| Przekroczenie limitu czasu | Nie nadeszła żadna odpowiedź | Nieznany |
RFC 5782 nie określa, jak klienci powinni postępować z listą, która zawodzi lub nie odpowiada. Traktowanie SERVFAIL lub przekroczenia limitu czasu jako wpisu albo braku wpisu jest błędem. Ponów próbę później lub odpytaj inną drogą.
Wpisy testowe pozwalają sprawdzić, czy lista działa
RFC 5782 wymaga, aby listy IPv4 zawierały wpis dla 127.0.0.2 i nie zawierały wpisu dla 127.0.0.1. Listy IPv6 używają ::FFFF:7F00:2 (wpisany) i ::FFFF:7F00:1 (niewpisany), a listy domen zarezerwowanych nazw TEST (wpisana) i INVALID (niewpisana).
dig +short 2.0.0.127.zen.spamhaus.org A
dig +short 1.0.0.127.zen.spamhaus.org AJeśli pierwsze zapytanie zwraca kod wpisu (wartość 127.x inną niż 127.255.255.x), a drugie nie zwraca niczego, zapytania do tej listy działają. Jeśli pierwsze zwraca 127.255.255.x, Twoja droga zapytań jest odrzucana. RFC mówi, że klienci powinni okresowo sprawdzać wpisy testowe i nie powinni korzystać z listy bez poprawnych wpisów testowych. Zaznacza też, że zdarzało się, iż operatorzy zamykający listę usuwali wszystkie wpisy albo ustawiali wildcard wpisujący każdy adres. Jeśli również 127.0.0.1 jest zwracany jako wpisany, podejrzewaj listę lub swoją drogę zapytań, a nie własny adres IP.
Praktyczny sposób odczytania własnego wyniku
- Wybierz właściwy adres IP lub domenę. Użyj adresu IP z komunikatu o niedoręczeniu albo adresu IP serwera wysyłającego z wierszy Received w nagłówkach wiadomości.
- Sprawdź kilka list naraz. Nasze narzędzie do sprawdzania czarnych list sprawdza główne listy za jednym razem.
- Odczytuj każdy kod razem z jego strefą. Kod wpisu z zakresu 127.0.0.0/8 (inny niż 127.255.255.x) oznacza wpis; sprawdź, co ta wartość oznacza na danej liście. Odpowiedź 127.255.255.x, SERVFAIL lub przekroczenie limitu czasu oznacza, że status nadal jest nieznany.
- Sprawdź rekord TXT i stronę sprawdzania prowadzoną przez operatora. Wiele list zwraca powód lub adres URL. Za wiarygodny wynik uznawaj ten ze strony sprawdzania prowadzonej przez samego operatora.
- Usuń przyczynę, a następnie postępuj zgodnie z procedurą usuwania danej listy. Każdy operator decyduje, czy i kiedy usunąć wpis. Jeśli przyczyna pozostaje, wpis zwykle wraca.
Pełną ścieżkę diagnostyczną przy odrzucanej poczcie opisuje artykuł poczta blokowana przez czarną listę. Jeśli potrzebujesz pomocy w interpretacji wyników lub ustaleniu przyczyny, możesz zapytać nas o usunięcie z listy.
Polecamy firmy, które przyjmują zlecenia usunięcia z list, konsultacje i doradztwo (od JPY 50,000). O usunięciu z listy decyduje operator danej listy, dlatego nie można go zagwarantować.
Poproś o pomocTa strona może otrzymywać prowizję od polecanych firm. About
Najczęściej zadawane pytania
Zapytanie zwróciło 127.0.0.2. Na której liście jestem?
Jesteś na liście odpowiadającej strefie, którą odpytywano. 127.0.0.2 to konwencjonalna wartość używana przez wiele list, więc sama liczba nie identyfikuje listy. Na Spamhaus ZEN oznacza SBL; na SpamCop oznacza po prostu wpis. Odczytuj ją razem z nazwą strefy i dokumentacją danej listy.
Otrzymałem 127.255.255.254. Czy jestem na czarnej liście?
Nie. W strefach Spamhaus jest to kod błędu oznaczający, że zapytanie przeszło przez publiczny lub otwarty resolver. Nie oznacza, że adres IP jest wpisany. Sprawdź ponownie na stronie sprawdzania Spamhaus albo odpytaj bez pośrednictwa publicznego resolvera.
Dlaczego różne narzędzia podają różne wyniki co do wpisu?
Częstym powodem jest resolver użyty do zapytania. Przez publiczne resolvery wpisany adres IP może wyglądać na czysty albo można otrzymać kody błędów. Narzędzie może też wyświetlać SERVFAIL lub przekroczenie limitu czasu jako brak wpisu. W razie wątpliwości skorzystaj z oficjalnej strony sprawdzania prowadzonej przez operatora listy.
Dla mojego wpisu nie ma rekordu TXT. Czy coś jest nie tak?
Niekoniecznie. RFC 5782 mówi, że listy DNSBL powinny publikować powód w rekordzie TXT, ale nie jest to obowiązek, a sprawdzanie rekordu TXT jest dla klientów opcjonalne. O wpisie decyduje rekord A.
Wykorzystane strony oficjalne
Fakty podane w tym artykule zostały sprawdzone w momencie publikacji na poniższych stronach oficjalnych. Zasady i działanie usług mogą się zmienić bez uprzedzenia, dlatego przed podjęciem ważnych decyzji warto sprawdzić strony oficjalne.
- RFC 5782: DNS Blacklists and Whitelists
- RFC 1035: Domain Names - Implementation and Specification (RCODE)
- Spamhaus FAQ: DNSBL Usage (return codes and public resolvers)
- Spamhaus: ZEN Blocklist
- Spamhaus: Domain Blocklist (DBL)
- SpamCop FAQ: How do I configure my mailserver to reject mail based on the blocklist?
- UCEPROTECT: Using DNS Lookups
Powiązane poradniki
Czym jest DNSBL? Jak działają czarne listy DNS i RBL: odwrócone zapytania o IP, rekordy A i TXT, IPv6, listy IP i domen, białe listy i powody wpisów.
Jesteś na liście Spamhaus? Sprawdź, na której (ZEN, PBL, XBL, CSS, SBL, DBL), co oznaczają kody odpowiedzi i jak wygląda ścieżka usunięcia z każdej z nich.
Jak monitorować adresy IP i domeny nadawcze na czarnych listach DNS: skrypt dig i cron, API wsadowe z webhookami oraz alerty bez fałszywych alarmów.