Возможно "завернуть" весь трафик определенного приложения в socks прокси. Это делает утилита tsocks (есть в homebrew) или proxycap они работают по одному принципу подменяя сетевые вызовы приложения. Это не всегда работает, но в целом работает.
Дальше возможны варианты как использовать это:
1) использовать shadowsock как локальный socks прокси и vpn туннель до сервера
2) настроить обычный локальный socks proxy, чтобы он использовал уже существующий VPN канал.