61eb3e2a3b
Add a wrapper that intercepts WriteTo on the client-facing SOCKS5 UDP relay and resolves domain addresses to IPs before the SOCKS5 header is encoded. Controlled via the (or ) handler metadata flag. When enabled, SOCKS5 UDP response datagrams always carry ATYP=IPv4 or ATYP=IPv6 — never ATYP=Domain (0x03) — making them compatible with clients like tun2proxy and Surge that cannot parse domain-typed addresses in UDP. The wrapper resolves domains through the router's infrastructure: host mapper → resolver → system DNS fallback. Unresolvable domains cause the datagram to be silently dropped rather than forwarded in a format the client rejects. Fixes go-gost/gost#434