Bir Indy UDP ASSOCIATE isteğindeki 0.0.0.0:0 kasıtlı olabilir. Bu istek, istemci tarafında beklenen UDP uç noktasını tanımlar ve RFC 1928 bilinmediğinde sıfırlara izin verir. Son hizmeti seçmez.

Yanıttaki BND.ADDR/BND.PORT, istemcinin kapsüllenmiş datagramları gönderdiği aktarıcıyı belirtir.

TCP control: client → SOCKS5 proxy → UDP association reply
UDP payload: client → returned relay address → target service

Indy'de TIdUDPClient.Connect saydam proxy'nin OpenUDP yöntemini çağırır. TIdSocksInfo sıfır ilişkilendirme alanlarını sağlar. Daha sonra SendBuffer istenen hizmeti SendToUDP yöntemine geçirir; bu yöntem uygulama verisinden önce SOCKS UDP hedef başlığını kurar.

İlişkilendirme başarılı olur ama trafik geçmezse döndürülen aktarıcıyı, kodlanmış hedefi ve UDP yanıt yolunu inceleyin. NAT/güvenlik duvarları TCP alışverişine izin verirken UDP'yi engelleyebilir.

TCP denetim bağlantısını açık tutun; kapatmak ilişkilendirmeyi bitirir. SOCKS4/4a'da bu işlem yoktur ve yalnızca SOCKS5 adı, sunucunun UDP desteklediğini garanti etmez.

İlgili makaleler