Virtual Routing and Forwarding (VRF) é uma tecnologia amplamente utilizada em redes IP para permitir a coexistência de múltiplas tabelas de roteamento em um único router. Esta funcionalidade é particularmente útil em cenários onde diferentes redes ou clientes necessitam de separação lógica e segurança, sem a necessidade de hardware dedicado para cada um.
Quando o VRF é implementado, o router ou switch cria várias tabelas de roteamento, uma para cada instância VRF. Estas tabelas de roteamento são independentes umas das outras, de forma que o tráfego entre diferentes VRFs é segregado. Este conceito é semelhante ao funcionamento de uma VPN (Rede Privada Virtual).
O VRF é frequentemente usado em conjunto com o Multiprotocol Label Switching (MPLS) para fornecer VPNs L3 (Layer 3 VPNs) a clientes empresariais. Nesses casos, os routers nas extremidades da rede (CE - Customer Edge) utilizam VRF para isolar o tráfego de diferentes clientes, enquanto os routers de backbone (P - Provider e PE - Provider Edge) utilizam MPLS para encaminhar os pacotes corretamente entre os locais dos clientes.
A configuração de VRF em routers e switches Cisco é relativamente simples. Vamos usar a topologia abaixo como referência para implementar VRF.

O router R30 é um router de provedor (PE) e tem duas ligações a dois clientes diferentes. Sem VRF, todos os pacotes utilizam a mesma tabela de roteamento global. Isto significa que o tráfego de diferentes clientes ou redes não será isolado, podendo resultar em colisões ou encaminhamento incorreto. Em redes com vários clientes ou em redes de VPNs L3, é comum que diferentes clientes utilizem o mesmo espaço de endereçamento IP (por exemplo, endereços privados como 192.168.x.x), esta situação pode causar conflitos de endereçamento.

Vamos criar uma VRF dedicada aos clientes.
Precisamos criar a VRF, atribuir a VRF à interface e reconfigurar o endereçamento IP

Quando consultarmos novamente a tabela de routing, veremos algo de diferente:

Só aparecem a redes do provedor. As interfaces dos clientes desapareceram da tabela de roteamento default ou global. Agora para vermos as redes do clientes, precisamos consultar a tabela de roteamento da VRF dos clientes:

Caso queiramos usar o comando ping para validar conectividade com os clientes, também precisamos adicionar o comando VRF, para especificarmos a VRF CLIENTES.

Com vês, a comunicação continua a funcionar normalmente da perspectiva do router do provedor. Notaste que ao usarmos VRF não foi necessário fazer alteração alguma do lado do cliente? A criação de VRF, só precisa ser feita do lado do provedor. Para o cliente, esta alteração é totalmente transparente.