Monitoring Server Connections - Problema de formatação do Netstat

0

Eu tive alguns problemas com um servidor recentemente. Então, eu só queria deixar uma janela mostrando o único e IP dos dispositivos conectados.

Eu tenho usado:

watch -n 5 "netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | sed 's/.*::ffff://' | sort | uniq -c | sort -nr"

Aqui está um exemplo da saída quando a formatação falha AquiestáumexemplodoNetstatsemformatação razão para a confusão, estou usando awk '{print $5}' para imprimir apenas a quinta coluna

Estou assumindo que é porque estou tentando usar o relógio com pips e algo não está de acordo com o outro.

Alguém pode sugerir um tweak para o forro um, Ou alguém pode aconselhar de outra ferramenta para monitorar as conexões ativas para o servidor (Não está interessado em conexões locais)

    
por Dave Hamilton 17.03.2016 / 17:28

1 resposta

2

Eu tentaria

... | awk '$5 ~ /:80$/ { split($5,A,":") ; if ( !u[A[1]]++ ) print A[1] ;} '

que deve filtrar o IP distante na porta 80.

  • não é necessário grep | awk | sed !!
  • $5 ~ /:80$/ filtrar o quinto campo que termina em 80
  • !u[A[1]]++ é válido apenas uma vez
  • split() resultará em IP em A[1] (e porta em A[2] ) (pelo menos para IPV4 puro)

para lidar com o relógio como

while true
do
  netstat -tn 2>/dev/null | awk '$5 ~ /:80$/ { split($5,A,":") ; if ( !u[A[1]]++ ) print A[1] ;} '
  sleep 5
done
    
por 17.03.2016 / 17:39