Volver a la página principal

Conteo de Apariciones de IPs en un Registro de Accesos Nginx

En este artículo, exploraremos cómo contar las apariciones de direcciones IP en un archivo de registro de accesos de Nginx utilizando el poderoso comando AWK.

El comando AWK es una herramienta versátil que permite realizar procesamiento de texto de manera eficiente. En este contexto, lo utilizaremos para analizar registros de accesos y contar las ocurrencias de direcciones IP.

awk '{ip_count[$1]++} END {for (ip in ip_count) print ip, ip_count[ip]}' access.log

Desglose del comando AWK:

{
    ip_count[$1]++
}
END {
    for (ip in ip_count)
        print ip, ip_count[ip]
}

En la sección anterior, el comando AWK recorre cada línea del archivo de registro y utiliza un array asociativo para contar las apariciones de cada dirección IP. Al final, se imprime el recuento para cada IP.

Este enfoque proporciona una manera eficiente y concisa de obtener información valiosa sobre las direcciones IP que acceden a un servidor Nginx.

awk '{ip_count[$1]++} END {for (ip in ip_count) print ip, ip_count[ip]}' access.log | sort -k2 -n -r | head -n 10

Además, podemos mejorar el comando para mostrar las 10 direcciones IP principales ordenadas por frecuencia:

{
    ip_count[$1]++
}
END {
    for (ip in ip_count)
        print ip, ip_count[ip]
} | sort -k2 -n -r | head -n 10

Esta modificación nos permite identificar rápidamente las direcciones IP más activas en el registro de accesos.

En resumen, el comando AWK es una herramienta esencial para el análisis de registros, y su capacidad para procesar datos de manera eficiente lo convierte en una opción valiosa para tareas como el conteo de apariciones de direcciones IP en registros de accesos Nginx.

Compartir:
Autor:
User photo

Jorge García

Fullstack developer