Como obter uma resposta do udp com o netcat

9

Estou tentando fazer algo como:

echo "request" | nc -u 1.1.1.1 9999 > response.txt

Eu posso ver que a resposta está vindo do servidor (com tcpdump ) depois de executar esta linha.

No entanto, meu response.txt permanece vazio.

Existe uma maneira de obtê-lo?

    
por scarrydeveloper151012 03.04.2010 / 02:36

1 resposta

5

O Netcat inicia o UDP "falando" (o padrão é o TCP) especificando a opção de linha de comando -u. Aqui está um exemplo de conexão com um servidor de tempo RFC 867 usando o UDP. Observe que o endereço IP ou o nome DNS do outro host é especificado primeiro e o número da porta é especificado em segundo lugar - assim como a maioria dos programas telnet. Depois que a conexão é feita , você provavelmente precisará pressionar a tecla Enter para que o servidor de horário envie a hora atual. (talvez este seja o seu problema)

nc-igor.alcpress.com 13

Qui Set 15 14:41:57 2005

Como o UDP não é um protocolo orientado a conexões, a conexão permanecerá "aberta" até que você termine o programa pressionando Ctrl-C.

=============================================== =======================

Responde se você não redireciona a saída?
tente: echo "request" | nc -u 1.1.1.1 9999 | tee response.txt

    
por 03.04.2010 / 02:44

Tags