SOCKS5H is not a different version of the SOCKS5 protocol. It is a URL scheme or client setting used by tools such as cURL to tell the proxy to resolve the destination hostname.
- socks5:// in cURL: the client resolves the destination hostname locally and sends an IP address to the proxy.
- socks5h:// in cURL: the client sends the hostname to the proxy, and the proxy resolves it.
Proxy-side DNS can be useful with IPv6-only proxies and can avoid local DNS resolution problems. Other applications may use labels such as remote DNS or proxy DNS instead of SOCKS5H.