Làm thế nào để có được phản hồi udp với netcat


9

Tôi đang cố gắng làm một cái gì đó như:

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

Tôi có thể thấy phản hồi đó đến từ máy chủ (với tcpdump) sau khi thực hiện dòng này.

Tuy nhiên, answer.txt của tôi vẫn trống.

Có cách nào để có được nó?


Bạn có tường lửa không? Xem gói thông qua tcpdump không có nghĩa là nó sẽ được chấp nhận.
Zoredache

Câu trả lời:


5

Netcat bắt đầu "nói" UDP (mặc định là TCP) bằng cách chỉ định tùy chọn dòng lệnh -u. Đây là một ví dụ về kết nối với máy chủ thời gian RFC 867 bằng UDP. Lưu ý địa chỉ IP hoặc tên DNS của máy chủ khác được chỉ định trước và số cổng được chỉ định thứ hai - giống như hầu hết các chương trình telnet. Sau khi kết nối được thực hiện, bạn có thể cần nhấn phím Enter để nhận máy chủ thời gian gửi cho bạn thời gian hiện tại. (có lẽ đây là vấn đề của bạn)

nc -u igor.alcpress.com 13

Ngày 15 tháng 9 14:41:57 2005

Vì UDP không phải là giao thức hướng kết nối, kết nối sẽ vẫn "mở" cho đến khi bạn chấm dứt chương trình bằng cách nhấn Ctrl-C.

================================================== ====================

Nó có trả lời nếu bạn không chuyển hướng đầu ra?
thử :echo "request" | nc -u 1.1.1.1 9999 | tee response.txt


Xin chào và cảm ơn bạn đã trả lời. Trình tự lệnh theo cách bạn đã viết nó thoát ngay sau khi thực thi 'trên máy của tôi. Tuy nhiên, vấn đề được giải quyết cho tôi. Tôi không biết tôi chỉ có thể chạy nc -u 1.1.1.1 9999 và gửi / nhận dữ liệu bên trong nc khi nó đang chạy. Cảm ơn rất nhiều lần nữa
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.