Crea políticas de ruta de BGP

En esta guía, se describe cómo crear políticas de ruta de BGP en Cloud Router.

Puedes crear políticas de ruta de BGP para Cloud Router mediante cualquiera de las siguientes opciones:

Compila una política de ruta de BGP

  1. Agrega una política de ruta a tu Cloud Router:

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

    Reemplaza lo siguiente:

    • ROUTER_NAME es el nombre del Cloud Router
    • BGP_ROUTE_POLICY_NAME: un nombre para la política de ruta de BGP
    • ROUTE_POLICY_TYPE: Es el tipo de política que se agregará, ya sea IMPORT para las rutas entrantes o EXPORT para las rutas salientes.
    • REGION: la región en la que se encuentra el Cloud Router.

    Por ejemplo, el siguiente comando agrega una política de ruta para las rutas entrantes a tu Cloud Router:

    gcloud beta compute routers add-route-policy ROUTER_NAME \
        --policy-name=BGP_ROUTE_POLICY_NAME \
        --policy-type=IMPORT \
        --region=REGION
    
  2. Para agregar un término de política de ruta de BGP, ejecuta el siguiente 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
    

    Reemplaza lo siguiente:

    • ROUTE_POLICY_PRIORITY: the priority for this policy, such as1`.
    • ROUTE_POLICY_MATCH_EXPRESSION: Es una expresión que debe coincidir con esta política de ruta.
    • ROUTE_POLICY_ACTIONS_EXPRESSION: Acciones para esta política de enrutamiento

    Por ejemplo, el siguiente comando crea una política de BGP para establecer el valor del atributo del discriminante de salidas múltiples (MED) de BGP en 12345 para las rutas de BGP que no se incluyen en 192.168.10.0/24 y que coinciden con el conjunto de comunidades de BGP 65000:1 y 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)'
    

    Reemplaza ROUTE_POLICY_PRIORITY por la prioridad que desees para esta política, como 1.

Sube una política de ruta de BGP

  1. Crea la política de ruta de BGP en tu editor de texto preferido. Puedes usar el formato JSON o YAML para crear tu política de ruta de BGP. En el siguiente ejemplo, se usa un archivo 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
    

    Reemplaza lo siguiente:

    • BGP_ROUTE_POLICY_NAME: un nombre para la política de ruta de BGP.
    • ROUTE_POLICY_TYPE: el tipo de política de ruta de BGP que creas. El tipo puede ser uno de los siguientes:

      • ROUTE_POLICY_TYPE_IMPORT: Políticas de ruta de BGP para rutas entrantes.
      • ROUTE_POLICY_TYPE_EXPORT: Políticas de ruta de BGP para rutas salientes.
    • ROUTE_POLICY_PRIORITY: Es la prioridad de esta política, como 1.

    • ROUTE_POLICY_MATCH_EXPRESSION: Es una expresión que debe coincidir con esta política de ruta.

    • ROUTE_POLICY_ACTIONS_EXPRESSION: Acciones para esta política de enrutamiento

    Por ejemplo, el siguiente comando de archivo YAML crea una política de BGP para rutas entrantes que establece el valor del atributo del discriminante de salidas múltiples (MED) de BGP en 12345 para las rutas de BGP que no se incluyen en 192.168.10.0/24 y que coinciden con el conjunto de comunidades de BGP 65000:1 y 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. Sube la política de ruta de 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
    

    Reemplaza lo siguiente:

    • ROUTER_NAME es el nombre del Cloud Router
    • REGION: es la región en la que se encuentra el Cloud Router
    • FILENAME: el nombre de archivo que deseas subir
  3. Aplica las políticas de ruta de BGP a los pares BGP:

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

    Reemplaza lo siguiente:

    • PEER_NAME: el nombre del par de BGP al que se aplicará la política de ruta de BGP.
    • IMPORT_POLICIES: una lista de políticas de importación separadas por comas. Si pasas una cadena vacía, se quitan todas las políticas de importación.

¿Qué sigue?