Điểm:1

'socat' không hiển thị các gói UDP đến, nhưng Wireshark thì có

lá cờ gu
QF0

Liên kết là một hình ảnh của một kết xuất Wireshark của khung Ethernet 60 byte đến có chứa gói UDP. Tải trọng gói là một từ duy nhất 'xin chào' (xin lỗi, tôi không có đủ đại diện để dán hình ảnh trực tiếp).

Vấn đề: Tôi không thể nhận được socat hoặc nc để đọc và hiển thị gói này (điều này không hoàn toàn đúng; xem #1 bên dưới).

Tôi chạy người đọc như:

$ socat UDP:192.168.50.129:5000 -

Tôi đã thử nhiều định dạng địa chỉ liên quan đến UDP khác nhau cũng như định dạng này. Nhà văn được chạy như:

$ socat READLINE UDP:192.168.50.132:5000

Câu hỏi: làm cách nào để hiển thị gói tin đến này, tốt nhất là dưới dạng một từxin chào?

Thật không may, có một số biến chứng:

#1

Nếu tôi chạy trình đọc như # socat GIAO DIỆN:ens4f0 - sau đó tôi làm hiển thị khung hình đến (vì lý do nào đó nó được hiển thị hai lần). Có một số đầu ra nhị phân và sau đó là từ xin chào. Tuy nhiên, tôi không thể làm điều này, vì cuối cùng sẽ có các quy trình khác sử dụng giao diện này, vì vậy tôi cần hiểu điều gì đang xảy ra

#2

Khung đến thực sự có địa chỉ IP dst là 192.168.50.132; tường lửa được thiết lập để chuyển đổi cái này thành 192.168.50.129, là địa chỉ người đọc đang nghe trên:

  # iptables -t nat -A PREROUTING -i ens4f0 -j DNAT --to 192.168.50.129

Đầu ra Wireshark hiển thị gói đến trước khi chuyển đổi này, do đó, hiển thị địa chỉ IP dst dưới dạng 192.168.50.132. Tôi thực sự không biết liệu điều này có hiệu quả hay không - tôi có thể lấy socat để tạo ra một kết xuất hex của những gì nó thực sự nhìn thấy trên ens4f0?

#3

Đây là một trong những khó khăn, nhưng tôi hy vọng rằng nó không liên quan. Đây thực sự là một thử nghiệm lặp lại: một khung hình duy nhất bị tắt ens4f0, được lặp lại bởi phần cứng bên ngoài và được trả về không sửa đổi thành ens4f0. NIC có địa chỉ IP 192.168.50.129. tôi có một ip gần add lệnh định tuyến truy cập đến 192.168.50.132 ra khỏi ens4f0 đến phần cứng bên ngoài; gói được trả về không sửa đổi, đó là lý do tại sao tôi cần iptables lệnh để chuyển đổi địa chỉ IP dst trở lại ens4f0 Địa chỉ.

QF0 avatar
lá cờ gu
QF0
Xin chào @ A.B: đối với XY, vấn đề thực tế về cơ bản là #3: thực hiện kiểm tra loopback bằng một card mạng duy nhất. Vòng lặp đi qua bộ kiểm tra bên ngoài, nhưng có thể được coi là cáp vòng lặp Ethernet đơn giản. Tôi buộc lưu lượng truy cập ra bên ngoài bằng cách xác định địa chỉ IP giả (132) và `ip neigh add`. Tôi biết điều này hiệu quả và lưu lượng truy cập bên ngoài được trả lại cho `ens4f0`. Vấn đề là sau đó để đọc gói tin. Tôi hy vọng có thể làm điều này với NAT, bằng cách thay đổi địa chỉ giả (132) thành địa chỉ IP thực của thẻ (129). Tuy nhiên, tôi không nghĩ NAT đang hoạt động.
A.B avatar
lá cờ cl
A.B
Tôi đã xóa bình luận của mình vì tôi nghĩ cả 3 điểm đều có vấn đề. cách sử dụng socat, sử dụng nat có trạng thái với một nat không trạng thái ở phía trước, sử dụng lưu lượng truy cập được lặp lại với cùng một địa chỉ, tất cả điều này trong ngữ cảnh của nat. mô tả không khớp với lệnh. ví dụ: "tường lửa được đặt để chuyển đổi thành 192.168.50.129" không khớp với "--to 192.168.50.132" . Và với mục tiêu tôi đã hỏi: nó sẽ hữu ích cho ứng dụng nào, không phải nó được thực hiện như thế nào, mà là tại sao nó được thực hiện.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.