Mam kilka hostów, które chciałbym zablokować w moim /etc/hosts
pliku. W tym celu muszę zdefiniować fałszywy adres IP, na który rozpoznawane są zapytania DNS.
Większość samouczków, które widziałem do tej pory, wspomina 127.0.0.1
o tym rozwiązaniu. Ale zastanawiałem się, czy może jest lepszy lub inny adres, który może już wcześniej odrzucić połączenie.
Tak więc myślałem o użyciu 0.0.0.0
w moim hosts
pliku. Czy uważasz, że działałoby to tak samo, jak 127.0.0.1
w przypadku blokowania niektórych hostów?
networking
dns
hosts-file
comfreak
źródło
źródło
Odpowiedzi:
W systemie Windows jest różnica: wysyłane pakiety
127.0.0.1
kończą się bombardowaniem dowolnego serwera, który masz na komputerze (i możesz uruchomić serwer, nie wiedząc o tym ), podczas gdy próba wysłania pakietów0.0.0.0
natychmiast powróci z kodem błędu1214
( ERROR_INVALID_NETNAME ).TL; DR: Użyj
0.0.0.0
źródło
0.0.0.0
, ponieważ może niektóre programy mogą nie być w stanie obsłużyć tego nieoczekiwanego adresu?Są (zwykle) takie same, a pakiety kończą się tak samo: bombardowanie własnego hosta żądaniami oraz trochę czasu i ruchu (na interfejsie lokalnym) marnuje niewielką ilość zasobów. (To samo dotyczy dowolnego adresu w 127.0.0.0/8, powiedzmy 127.2.3.4.)
Nawiasem mówiąc, działa to dobrze tylko wtedy, gdy twój host nie uruchamia usługi, którą chcesz zablokować (jak używanie jej do blokowania serwerów WWW, podczas gdy twój host ma serwer WWW), w przeciwnym razie otrzymasz odpowiedzi z własnego serwera. Użycie zdecydowanie nieistniejącego adresu (powiedzmy 192.168.255.254) zapobiegłoby temu, ale spowodowałoby opóźnienia z powodu nieosiągalnego hosta dla połączeń.
Blokowanie przez zaporę zwykle działa lepiej. :-)
źródło