通过 bash 发送 udp 广播

通过 bash 发送 udp 广播

我尝试通过 bash 发送 2 (FF 01) 字节的 udp 广播,但在我的网络嗅探器中我注意到它是 3 个字节。FF 01 0A断线从何而来,如何防止?

echo -e '\xFF\x01' | socat - udp-datagram:255.255.255.255:1500,bind=:6666,broadcast,reuseaddr

答案1

尝试添加-n到您的echo或使用printf

$ echo -e '\xFF\x01' | xxd -p
ff010a
$ echo -en '\xFF\x01' | xxd -p
ff01
$ printf '\xFF\x01' | xxd -p
ff01

我想你已经意识到了,0A是换行符。也可以看看:https://www.asciitable.com/

相关内容