วิธีรับการตอบกลับ udp กับ netcat


9

ฉันพยายามทำสิ่งที่ชอบ:

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

ฉันสามารถเห็นการตอบสนองที่มาจากเซิร์ฟเวอร์ (พร้อมtcpdump) หลังจากรันบรรทัดนี้

อย่างไรก็ตาม.txtของฉันยังว่างอยู่

มีวิธีรับไหม


คุณมีไฟร์วอลล์หรือไม่ การดูแพ็กเก็ตผ่าน tcpdump ไม่ได้หมายความว่าจะได้รับการยอมรับ
Zoredache

คำตอบ:


5

Netcat เริ่มต้น "พูดคุย" UDP (ค่าเริ่มต้นคือ TCP) โดยการระบุตัวเลือกบรรทัดคำสั่ง -u นี่คือตัวอย่างของการเชื่อมต่อกับเซิร์ฟเวอร์เวลา RFC 867 โดยใช้ UDP โปรดทราบว่ามีการระบุที่อยู่ IP หรือชื่อ DNS ของโฮสต์อื่นก่อนและหมายเลขพอร์ตจะถูกระบุเป็นลำดับที่สอง - เช่นเดียวกับโปรแกรม telnet ส่วนใหญ่ หลังจากทำการเชื่อมต่อเสร็จแล้วคุณอาจต้องกดปุ่ม Enter เพื่อรับเซิร์ฟเวอร์เวลาเพื่อส่งเวลาปัจจุบันให้คุณ (นี่อาจเป็นปัญหาของคุณ)

nc -u igor.alcpress.com 13

พฤ 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 ขณะที่กำลังทำงานอยู่ ขอบคุณมากอีกครั้ง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.