Digamos que un sitio web no tiene un nombre de dominio como www.google.com
y la única forma de conectarse es usar una dirección IP como 216.58.212.68
. Si agrego una entrada en /etc/hosts
que parece 0.0.0.0 216.58.212.68
, ¿bloqueará las conexiones a ese sitio web? ¿Se bloquearía también un navegador web para que no pueda visitarlo?
Además, ¿esto también se aplicaría a direcciones locales como 192.168.0.1
? ?
Respuesta aceptada:
No. El archivo de hosts no afecta ningún enrutamiento. Solo afecta a las búsquedas de nombres. Desde 216.58.212.68
es una dirección IP, el sistema no la buscará en la tabla de hosts.
Lea aquí para obtener más información sobre el archivo de hosts:http://manpages.ubuntu.com/manpages/trusty/man5/hosts.5.html
Si desea bloquear las conexiones a una dirección IP desde su sistema, hay un par de formas de hacerlo, como:
-
Tráfico de agujero negro usando la
route
comando:route add 216.58.212.68 gw 127.0.0.1 lo
-
Rechazar el tráfico usando la
route
comando:route add -host 216.58.212.68 reject
-
Ruta nula usando la
ip
comando:ip route add blackhole 216.58.212.68/32
Ahora, si desea bloquear el tráfico a un sistema por su nombre, puede agregar una entrada falsa a su archivo de hosts apuntando ese nombre a la dirección de bucle invertido:
127.0.0.1 badactor.evil.com
Luego, cualquier tráfico que intente llegar a ese host desde su sistema se falsificará, siempre que su sistema esté configurado para usar la búsqueda de archivos de hosts antes del DNS. Cualquier búsqueda específicamente basada en DNS seguirá funcionando, aunque podría usar un servidor DNSMASQ como Pi Hole para bloquear incluso las búsquedas de DNS.
Asegúrese de leer las páginas man de la route
y ip
comandos, por lo que comprenderá cómo hacer que estos comandos sean persistentes en los reinicios si es necesario que lo sean.