¿Cómo puedo borrar mi caché DNS en mi teléfono Android? (Droid3, Gingerbread, enraizado para ser específico)
Idealmente, estoy buscando un comando para ejecutar a través de un emulador de terminal, algo similar a
ipconfig /flushdns
En una máquina de ventanas.
¿Cuál es la versión de Linux de esto?
Respuestas:
En un sistema Linux típico, la caché se borra al ejecutarse
/etc/init.d/nscd restart
, pero al menos mi ROM no usa nscd para almacenar en caché DNS. Puedes comprobar si el tuyo lo hace, pero lo dudo. He visto sugerencias de que borrar la memoria caché del navegador también eliminaría la memoria caché DNS, pero una forma segura es hacer un reinicio completo (apagado, quitar la batería durante 30 segundos, volver a conectar la batería y arrancar).fuente
Las direcciones se almacenan en caché durante 600 segundos (10 minutos) de forma predeterminada. Las búsquedas fallidas se almacenan en caché durante 10 segundos. Por todo lo que he visto, no hay nada integrado para vaciar el caché. Aparentemente, este es un error reportado en Android debido a la forma en que almacena el caché DNS. Al borrar el caché del navegador no se toca el DNS, el "restablecimiento completo" lo borra porque simplemente se agota el tiempo de espera.
¿Podemos preguntar la razón subyacente para la necesidad de borrar el caché de DNS? Quizás hay otra solución que se pierde porque no estamos mirando el panorama general.
fuente
networkaddress.cache.ttl
veznetworkaddress.cache.negative.ttl
en cuandobuild.prop
.La única forma de hacer esto en Android es hacer un reinicio completo. Las herramientas de línea de comandos necesarias normalmente no están disponibles, sin embargo, en mis pruebas, un reinicio completo siempre me ha funcionado (Galaxy Nexus y HTC Desire, varias ROM).
Esto es una molestia, pero es más rápido que el tiempo de espera de caché de 10 minutos.
fuente
También hay aplicaciones como Internet Booster que prometen "borrar el caché de DNS" (entre otras cosas). No lo probé yo mismo y, además, parece que no hay forma de hacerlo solo (solo un botón "optimizar" que "aplica mejoras"); También sus efectos pueden diferir entre dispositivos (dice la descripción de la aplicación), pero podría ser mejor que un reinicio. Por cierto: aunque no menciona la raíz como requisito, aún podría ser necesaria.
Hay varias "aplicaciones similares" en Google Play, pero tenga en cuenta que la mayoría de ellas incluyen anuncios de Airpush y / o quieren permisos excesivos, por eso no los mencioné aquí.
Otra posible solución (no probada por mí mismo) que encontré en MadPC , aparentemente citando la respuesta del usuario 8522 antes de decir:
Otro breve tutorial menciona una manera fácil y diferente de limpiar DNS (de nuevo, no lo probé yo mismo): simplemente cambie al modo avión (¡uy, no hay red?) Y viceversa (ah, ahí está) debería ser el truco. Puede sonar estúpido, pero me imagino que al ingresar al modo avión, Android hace algo similar
/etc/init.d/networking stop
, que tiene un efecto DNS como efecto secundario.Una solución muy fácil fue suministrada por Dtumaykin en los comentarios a continuación: simplemente cambiar al modo avión y viceversa ya podría hacerlo (por supuesto, con el efecto secundario de la red cayendo durante un par de segundos;) aunque podría no funcionar en algunos dispositivos, vale la pena intentarlo: no hay instalaciones adicionales, y se realiza fácilmente incluso con n00bs.
Si alguien probó una de esas soluciones, la confirmación (o lo contrario) seguramente será bienvenida :)
fuente
ndc resolver flushdefaultif
yndc resolver flushif wlan0
; requieren raíz. También existe el método NetworkManagementService.flushDefaultDnsCache () , que solo requería CHANGE_NETWORK_STATE antes de JB, pero luego se bloqueó a CONNECTIVITY_INTERNAL. Por lo tanto, aparentemente había una forma hack de limpiar el caché de DNS sin root (después del ajuste build.prop para eliminar el caché de nivel Java), pero no funcionará en JB.En las versiones modernas de Android hay una opción para borrar el caché DNS de Chrome en Chrome: // net-internals / # dns
fuente
En mi caso, solo tenía un nombre de dominio que necesitaba enjuagar. Sugerencias como alternar el Modo avión, realizar un reinicio completo o las acciones en chrome: // net-internals / # dns no me funcionaron. En cambio, cambié temporalmente mi configuración de WiFi para usar el servidor de nombres de Google en 8.8.8.8.
Estos son los pasos que tomé:
Después de estos pasos, cuando
ping
edité el nombre de dominio en la consola, se resolvió con la dirección IP correcta y pareció escribir sobre la antigua en caché. Presumiblemente, visitar el dominio en un navegador tendrá el mismo efecto.Cuando volví a WiFi y configuré "Configuración de IP" de nuevo a "DHCP", el dominio correcto continuó resolviéndose en la dirección IP actual.
Esto está en un Sony Xperia Z3 con Android 5.1.1
fuente
En un Adroid 5.1 Mobile que ha tomado un DNS incorrecto, ya que se cambió a mucho entre dos WLAN; (Un signo de interrogación en una conexión WLAN. No quería restaurar mi teléfono como lo hice una vez .. Engelsiz: DNS Changer lo arregló; )
fuente