Crea policy di route BGP

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

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

Crea una policy 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 la policy 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 seguente comando aggiunge un criterio di route per le route in entrata al tuo 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 della policy 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 da associare 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 preferisci per questo criterio, ad esempio 1.

Carica una policy di route BGP

  1. Crea il criterio di route BGP nel tuo editor di testo preferito. Puoi utilizzare la formattazione JSON o 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 la policy di route BGP.
    • ROUTE_POLICY_TYPE: il tipo di policy di route BGP che stai creando. Il tipo può essere uno dei seguenti:

      • ROUTE_POLICY_TYPE_IMPORT: criteri di route BGP per le route in entrata.
      • ROUTE_POLICY_TYPE_EXPORT: policy di route BGP per le route in uscita.
    • ROUTE_POLICY_PRIORITY: la priorità per questa norma, ad esempio 1.

    • ROUTE_POLICY_MATCH_EXPRESSION: un'espressione da associare per questo criterio di route

    • ROUTE_POLICY_ACTIONS_EXPRESSION: azioni per questo criterio di routing

    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 la policy 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 di 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 a cui applicare il criterio di route BGP.
    • 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