SOCKS как раз и придумали, чтобы TCP и UDP проксировать.
Нормально реализованный SOCKS5 - в том числе может проксировать в обе стороны, имея в своём арсенале аналог UPnP редиректора.
Я соглашусь с тобой в том, что работа SOCKS-сервера внешне выглядит как работа классического прокси-сервера, и на первый взгляд он, якобы проксирует и TCP, и UDP. Но это не так. Если бы это было так - модель OSI можно было бы смело отнести на свалку, как несоответствующую модель. Взгляни на RFC1928, там описана работа SOCKS.