Limpiar cache DNS en Linux, Windows o Mac

En ocasiones tenemos que limpiar la cache DNS, especialmente si cambias algún dominio de servidor y quieres probar que todo funciona correctamente, lo que recomiendo en estos casos es poner como DNS la ip servidor o la del servidor DNS “autoritativo” de ese dominio. De esta forma trabajaremos sobre el nuevo servidor y podremos comprobar que todo funcione correctamente.

Para limpiar la cache DNS lo haremos desde el terminal/shell/consola y según el sistema operativo que usemos escribiremos lo siguiente:

GNU/Linux: sudo /etc/init.d/nscd restart
Windows: ipconfig /flushdns
Mac OS X: lookupd -flushcache
Leopard y posterior : dscacheutil -flushcache

Limpiando la cache DNS de nuestro equipo no quiere decir que automáticamente podamos ver correctamente la ultima versión de esa web, puede que las DNS de nuestro proveedor de Internet no estén actualizadas aunque en la actualidad suelen actualizarse con una frecuencia mucho mayor.

Contar peticiones/request por IP de un access_log de Apache en bash

Aqui os dejo una pequeña linea en bash para contar la cantidad de requests por IP en un access_log de Apache.

cat /var/log/httpd/access_log |awk '{print($1)}'|sort |uniq -c |sort

Aqui la explicacion de como funciona:
Lo primero que hacemos es abrir el archivo con cat, el contenido se pasa a awk con el cual obtenemos la primera columna (lo mismo lo podríamos hacer con cut, pero estoy más acostumbrado a awk). Eso nos devuelve la lista de las IPs. Eso lo pasamos a sort que ordena las IPs antes de poder pasarselo a uniq. Éste último comando, con el parámetro -c se ocupa de contar las líneas repetidas en un listado ordenado (por eso el sort anterior). Y por último le volvemos a pasar todo a sort para que lo ordene en forma ascendente de acuerdo a la cantidad de ocurrencias de cada IP.