Repetir captura de pacote UDP

Repetir captura de pacote UDP

Eu tenho uma captura de pacote UDP que foi transmitida da Porta1 no IP1 para a Porta2 no IP2 na rede N1. Preciso reproduzir esses pacotes em outra rede N2 da Porta3 no IP3 para a Porta4 no IP4.

Preciso saber qual software usar para fazer isso e como eu faria para reproduzir esses pacotes para poder detectá-los/capturá-los novamente em N2.

Até agora, tentei reproduzir estritamente esses pacotes usando um programa chamado Colasoft Packet Player, sem muita sorte.

Responder1

tcpreplay(https://tcpreplay.appneta.com/) também parece ser capaz de fazer o que você deseja, talvez em uma única etapa usando oedição tcprelatprograma, mas eu não executei pessoalmente este software.

Deedição tcpreplay visão geral:

O tcpreplay evoluiu bastante ao longo dos anos. Nos dias 1.x, ele apenas lia os pacotes e os enviava de volta pela rede. Na versão 2.x, o tcpreplay foi aprimorado significativamente para adicionar várias funcionalidades de reescrita, mas ao custo de complexidade, desempenho e inchaço. Agora na versão 3.x, o tcpreplay voltou às suas raízes para ser uma máquina de envio de pacotes enxuta e as funções de edição foram movidas para o tcprewrite e um poderoso tcpreplay-edit que combina os dois.

Como o tcpreplay-edit inclui todas as funcionalidades do tcpreplay e do tcprewrite, consulte as páginas wiki para saber como usar o tcpreplay-edit.

Responder2

BitTwist(http://bittwist.sourceforge.net) deve ser capaz de fazer o que quiser.

Com o Bit-Twist, agora você pode regenerar o tráfego capturado em uma rede ativa! Os pacotes são gerados a partir do arquivo de rastreamento tcpdump (arquivo .pcap). Bit-Twist também vem com um editor de arquivos de rastreamento abrangente para permitir alterar o conteúdo de um arquivo de rastreamento.

A parte do "editor de arquivo de rastreamento" é o que mais lhe interessa aqui.

Acho que você precisa transformar em duas etapas: uma para alterar os endereços IP, outra para alterar os números das portas UDP. Eu acredito que você pode fazer isso em qualquer ordem.

bittwiste -I original.pcap -O changedip.pcap -T ip -s IP1,IP3 -d IP2,IP4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s Port1,Port3 -d Port2,Port4

onde você precisa inserir os endereços IP e números de porta, por exemplo

bittwiste -I original.pcap -O changedip.pcap -T ip -s 192.168.0.1,10.10.0.3 -d 192.168.0.2,10.10.0.4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s 12345,24680 -d 80,8080

Se o seu arquivo de captura original tiver apenas os IPs e números de porta de suas máquinas originais, você pode simplificar isso não mencionando os IPs e números de porta antigos nos comandos de edição, por exemplo

bittwiste -I original.pcap -O changedip.pcap -T ip -s 10.10.0.3 -d 10.10.0.4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s 24680 -d 8080

para gerar pacotes de 10.10.0.3:24680 a 10.10.0.4:8080.

A partir de uma máquina na sua rede N2, você poderá reproduzir o changedipandport.pcaparquivo usandoLeitor de pacotes Colasoft(http://www.colasoft.com/packet_player) ou a linha de comandoBitTwistjogador, por exemplo

bittwist -i 1 changedipandport.pcap

onde o "1" aqui é o dispositivo 1. Use bittwist -dpara listar os dispositivos.

Existem outras opções interessantes com o reprodutor BitTwist que você não pode fazer com o Colasoft Packet Player, principalmente alterando a velocidade dos pacotes enviados por um multiplicador (por exemplo, 5 vezes a velocidade original ou 0,1 vezes a velocidade original).

Eu testei com sucesso este método usandoWireshark(http://www.wireshark.org) para capturar dados OSC (pacotes UDP) enviados do TouchOSC em um dispositivo i para meu laptop (via WiFi) na porta 8000, usandobittwist(o editor) para alterar o endereço IP de destino para o endereço do meu adaptador Ethernet com fio e a porta UDP para 8001 e, em seguida, reproduzir usandobittwist(o jogador) para umDados Puros(http://puredata.info) patch escutando na porta 8001.

informação relacionada