發送 UDP 封包到目的地

發送 UDP 封包到目的地

在我的 Linux 機器上,我正在接收來自另一台機器的 UDP 封包。當我收到 UDP 封包時,我收到訊息

"Listening on UDP port : 8999"

這是由偵聽該特定連接埠的程式碼的以下命令部分觸發的。

GET_PORT((&(paraThread->destHost)), tmpPort);
fprintf(stderr, "Listening on UDP port : %d\n", ntohs(tmpPort));

我需要的是,一旦收到每個 UDP 封包,我需要將一個 400 位元組的回應 UDP 封包傳送到我收到 UDP 封包的 IP 位址。我怎樣才能做到這一點?

答案1

cat當您收到訊息時,您可以向遠端主機發送 400 位元組:

cat 400bytes.txt >/dev/udp/remotehost/8000

正如所解釋的這裡。當然還有許多其他選擇。

若要為該裝置產生 400 個隨機位元組,請使用dd

dd if=/dev/urandom bs=1 count=400 of=/dev/udp/remotehost/8000

相關內容