Вы должны иметь возможность установить что-то вроде openvpn и получить доступ через vpn или lan. VNC свяжется со всеми доступными сетевыми интерфейсами.
Что мне нравится делать, так это иметь сервер в облаке, который является моим сервером vpn. Затем на компьютерах, которыми я управляю, и на моих собственных установках клиента openvpn. Тогда я могу ssh или vnc, нахожусь ли я на той же локальной сети или в другом месте. Тогда мне также никогда не придется сталкиваться с проблемами брандмауэра на клиентских сайтах. У меня установлено несколько устройств для клиентской сети, и это дает мне возможность удаленно заглядывать в сеть при необходимости.