O Socat é um proxy, o que significa que ele faz conexões com uma porta / serviço / etc em nome de outra coisa. Isso significa que, da perspectiva do seu serviço, a conexão se origina com socat. Em geral, não há uma maneira fácil de contornar esse comportamento.
O Linux tem suporte a "proxy transparente", mas isso requer suporte explícito em seu aplicativo proxy e uma pesquisa rápida não revelou nada que funcionasse com o tráfego UDP.
O uso do iptables para redirecionar o tráfego forneceria uma solução mais limpa.