Roteamento baseado em políticas pode ser usado para alterar o próximo endereço IP de lúpulo para tráfego que corresponda a certos critérios. Isto pode ser útil para anular a sua tabela de roteamento para certos tipos de tráfego. Eu mostrarei como configurar o roteamento baseado em políticas.
Configuração
aqui a topologia que usaremos:
Dê uma olhada na figura da topologia acima. OSPF é configurado em todos os roteadores. Como estamos usando interfaces Gigabit em todos os lugares, o tráfego de R1 destinado a 4.4.4.4 seria normalmente balanceado entre R2 e R3. Entretanto, eu alterei o custo na interface Gigabit Ethernet 0/3 do R1 para que todo o tráfego vá de R1 > R2 > R4.
Vamos verificar isto:
Acima você pode ver o aumento do custo. Vamos tentar um traceroute rápido de H1:
Agora vamos dizer que eu quero usar o link entre R1 e R3 para chegar a 4.4.4.4. Eu poderia influenciar a métrica para OSPF, mas isto aplica-se a todo o tráfego. E se eu quisesse usar este link apenas para determinado tráfego?
Podíamos usar o link entre R1/R2 para a maioria do nosso tráfego e usar o link entre R1/R3 apenas para determinado tráfego. Isto pode ser muito útil. Por exemplo, imagine que o link entre R1/R3 é um link dedicado que oferece QoS para tráfego VoIP.
Isso é algo que podemos conseguir com PBR (Policy Based Routing) Deixe-me mostrar-lhe como!
Direito agora, todo o tráfego é enviado para R2:
R1#show ip route | include 4.4.4.4O 4.4.4.4 via 192.168.12.2, 00:16:48, GigabitEthernet0/2
Agora digamos que queremos que todo o tráfego ICMP de H1 destinado a 4.4.4.4 atravesse o link entre R1/R3. Aqui está como fazer isso:
R1(config)#ip access-list extended ICMP_H1R1(config-ext-nacl)#permit icmp host 192.168.1.100 host 4.4.4.4
Primeiro, eu crio uma lista de acesso que combina com o meu tráfego. Agora temos de criar um route-map:
Quando o tráfego corresponder à lista de acesso, vamos mudar o próximo salto para 192.168.13.3 (R3).
Próximo mas não menos importante, vamos activá-lo:
R1(config)#interface GigabitEthernet 0/1R1(config-if)#ip policy route-map PBR_H1
Vejamos se funciona, para o ver em acção vou activar um debug em R1:
R1#debug ip policy Policy routing debugging is on
Agora vamos enviar um ping de H1:
O ping está a funcionar, vamos ver o que R1 pensa dele:
Acima pode ver que foi encaminhado para 192.168.13.3. Também podemos verificar isto olhando para o route-map:
Vamos tentar algum tráfego que não corresponda à nossa lista de acesso. Telnet por exemplo:
H1#telnet 4.4.4.4Trying 4.4.4.4 ... Open
H1 é capaz de se conectar mas não é encaminhado pela política:
R1#IP: s=192.168.1.100 (GigabitEthernet0/1), d=4.4.4.4, len 40, FIB policy rejected(no match) - normal forwarding
Como você pode ver acima, este tráfego telnet é encaminhado usando o caminho normal.
Há mais uma coisa que eu gostaria de mostrar a você. Com o roteamento baseado em políticas, há uma diferença entre o tráfego que está passando pelo roteador e o tráfego que é originado do roteador.
O exemplo acima é para o tráfego que passou pelo nosso roteador. E se nós quisermos fazer política de roteamento de tráfego que é originado a partir do R1? Nós teremos que usar outro comando para ativá-lo. Vamos criar outro route-map:
O route-map acima irá redirecionar todo o tráfego de R1 para 4.4.4.4 em direção a R3. Para ativar isto, precisamos usar outro comando:
R1(config)#ip local policy route-map PBR_R1
Desta vez, precisamos usar o comando de política local ip. Vamos testar isto:
Great, nosso tráfego de R1 é roteado pela política.