我有一个向端口发送 UDP 数据包的程序xyz
,我将用一些 UDP 数据包回复!界面。
我发现我可以发送一个 UDP 数据包
echo <packetContent> | socat - udp:<dstIP>:<dstPort>,sp=<srcPort>
并用
socat - udp-listen:<srcPortFromPreviousLine>
但是我怎样才能把这两者结合起来呢?当我首先在一个窗口中开始监听部分时,该端口已被使用,我无法在另一个窗口中从那里发送任何内容。
就像 grawity 在评论中说的那样,
udp:
是双向的。所以我只能使用一个命令:这将发送数据包并打印从那里返回的所有数据包;如果没有到达,它会在 10 秒后退出 (
-t 10
)。如果支持,请
reuseaddr
与这两个命令一起使用。他们会像来自
man 1 socat
: