Crea criteri di route BGP

Questa guida descrive come creare criteri di route BGP in Cloud Router.

Puoi creare criteri di route BGP per il router Cloud utilizzando uno qualsiasi dei seguenti:

Crea un criterio di route BGP

  1. Aggiungi un criterio di route al router Cloud:

    gcloud beta compute routers add-route-policy ROUTER_NAME \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --policy-type=ROUTE_POLICY_TYPE \
        --region=REGION
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • BGP_ROUTE_POLICY_NAME: un nome per il criterio di route BGP
    • ROUTE_POLICY_TYPE: il tipo di criterio da aggiungere, IMPORT per le route in entrata o EXPORT per le route in uscita.
    • REGION: la regione in cui si trova il Router Cloud

    Ad esempio, il comando seguente aggiunge un criterio di route per le route in entrata al router Cloud:

    gcloud beta compute routers add-route-policy ROUTER_NAME \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --policy-type=IMPORT \
        --region=REGION
    
  2. Aggiungi un termine del criterio di route BGP eseguendo il seguente comando:

    gcloud beta compute routers add-route-policy-term ROUTER_NAME \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --region=REGION \
        --priority=ROUTE_POLICY_PRIORITY \
        --match=ROUTE_POLICY_MATCH_EXPRESSION \
        --actions=ROUTE_POLICY_ACTIONS_EXPRESSION
    

    Sostituisci quanto segue:

    • ROUTE_POLICY_PRIORITY: the priority for this policy, such as1`.
    • ROUTE_POLICY_MATCH_EXPRESSION: un'espressione per trovare una corrispondenza per questo criterio di route
    • ROUTE_POLICY_ACTIONS_EXPRESSION: azioni per questo criterio di routing

    Ad esempio, il seguente comando crea un criterio BGP per impostare il valore dell'attributo BGP MED (Multiple Exit Discriminator) su 12345 per le route BGP che non sono incluse in 192.168.10.0/24 e corrispondono all'insieme di comunità BGP 65000:1 e 65000:2.

    gcloud beta compute routers add-route-policy-term ROUTER_NAME \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --region=REGION \
        --priority=ROUTE_POLICY_PRIORITY \
        --match='destination != "192.168.10.0/24" && communities.matchesEvery(["65000:1", "65000:2"])' \
        --actions='med.set(12345)'
    

    Sostituisci ROUTE_POLICY_PRIORITY con la priorità che hai scelto richiesta per questo criterio, ad esempio 1.

Carica un criterio di route BGP

  1. Crea il criterio di route BGP nel tuo editor di testo preferito. Puoi utilizzare JSON o la formattazione YAML per creare il criterio di route BGP. Nell'esempio seguente viene utilizzato un file YAML:

    name: BGP_ROUTE_POLICY_NAME
    type: ROUTE_POLICY_TYPE 
    terms:
    - priority: ROUTE_POLICY_PRIORITY
      match:
        expression: >
          ROUTE_POLICY_MATCH_EXPRESSION
      actions:
      - expression: ROUTE_POLICY_ACTIONS_EXPRESSION
    

    Sostituisci quanto segue:

    • BGP_ROUTE_POLICY_NAME: un nome per il criterio di route BGP.
    • ROUTE_POLICY_TYPE: il tipo di criterio di route BGP che stai creando. Il tipo può essere uno dei seguenti:

      • ROUTE_POLICY_TYPE_IMPORT: criteri delle route BGP per le route in entrata.
      • ROUTE_POLICY_TYPE_EXPORT: criteri di route BGP per le route in uscita.
    • ROUTE_POLICY_PRIORITY: la priorità per questo criterio, ad esempio 1.

    • ROUTE_POLICY_MATCH_EXPRESSION: un'espressione per trovare una corrispondenza per questo criterio di route

    • ROUTE_POLICY_ACTIONS_EXPRESSION: azioni per questo criterio di route

    Ad esempio, il seguente comando del file YAML crea un criterio BGP per le route in entrata che imposta il valore dell'attributo MED (Multiple Exit Discriminator) BGP su 12345 per le route BGP non incluse in 192.168.10.0/24 e che corrispondono all'insieme di community BGP 65000:1 e 65000:2.

    # Set the MED value for BGP routes that aren't 192.168.10.0/24 and
    # communities that include (65000:1, 65000:2)
    name: BGP_ROUTE_POLICY_NAME
    type: ROUTE_POLICY_TYPE_IMPORT
    terms:
    - priority: 1
      match:
        expression: >
          destination != '192.168.10.0/24' && communities.matchesEvery(['65000:1', '65000:2'])
      actions:
      - expression: med.set(12345)
    
  2. Carica il criterio di route BGP:

    gcloud beta compute routers upload-route-policy ROUTER_NAME \
        --region=REGION \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --file-name=FILE_NAME \
        --file-format=yaml
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • REGION: la regione in cui si trova il router Cloud
    • FILENAME: il nome del file che stai caricando
  3. Applica i criteri delle route BGP ai peer BGP:

    gcloud beta compute routers update-bgp-peer ROUTER_NAME \
        --region=REGION \
        --peer-name=PEER_NAME \
        --import-policies='IMPORT_POLICIES'
    

    Sostituisci quanto segue:

    • PEER_NAME: il nome del peer BGP per applicare il BGP di routing.
    • IMPORT_POLICIES: un elenco separato da virgole di criteri di importazione. Se passi una stringa vuota, vengono rimossi tutti i criteri di importazione.

Passaggi successivi