Imagine que en un enrutador basado en Linux (una distribución Debian) tiene muchas NIC. ¿Cómo imprimir la cantidad de conexiones abiertas para una NIC determinada? (las soluciones alternativas son respuestas aceptables)
Respuesta1
Opción 1
netstat | awk '$4 ~ /xxx.xxx.xxx.xxx/ { ++count } END { print count }'
Dóndexxx.xxx.xxx.xxxes la dirección IP de la NIC.
netstat
encontrará todas las conexiones abiertasawk
coincide con la dirección IP de la NIC$4
diceawk
que veremos la cuarta columna{ ++count } END { print count }
le diceawk
que cuente cada vez que encuentre una coincidencia. Cuando termine, imprima el recuento final.
opcion 2
netstat | grep xxx.xxx.xxx.xxx -c
Dóndexxx.xxx.xxx.xxxes la dirección IP de la NIC.
netstat
encontrará todas las conexiones abiertasgrep
coincide con la dirección IP de la NIC-c
pidegrep
contar el número de coincidencias, en lugar de imprimirlas.
La opción 1 tiene la ventaja de coincidir solo en el campo de dirección local en lugar de en cualquier lugar. La opción 2 podría contar dos veces si hay conexiones abiertas donde la dirección remota apunta al host local.
Respuesta2
No puedes. Los enrutadores IP básicos simplemente reenvían datagramas sin estado, mirando solo la capa IP. No sabrían nada sobre ninguna conexión para la que no sean el punto final.
Un firewall SPI o una puerta de enlace NAT es una historia diferente.
Respuesta3
El enrutador no rastrea las conexiones; debe preguntarle al firewall.
El firewall de Linux admite el seguimiento de "conexión" con estado, pero no está necesariamente activo de forma predeterminada.Sitienes alguno de estos:
- una regla de iptables que usa
-m state
o-m conntrack
, - o una regla nftables que usa
ct state
, - o cualquier regla en las tablas NAT de iptables/nftables (por ejemplo, la cadena nat/prerouting),
entonces el sistema conntrack del firewall está activo y puedes ver su "tabla de estado" usando:
conntrack -L
Sin embargo, debido a que esto lo hace el firewall (no el enrutador), los estados no tienen relación con ninguna interfaz en particular; solo les importa el direccionamiento L3/L4.