Quiero monitorear la cantidad de conexiones de red entrantes y salientes. Puedo obtener el número total con netstat
y wc -l
, pero quiero saber cuántos entran y cuántos salen.
Respuesta1
Puede lograrlo utilizando ip_conntrack.
modprobe ip_conntrack
cat /proc/net/ip_conntrack
Las conexiones establecidas que tienen la dirección de origen igual a la dirección de su interfaz son las conexiones salientes.
Las conexiones establecidas que tienen la dirección de destino igual a la dirección de su interfaz, son las conexiones entrantes.
# Number of outgoing connections
cat /proc/net/ip_conntrack | grep "ESTABLISHED" | grep "src=xxx.xxx.xxx.xxx" | wc -l
# Number of incoming connections
cat /proc/net/ip_conntrack | grep "ESTABLISHED" | grep "dst=xxx.xxx.xxx.xxx" | wc -l
(xxx.xxx.xxx.xxx es obviamente la dirección IP de su interfaz)
Tenga en cuenta que existen conexiones que se producen para la comunicación entre procesos, entre aplicaciones que se ejecutan en su sistema.
Puede encontrar información sobre las entradas de ip_conntrackaquí.
Respuesta2
Puede monitorear todas las conexiones entrantes y salientes con iftop.
http://www.ex-parrot.com/pdw/iftop/
Si quieres obtener algunas estadísticas.