Se você já decidiu usar o NAT para suas redes, isso não é realmente uma questão de virtualização; É a mesma situação que a obtenção de dois computadores físicos por trás dos roteadores NAT para se comunicar pela Internet. Você só precisa encaminhar as portas que você quer (o que você pode fazer nas configurações de rede do VirtualBox), em seguida, conecte-se ao IP de um host da VM do outro host. Como disse @TJJ, sua outra opção é usar a rede em ponte em vez de NAT, o que permitiria que os computadores se conectassem sem nenhuma configuração extra.