Běžně se to dělá tak, že povolíš na síťovce Wake On LAN a pak forwarduješ na routeru port 9/UDP na broadcast ve své síti. Pak můžeš poslat magic paket třeba z http://www.remotewakeup.com/en/index.php
PS: Mně to ale takhle nějak nechtělo fungovat, takže to dělám tak, že se lognu do routeru (WL-500gP s Oleg's firmware) přes SSH a pak pomocí příkazu ether-wake zapnu kompa.
PSS: To VNC potřebuje, aby ses nejprve přihlásil do Windows? Třeba takový TeamViewer ti normálně zobrazí i vzdálenou přihlašovací obrazovku.