Aqui está a configuração:
Duas empresas (A & B) compartilham espaço de escritório e uma LAN. Um segundo ISP é trazido e a empresa A quer sua própria conexão com a Internet (ISP A) e a empresa B deseja sua própria conexão com a Internet (ISP B).
As VLANs são implantadas internamente para separar as redes das duas empresas (empresa A: VLAN 1, empresa B: VLAN 2, VOIP compartilhado: VLAN 3).
Com VLANs separadas, é bastante simples usar servidores DHCP separados (ou escopos separados no mesmo servidor) para atribuir o gateway padrão ao gateway de cada empresa para sua conexão com a Internet. Rotas estáticas podem ser criadas em cada gateway para apontar o tráfego destinado à VLAN da outra empresa ou à VLAN de voz, de modo que todos os nós sejam atingíveis conforme o esperado.
No entanto, acho que isso é uma forma de roteamento assimétrico, certo? (O caminho do nó A1 para o nó B1 não é o mesmo que o caminho de volta do nó B1 para o nó A1).
Posso configurar o roteamento baseado em política para corrigir isso? Nesse caso, posso atribuir o mesmo gateway padrão a todos os dispositivos em todas as VLANs e criar uma política de roteamento em um switch L3 para examinar o endereço de origem e encaminhar o tráfego para o próximo salto apropriado? Nesse caso, quero que a lógica de roteamento seja assim:
- Se o endereço de destino for conhecido, encaminhe o tráfego (tráfego destinado a uma VLAN diferente).
- Se o endereço de destino for desconhecido, encaminhe o tráfego para o gateway do ISP A se o endereço de origem estiver na VLAN A; ou encaminhar o tráfego para o gateway do ISP B, se o endereço de origem for VLAN B.
Estou pensando sobre esse problema da maneira correta? Existe outra maneira de resolver este problema que estou negligenciando?
UPDATE
Eu tentei a solução de Kyle abaixo e tive alguns problemas. Aqui estão os bits relevantes da minha configuração (estou testando isso com um 2821 BTW):
interface GigabitEthernet0/0
ip address 10.0.1.1 255.255.255.0
no ip proxy-arp
duplex auto
speed auto
no mop enabled
!
interface GigabitEthernet0/0.100
description VoIP VLAN stub
encapsulation dot1Q 100
ip address 10.0.100.1 255.255.255.0
no ip proxy-arp
!
interface GigabitEthernet0/0.110
description RT VLAN stub
encapsulation dot1Q 110
ip address 10.0.110.1 255.255.255.0
no ip proxy-arp
ip policy route-map RT-out
!
interface GigabitEthernet0/0.120
description TCI VLAN stub
encapsulation dot1Q 120
ip address 10.0.120.1 255.255.255.0
no ip proxy-arp
ip policy route-map TCI-out
!
interface GigabitEthernet0/1
ip address 192.168.1.20 255.255.255.0
no ip proxy-arp
duplex auto
speed auto
!
ip route 192.168.0.0 255.255.0.0 192.168.1.2
!
ip access-list extended match-RT-out
permit ip 10.0.110.0 0.0.0.255 any
ip access-list extended match-TCI-out
permit ip 10.0.120.0 0.0.0.255 any
!
route-map TCI-out permit 11
match ip address match-TCI-out
set ip next-hop 192.168.12.2
!
route-map RT-out permit 10
match ip address match-RT-out
set ip next-hop 192.168.11.2
!
E a saída de show ip route
:
10.0.0.0/24 is subnetted, 4 subnets
C 10.0.1.0 is directly connected, GigabitEthernet0/0
C 10.0.110.0 is directly connected, GigabitEthernet0/0.110
C 10.0.100.0 is directly connected, GigabitEthernet0/0.100
C 10.0.120.0 is directly connected, GigabitEthernet0/0.120
C 192.168.1.0/24 is directly connected, GigabitEthernet0/1
S 192.168.0.0/16 [1/0] via 192.168.1.2
E aqui está o problema: não parece que meus mapas de rotas estejam funcionando (bem, eu acho que eles estão combinando, mas eles não parecem estar modificando o resultado do próximo salto). Saída de debug ip policy
para um ping para um endereço IP externo:
*May 5 21:26:11.631: IP: s=10.0.120.100 (GigabitEthernet0/0.120), d=209.85.225.100, len 52, FIB policy match
*May 5 21:26:11.631: CEF-IP-POLICY: fib for address 192.168.12.2 is with flag 0
*May 5 21:26:11.631: IP: s=10.0.120.100 (GigabitEthernet0/0.120), d=209.85.225.100, len 52, FIB policy rejected - normal forwarding
*May 5 21:26:11.631: IP: s=10.0.120.100 (GigabitEthernet0/0.120), d=209.85.225.100, len 52, policy match
*May 5 21:26:11.631: IP: route map TCI-out, item 11, permit
*May 5 21:26:11.631: IP: s=10.0.120.100 (GigabitEthernet0/0.120), d=209.85.225.100, len 52, policy rejected -- normal forwarding
Assim, você pode ver nessa saída que parece corresponder ... seguido por um FIB policy rejected - normal forwarding
imediato. Eu recebo de volta um host de destino ICMP inacessível do meu roteador (10.0.120.1) neste caso (quando tentei executar o ping em 209.85.225.100).
Isso está ficando longo, mas espero que isso explique onde estou tendo problemas.