Tamanho máximo do arquivo dividido do Tcpdump

5

Eu me refiro a este tópico: como dividir um arquivo pcap em um conjunto de arquivos menores

Eu tentei usar o comando tcpdump -r old_file -w new_files -C 4096 e tcpdump retorna tcpdump: invalid file size 4096

Até agora eu testei até 2048 (x1,000,000 bytes) e dividi arquivos com sucesso em 2GB cada para um grande arquivo pcap. Existe de qualquer maneira, para dividir um grande arquivo pcap (por exemplo, 20GB) em arquivos menores com 4GB cada?

    
por CheeHow 28.11.2014 / 06:59

2 respostas

3

A menos que você esteja disposto a mudar a fonte e a recompilá-lo ' não vai conseguir o tcpdump para fazer isso nativamente.

case 'C':
        Cflag = atoi(optarg) * 1000000;
        if (Cflag < 0)
            error("invalid file size %s", optarg);
        break;

Você precisaria encontrar e modificar o tipo de CFlags. Isso pode levar a outros problemas inesperados.

Você pode tentar dividi-lo em partes de 2 GB e remover o cabeçalho de arquivo de 20 bytes o segundo arquivo de cada par ( dd busca é seu amigo) então use o cat para concatenar os 2 arquivos juntos.

    
por 28.11.2014 / 08:02
2

Há um patch disponível para o tcpdump em seu repositório Github, veja issue # 488 . Aplicar o patch e compilar é muito fácil se você seguir as instruções descritas no INSTALL.txt (veja o diretório raiz do repositório).

Como alternativa, você também pode usar a biblioteca PcapPlusPlus. Em seu repositório github, há um exemplo para um PcapSplitter que faz exatamente o mesmo que tcpdump -C . No entanto, você também precisa compilá-lo antes de poder usá-lo. Mas há um Makefile disponível.

    
por 12.11.2016 / 11:06

Tags