Seu comando egrep
está funcionando para mim, para fazer com que o grep -e
work simplesmente escape dos caracteres de controle e para que ele seja impresso apenas os IPs usem a opção -o
para grep:
tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{4\}'
Mas como eu vejo isso vai imprimir um ponto no final do IP, se você não gosta disso, então você tem que adicionar o último octeto separatly, ou seja:
tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{3\}\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)'
Para fazer isso, imprima um IP apenas uma vez:
tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{3\}\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)' | sort | uniq