When you want to transfer some UDP protocol from a remote server not directly accessible from your local host you can use a combination of SSH and socat to make this communication possible.
The application case is, as an exemple, a SNMP communication with a server in a DMZ to get metrics in a local area dashboard. Like in this exemple.
You have an intermediate host where SSH is accessible you can use as a gateway.
1- on the local host (on the left side), create a SSH tunnel with a TCP port forwarding (here 10000).
ssh -L 10000:localhost:10000 **gateway_host_ip**
2- on the gateway host, route the traffic received from the port we have previously associated to the UDP target host:port
socat tcp4-listen:10000,reuseaddr,fork UDP:**target_host_ip**:**udp_port**
3 – on the local host, route the traffic received from the given UDP port to the previously associated TCP port for tunnelling
socat -T15 udp4-recvfrom:**udp_port**,reuseaddr,fork tcp:localhost:10000
That’s it.