Địa chỉ không của UDP ASSOCIATE trong Indy không phải đích của datagram
Tách biệt địa chỉ liên kết phía máy khách, relay SOCKS được trả về và đích được mã hóa trong từng gói UDP.
0.0.0.0:0 trong yêu cầu UDP ASSOCIATE của Indy có thể là cố ý. Yêu cầu đó mô tả điểm cuối UDP dự kiến phía máy khách, và RFC 1928 cho phép số không khi chưa biết. Nó không chọn dịch vụ cuối cùng.
BND.ADDR/BND.PORT trong phản hồi chỉ ra relay mà máy khách gửi các datagram đã đóng gói tới.
TCP control: client → SOCKS5 proxy → UDP association reply
UDP payload: client → returned relay address → target serviceTrong Indy, TIdUDPClient.Connect gọi OpenUDP của proxy trong suốt. TIdSocksInfo cung cấp các trường liên kết bằng không. Sau đó, SendBuffer chuyển dịch vụ mong muốn cho SendToUDP, phương thức này dựng tiêu đề đích SOCKS UDP trước dữ liệu ứng dụng.
Nếu liên kết thành công nhưng lưu lượng thất bại, hãy kiểm tra relay được trả về, đích đã mã hóa và đường phản hồi UDP. NAT/tường lửa có thể cho phép trao đổi TCP nhưng chặn UDP.
Giữ kết nối điều khiển TCP mở; đóng nó sẽ kết thúc liên kết. SOCKS4/4a không có thao tác này, và riêng tên SOCKS5 không bảo đảm máy chủ hỗ trợ UDP.