如何使用Netcat获得udp响应


9

我正在尝试做类似的事情:

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

tcpdump执行此行后,我可以看到响应来自服务器(带有)。

但是,我的response.txt保持为空。

有办法吗?


你有防火墙吗?通过tcpdump查看数据包并不意味着它将被接受。
Zoredache'4

Answers:


5

Netcat通过指定-u命令行选项来启动“交谈” UDP(默认为TCP)。这是一个使用UDP连接到RFC 867时间服务器的示例。请注意,首先指定另一个主机的IP地址或DNS名称,然后再指定端口号-就像大多数telnet程序一样。建立连接后,您可能需要按Enter键才能使时间服务器向您发送当前时间。(也许这是你的问题)

nc -u igor.alcpress.com 13

2005年9月15日星期四14:41:57

由于UDP不是面向连接的协议,因此在您按Ctrl-C终止程序之前,连接将保持“打开”状态。

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

如果您不重定向输出,它会回复吗?
尝试:echo "request" | nc -u 1.1.1.1 9999 | tee response.txt


您好,感谢您的回复。该命令按您编写它的方式对在我的机器上执行后立即退出的方式进行排序。但是问题为我解决了。我不知道我可以只运行nc -u 1.1.1.1 9999,并在nc内部运行时发送/接收数据。再次非常感谢
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.