在 Mac OS 上使用 netcat 进行 UDP

在 Mac OS 上使用 netcat 进行 UDP

我尝试通过端口 8889 打开到 192.168.10.1 的 UDP 连接从我的 Mac 连接到 Tello 无人机,以发送命令并接收来自设备的确认。

使用“Packet Sender”时,它可以工作,但该工具有点笨拙,所以我想只使用 netcat,使用nc -4u 192.168.10.1 8889,但这不起作用。还尝试使用 iperf 和 gnu netcat,无济于事 - iPerf 返回“连接被拒绝”。ping 到 192.168.10.1 确实有效。

由于 Packet Sender 确实可以立即工作,因此我认为这里没有防火墙或一般连接问题,但我不确定是否需要告诉 nc 除了 IP 和端口之外的其他信息?mac 通过以太网连接到 LAN,通过 WLAN 连接到无人机,但这似乎对 PacketSender 来说不是问题。

答案1

看来 Tello 需要 CRLF 作为行尾,在苹果版 netcat 中,它被激活为-c

/usr/bin/nc -vv -u -c -p 8890 192.168.10.1 8889

在其他版本的 netcat 中,语法会发生变化,通常例如-C 在 kali 中:

netcat -vv -u -C -p 8890 192.168.10.1 8889

请注意,在使用 homebrew 安装的 netcat 版本中没有-C选项

相关内容