Cómo crear conjuntos con nombre

En esta guía, se describe cómo crear un conjunto con nombre en Cloud Router.

En los ejemplos de esta página, se crean dos conjuntos con nombre de diferentes tipos: un conjunto de prefijos y un conjunto de comunidades.

El conjunto de prefijos se llama allowed-prefixes y contiene los siguientes elementos:

  • '192.168.0.0/16'
  • 'fd00::/8'
  • prefix('10.0.0.0/20').orLonger()

El conjunto de la comunidad llamado allowed-communities contiene los siguientes elementos:

  • '64500:100'
  • '64500:200'

Puedes crear conjuntos con nombre para Cloud Router de dos maneras:

Crea conjuntos con nombre

Los nombres de los conjuntos con nombre deben ser únicos dentro del router. En esta sección, se compilan conjuntos con nombre a través de gcloud CLI.

Crea un conjunto de prefijos

Para compilar un conjunto de prefijos, haz lo siguiente:

  1. Para crear un conjunto de prefijos vacío llamado allowed-prefixes, ejecuta el siguiente comando:
    gcloud compute routers add-named-set ROUTER_NAME
        --set-name=allowed-prefixes
        --set-type=prefix
    
    Reemplaza ROUTER_NAME por el nombre del Cloud Router.
  2. Para agregar cada uno de los elementos al conjunto con nombre allowed-prefixes, ejecuta el comando add-named-set-element para cada elemento:

    gcloud compute routers add-named-set-element ROUTER_NAME
        --set-name=allowed-prefixes
        --new-set-element="'192.168.0.0/16'"

    gcloud compute routers add-named-set-element ROUTER_NAME --set-name=allowed-prefixes --new-set-element="'fd00::/8'"

    gcloud compute routers add-named-set-element ROUTER_NAME --set-name=allowed-prefixes --new-set-element="prefix('10.0.0.0/20').orLonger()"

Cómo crear un conjunto de comunidad

Para crear un conjunto de la comunidad, haz lo siguiente:

  1. Para crear un conjunto de la comunidad vacío llamado allowed-communities, ejecuta el siguiente comando:
    gcloud compute routers add-named-set ROUTER_NAME
        --set-name=allowed-communities
        --set-type=community
    
  2. Para agregar cada uno de los elementos al conjunto con nombre allowed-communities, ejecuta el comando add-named-set-element para cada elemento:

    gcloud compute routers add-named-set-element ROUTER_NAME
        --set-name=allowed-communities
        --new-set-element="'64500:100'"

    gcloud compute routers add-named-set-element ROUTER_NAME --set-name=allowed-communities --new-set-element="'64500:200'"

Cómo subir conjuntos con nombre

Cuando crees un archivo JSON o YAML, usa uno de los siguientes tipos de conjuntos con nombre:

  • NAMED_SET_TYPE_COMMUNITY
  • NAMED_SET_TYPE_PREFIX

El comando upload-named-set reemplaza cualquier conjunto con nombre que tenga el mismo nombre.

  1. Para crear conjuntos con nombre llamados allowed-prefixes y allowed-communities, crea los conjuntos con nombre en tu editor de texto preferido. Puedes usar el formato YAML o JSON para crearlos.

    allowed-prefixes.yaml:

    # Prefix set
    resource:
      elements:
      - expression: "'192.168.0.0/16'"
      - expression: "'fd00::/8'"
      - expression: "prefix('10.0.0.0/20').orLonger()"
      name: allowed-prefixes
      type: NAMED_SET_TYPE_PREFIX
    

    allowed-communities.yaml:

    # Community set
    resource:
      elements:
      - expression: "'64500:100'"
      - expression: "'64500:200'"
      name: allowed-communities
      type: NAMED_SET_TYPE_COMMUNITY
    
  2. Para subir los conjuntos con nombre, ejecuta los siguientes comandos:

    gcloud compute routers upload-named-set ROUTER_NAME
        --set-name=allowed-prefixes
        --file-name=allowed-prefixes.yaml
        --file-format=json
    

    gcloud compute routers upload-named-set ROUTER_NAME
        --set-name=allowed-communities
        --file-name=allowed-communities.json
        --file-format=json
    

    Reemplaza ROUTER_NAME por el nombre del Cloud Router.

Elementos del conjunto de prefijos

Los elementos de los conjuntos de prefijos deben ser un literal de prefijo (cadena) o un objeto de rango de prefijo. Son el mismo literal de prefijo y los mismos rangos de prefijo definidos para su uso en políticas de rutas.

En la siguiente tabla, se describe cada elemento de un conjunto de prefijos.

Expresión Descripción

'192.168.0.0/24'

Es un literal de prefijo.

prefix('192.168.0.0/24')

Es un objeto de coincidencia de prefijo.

p.longer()

Objeto de rango de prefijo que es una copia de p con el final del rango establecido en el máximo de familia por dirección del prefijo de entrada (/32 o /128) y el inicio del rango establecido en la longitud del prefijo de entrada más uno.

p.orLonger()

Objeto de rango de prefijo que es una copia de p con el final del rango establecido en el máximo de familia por dirección del prefijo de entrada (/32 o /128).

p.lengthRange(20, 30)

Objeto de rango de prefijo que es una copia de p con el inicio del rango establecido en /20 y el final establecido en /30.

p.upTo(30)

Objeto de rango de prefijo que es una copia de p con el final del rango establecido en el prefijo /30 de entrada.

Elementos del conjunto de la comunidad

Los elementos de los conjuntos de comunidades deben ser cadenas de comunidad en formato A:B legible.

En la siguiente tabla, se describen los elementos de un conjunto de la comunidad.

Expresión Descripción

'A:B'

Es un literal de la comunidad.

¿Qué sigue?