Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Convenzioni

Configurazione

Esempio di rete

Studio del caso 1: Policy Routing con il comando set ip default next-hop con Dynamic Routing Protocol

Verifica del case study 1

Studio del caso 2: Policy Routing con il comando set ip next-hop con Dynamic Routing Protocol

Verifica del case study 2

Studio del caso 3: Policy Routing usando l'hop successivo predefinito set ip con un percorso predefinito

Verifica del case study 3

Risoluzione dei problemi

Informazioni correlate

Introduzione

In questo documento viene spiegato come configurare il routing basato su policy, o PBR (Policy-Based Routing), con i comandi set ip default next-hop e set ip next-hop.

Il comando set ip default next-hop verifica l'esistenza dell'indirizzo IP di destinazione nella tabella di routing e...

- se l'indirizzo IP di destinazione esiste, il comando non instrada il pacchetto in base ai criteri, ma inoltra il pacchetto in base alla tabella di routing.

- se l'indirizzo IP di destinazione non esiste, il criterio di comando instrada il pacchetto inviandolo all'hop successivo specificato.

Il comando set ip next-hop verifica l'esistenza dell'hop successivo specificato e...

- se nella tabella di routing esiste l'hop successivo, il criterio di comando instrada il pacchetto verso l'hop successivo.

- se l'hop successivo non esiste nella tabella di routing, il comando utilizza la tabella di routing normale per inoltrare il pacchetto.

Prerequisiti

Requisiti

Nessun requisito specifico previsto per questo documento.

Componenti usati

Il documento può essere consultato per tutte le versioni software o hardware; tuttavia, il software utilizzato deve supportare il routing basato su policy. Utilizzare Feature Navigator per determinare l'hardware e il software supportato per questa configurazione.

Convenzioni

Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.

Configurazione

In questa sezione vengono presentate le informazioni necessarie per configurare le funzionalità descritte più avanti nel documento.

Nota: per ulteriori informazioni sui comandi menzionati in questo documento, usare lo strumento di ricerca dei comandi (solo utenti registrati).

Esempio di rete

Nel documento viene usata questa impostazione di rete:

Studio del caso 1: Policy Routing con il comando set ip default next-hop con Dynamic Routing Protocol

Questa sezione utilizza le seguenti configurazioni:

R1

R1# show running-config

Building configuration...

.

!

interface Ethernet0/0

ip address 100.100.100.1 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.1 255.255.255.0

!

interface Serial2/0

ip address 20.20.20.1 255.255.255.0

!

router ospf 1

!--- OSPF is not configured on Serial1/0.

log-adjacency-changes

network 20.20.20.0 0.0.0.255 area 0

network 100.100.100.0 0.0.0.255 area 0

!

ip classless

no ip http server

!

access-list 100 permit ip host 100.100.100.3 host 200.200.200.4

!

route-map blah permit 10

match ip address 100

set ip default next-hop 10.10.10.2

.

.

!

end

R2

R2# show running-config

Building configuration...

.

!

!

interface Ethernet0/0

ip address 200.200.200.2 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.2 255.255.255.0

fair-queue

!

interface Serial2/0

ip address 20.20.20.2 255.255.255.0

!

router ospf 1

!--- OSPF is not configured on Serial1/0.

log-adjacency-changes

network 20.20.20.0 0.0.0.255 area 0

network 200.200.200.0 0.0.0.255 area 0

!

ip classless

no ip http server

!

access-list 100 permit ip host 200.200.200.4 host 100.100.100.3

!

route-map blah permit 10

match ip address 100

set ip default next-hop 10.10.10.1

!

end

Verifica del case study 1

Quando la route di destinazione esiste nella tabella di routing, viene utilizzato l'inoltro normale. Non applicare criteri per l'instradamento del pacchetto.

R1# show ip route 200.200.200.4

Routing entry for 200.200.200.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Last update from 20.20.20.2 on Serial2/0, 00:11:48 ago

Routing Descriptor Blocks:

* 20.20.20.2, from 30.30.30.3, 00:11:48 ago, via Serial2/0

Route metric is 74, traffic share count is 1

R1# debug ip policy

Policy routing debugging is on

*Dec 4 12:50:57.363: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:50:57.363: IP: route map blah, item 10, permit

*Dec 4 12:50:57.363: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 4 12:50:57.431: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:50:57.431: IP: route map blah, item 10, permit

*Dec 4 12:50:57.431: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 4 12:50:57.491: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:50:57.491: IP: route map blah, item 10, permit

*Dec 4 12:50:57.491: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

R2# show ip route 100.100.100.3

Routing entry for 100.100.100.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Last update from 20.20.20.1 on Serial2/0, 00:11:42 ago

Routing Descriptor Blocks:

* 20.20.20.1, from 100.100.100.1, 00:11:42 ago, via Serial2/0

Route metric is 74, traffic share count is 1

R2# debug ip policy

Policy routing debugging is on

*Dec 4 12:50:57.779: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec 4 12:50:57.779: IP: route map blah, item 10, permit

*Dec 4 12:50:57.779: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 4 12:50:57.839: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec 4 12:50:57.839: IP: route map blah, item 10, permit

*Dec 4 12:50:57.839: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 4 12:50:57.911: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec 4 12:50:57.911: IP: route map blah, item 10, permit

*Dec 4 12:50:57.911: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial2/0), len 100, policy rejected -- normal forwarding

Quando Serial 2/0 diventa inattivo e l'indirizzo di destinazione scompare dalla tabella di routing, il pacchetto viene instradato secondo le policy.

R1# show ip route 200.200.200.0

% Network not in table

R1#

*Dec 5 13:26:27.567: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:26:27.567: IP: route map blah, item 10, permit

*Dec 5 13:26:27.567: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:26:27.567: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:26:27.655: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:26:27.655: IP: route map blah, item 10, permit

*Dec 5 13:26:27.655: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:26:27.655: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:26:27.727: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:26:27.727: IP: route map blah, item 10, permit

*Dec 5 13:26:27.727: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:26:27.727: IP: Ethernet0/0 to Serial1/0 10.10.10.2

Studio del caso 2: Policy Routing con il comando set ip next-hop con Dynamic Routing Protocol

Questa sezione utilizza le seguenti configurazioni:

R1

R1# show running-config

Building configuration...

.

!

interface Ethernet0/0

ip address 100.100.100.1 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.1 255.255.255.0

!

interface Serial2/0

ip address 20.20.20.1 255.255.255.0

!

router ospf 1

!--- OSPF is not configured on Serial1/0.

log-adjacency-changes

network 20.20.20.0 0.0.0.255 area 0

network 100.100.100.0 0.0.0.255 area 0

!

ip classless

no ip http server

!

access-list 100 permit ip host 100.100.100.3 host 200.200.200.4

!

route-map blah permit 10

match ip address 100

set ip next-hop 10.10.10.2

.

.

!

end

R2

R2# show running-config

Building configuration...

.

!

!

interface Ethernet0/0

ip address 200.200.200.2 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.2 255.255.255.0

fair-queue

!

interface Serial2/0

ip address 20.20.20.2 255.255.255.0

!

router ospf 1

!--- OSPF is not configured on Serial1/0.

log-adjacency-changes

network 20.20.20.0 0.0.0.255 area 0

network 200.200.200.0 0.0.0.255 area 0

!

ip classless

no ip http server

!

!

!

access-list 100 permit ip host 200.200.200.4 host 100.100.100.3

!

route-map blah permit 10

match ip address 100

set ip next-hop 10.10.10.1

!

end

Verifica del case study 2

Verificare l'esistenza dell'hop successivo, 10.10.10.2, nella tabella di routing. Se la route di destinazione esiste nella tabella di routing, il pacchetto viene instradato in base ai criteri se l'hop successivo è raggiungibile.

R1# show ip route 200.200.200.4

Routing entry for 200.200.200.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Last update from 20.20.20.2 on Serial2/0, 00:11:48 ago

Routing Descriptor Blocks:

* 20.20.20.2, from 30.30.30.3, 00:11:48 ago, via Serial2/0

Route metric is 74, traffic share count is 1

R1# debug ip policy

Policy routing debugging is on

*Dec 4 12:53:38.271: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:53:38.271: IP: route map blah, item 10, permit

*Dec 4 12:53:38.271: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0), len 100, policy routed

*Dec 4 12:53:38.271: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 4 12:53:38.355: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:53:38.355: IP: route map blah, item 10, permit

*Dec 4 12:53:38.355: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0), len 100, policy routed

*Dec 4 12:53:38.355: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 4 12:53:38.483: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 4 12:53:38.483: IP: route map blah, item 10, permit

R2# sh ip route 100.100.100.3

Routing entry for 100.100.100.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Last update from 20.20.20.1 on Serial2/0, 00:11:42 ago

Routing Descriptor Blocks:

* 20.20.20.1, from 100.100.100.1, 00:11:42 ago, via Serial2/0

Route metric is 74, traffic share count is 1

R2# debug ip policy

Policy routing debugging is on

*Dec  4 12:53:38.691: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:53:38.691: IP: route map blah, item 10, permit

*Dec  4 12:53:38.691: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial1/0), len 100, policy routed

*Dec  4 12:53:38.691: IP: Ethernet0/0 to Serial1/0 10.10.10.1

*Dec  4 12:53:38.799: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:53:38.799: IP: route map blah, item 10, permit

*Dec  4 12:53:38.799: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial1/0), len 100, policy routed

*Dec  4 12:53:38.799: IP: Ethernet0/0 to Serial1/0 10.10.10.1

*Dec  4 12:53:38.899: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:53:38.899: IP: route map blah, item 10, permit

Quando l'indirizzo IP di destinazione scompare dal routing, il pacchetto viene instradato.

*Dec 5 13:33:23.607: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:33:23.607: IP: route map blah, item 10, permit

*Dec 5 13:33:23.607: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:33:23.607: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:33:23.707: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:33:23.707: IP: route map blah, item 10, permit

*Dec 5 13:33:23.707: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:33:23.707: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:33:23.847: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:33:23.847: IP: route map blah, item 10, permit

Quando l'interfaccia Serial 1/0 si interrompe, viene perso l'hop successivo, ossia 10.10.10.1, dalla tabella di routing e il pacchetto segue la tabella di routing normale.

*Dec 5 13:40:38.887: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:40:38.887: IP: route map blah, item 10, permit

*Dec 5 13:40:38.887: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 5 13:40:39.047: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:40:39.047: IP: route map blah, item 10, permit

*Dec 5 13:40:39.047: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

*Dec 5 13:40:39.115: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:40:39.115: IP: route map blah, item 10, permit

*Dec 5 13:40:39.115: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0), len 100, policy rejected -- normal forwarding

Studio del caso 3: Policy Routing usando l'hop successivo predefinito set ip con un percorso predefinito

Questa sezione utilizza le seguenti configurazioni:

R1

R1

R1# show running-config

Building configuration...

.

!

interface Ethernet0/0

ip address 100.100.100.1 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.1 255.255.255.0

!

interface Serial2/0

ip address 20.20.20.1 255.255.255.0

!

ip route 0.0.0.0 0.0.0.0 20.20.20.2

!

ip classless

no ip http server

!

access-list 100 permit ip host 100.100.100.3 host 200.200.200.4

!

route-map blah permit 10

match ip address 100

set ip default next-hop 10.10.10.2

.

.

!

end

R2

R2# show running-config

Building configuration...

.

!

!

interface Ethernet0/0

ip address 200.200.200.2 255.255.255.0

ip policy route-map blah

!

interface Serial1/0

ip address 10.10.10.2 255.255.255.0

fair-queue

!

interface Serial2/0

ip address 20.20.20.2 255.255.255.0

!

ip route 0.0.0.0 0.0.0.0 20.20.20.1

!

ip classless

no ip http server

!

!

!

access-list 100 permit ip host 200.200.200.4 host 100.100.100.3

!

route-map blah permit 10

match ip address 100

set ip default next-hop 10.10.10.1

!

end

Verifica del case study 3

Quando l'unico percorso verso la destinazione è quello predefinito, ossia non esiste un percorso specifico per quella destinazione nella tabella di routing, il pacchetto viene instradato secondo la policy.

R1# show ip route 200.200.200.4

% Network not in table

R1# show ip route 0.0.0.0

Routing entry for 0.0.0.0/0, supernet

Known via "static", distance 1, metric 0, candidate default path

Routing Descriptor Blocks:

* 20.20.20.2

Route metric is 0, traffic share count is 1

R1#

*Dec  4 12:58:55.191: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec  4 12:58:55.191: IP: route map blah, item 10, permit

*Dec  4 12:58:55.191: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.191: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec  4 12:58:55.291: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec  4 12:58:55.291: IP: route map blah, item 10, permit

*Dec  4 12:58:55.291: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.291: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec  4 12:58:55.391: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec  4 12:58:55.391: IP: route map blah, item 10, permit

*Dec  4 12:58:55.391: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.391: IP: Ethernet0/0 to Serial1/0 10.10.10.2

R2# show ip route 100.100.100.3

% Network not in table

R2# show ip route 0.0.0.0

Routing entry for 0.0.0.0/0, supernet

Known via "static", distance 1, metric 0, candidate default path

Routing Descriptor Blocks:

* 20.20.20.1

Route metric is 0, traffic share count is 1

R2#

*Dec  4 12:58:20.819: %SYS-5-CONFIG_I: Configured from console by console

*Dec  4 12:58:55.611: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:58:55.611: IP: route map blah, item 10, permit

*Dec  4 12:58:55.611: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.611: IP: Ethernet0/0 to Serial1/0 10.10.10.1

*Dec  4 12:58:55.739: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:58:55.739: IP: route map blah, item 10, permit

*Dec  4 12:58:55.739: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.739: IP: Ethernet0/0 to Serial1/0 10.10.10.1

*Dec  4 12:58:55.799: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3, len 100, policy match

*Dec  4 12:58:55.799: IP: route map blah, item 10, permit

*Dec  4 12:58:55.799: IP: s=200.200.200.4 (Ethernet0/0), d=100.100.100.3 (Serial1/0), len 100, policy routed

*Dec  4 12:58:55.799: IP: Ethernet0/0 to Serial1/0 10.10.10.1

Quando il percorso predefinito non esiste perché il numero di serie 2/0 è inattivo, il pacchetto viene instradato secondo i criteri.

R1# show ip route 0.0.0.0

% Network not in table

R1#

*Dec 5 13:02:31.283: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:02:31.283: IP: route map blah, item 10, permit

*Dec 5 13:02:31.283: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:02:31.283: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:02:31.375: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:02:31.375: IP: route map blah, item 10, permit

*Dec 5 13:02:31.375: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:02:31.375: IP: Ethernet0/0 to Serial1/0 10.10.10.2

*Dec 5 13:02:31.435: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 13:02:31.435: IP: route map blah, item 10, permit

*Dec 5 13:02:31.435: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial1/0),len 100, policy routed

*Dec 5 13:02:31.435: IP: Ethernet0/0 to Serial1/0 10.10.10.2

Se il comando Serial2/0 è attivo e il comando Serial 1/0 è inattivo, l'hop successivo viene perso e il pacchetto segue la policy di inoltro normale (tabella di routing) - rifiutata.

R1# debug ip policy

Policy routing debugging is on

R1#

*Dec 5 12:46:49.543: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 12:46:49.543: IP: route map blah, item 10, permit

*Dec 5 12:46:49.543: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0),len 100, policy rejected -- normal forwarding

*Dec 5 12:46:49.623: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 12:46:49.623: IP: route map blah, item 10, permit

*Dec 5 12:46:49.623: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0),len 100, policy rejected -- normal forwarding

*Dec 5 12:46:49.691: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4, len 100, policy match

*Dec 5 12:46:49.691: IP: route map blah, item 10, permit

*Dec 5 12:46:49.691: IP: s=100.100.100.3 (Ethernet0/0), d=200.200.200.4 (Serial2/0),len 100, policy rejected -- normal forwarding

Risoluzione dei problemi

Al momento non sono disponibili informazioni specifiche per la risoluzione dei problemi di questa configurazione.

Informazioni correlate

- Supporto della tecnologia dei protocolli di routing IP

- Documentazione e supporto tecnico – Cisco Systems