I haven’t actually used Boringproxy yet, but I guess you could try setting up a reverse proxy on a server in the same network as your VNC host and have that server be a Boringproxy client? So the connection would be external machine —Boringproxy—> server —NPM—> VNC.