O que eu preciso fazer (via 'tcpdump' através do Linux):
• Servidores de aplicativos de comércio eletrônico: 192.168.1.2, 192.168.1.3, 192.168.1.4. - É nisso que eu quero capturar (filtrado nesses IPs exatos). Não é um intervalo de IP (sub-rede) ou um endereço IP individual, apenas vários endereços / servidores IP.
• Existem outros aplicativos dentro desse intervalo, por exemplo, o PayRoll App está em 192.168.1.5, e eu não quero ver esse tráfego na minha captura.
Eu tentei:
tcpdump 0 "/tmp" "host 192.168.1.2 or host 192.168.1.3 or host 192.168.1.4" 100000
e também:
tcpdump 0 "/tmp" "ip.host==192.168.1.2 or ip.host==192.168.1.3 or ip.host==192.168.1.4" 100000
Ambos retornam erros de sintaxe.
Qualquer ajuda é muito apreciada.
Respostas:
a sintaxe básica no seu caso seria
O
<filters>
iria expandir para algo comose o seu aplicativo de comércio eletrônico usasse as portas 80 e 443 para comunicações. As aspas simples são importantes, caso contrário, seu shell poderá ver os colchetes (), importantes para agrupar parâmetros como caracteres especiais.
adicionar parâmetros -v e -n no início (
tcpdump -v -n -i ...
) adicionaria verbosidade à saída e desabilitaria a resolução de nomes (acelera a saída)fonte
tcpdump -vvv -enni <interface> host 192.168.1.2 or host 192.168.1.3 or host 192.168.1.4 and port XYX -s0 -w /var/tmp/yourfile.pcap
fonte