Uma maneira de fazer isso, usada por softwares como o colinux / andlinux e muito provavelmente o vmware e outros softwares de virtualização é usar toque / tun drivers para criar uma interface virtual e usar isso - muito comumente os drivers que fazem parte do openvpn são usados no windows.
Você naturalmente precisará ajustá-lo às suas necessidades, mas aqui está um exemplo de um programa em C # que usa o toque / interface tun do openvpn para simular uma rede remota