Enumera las rutas de BGP

En esta página, se describe cómo enumerar las rutas anunciadas y las rutas aprendidas en sesiones individuales del Protocolo de puerta de enlace de frontera (BGP), lo que puede ayudarte a solucionar problemas relacionados con las rutas de Cloud Router. Puedes enumerar las rutas antes o después de que se apliquen las políticas de ruta de BGP a una ruta. Para solucionar problemas relacionados con las rutas anunciadas y aprendidas, te recomendamos que completes las siguientes secciones en orden.

Antes de comenzar

gcloud

Si deseas usar los ejemplos de línea de comandos de esta guía, haz lo siguiente:

  1. Instala Google Cloud CLI o actualízala a la última versión.
  2. Configura una región y una zona predeterminadas.

API

Si deseas usar los ejemplos de API de esta guía, configura el acceso a la API.

Enumera las rutas de BGP antes de que se apliquen las políticas

Console

Haz lo siguiente:

  1. En la consola de Cloud de Confiance , ve a la página Cloud Router.

    Ve a Cloud Router

  2. En la página Cloud Router, haz clic en la pestaña Sesiones de BGP.

  3. Selecciona el par de la sesión de BGP que deseas enumerar. Se muestra la página de detalles de la sesión de BGP. Las rutas anunciadas se enumeran en la sección Rutas anunciadas.

gcloud

Usa el comando gcloud compute routers list-bgp-routes:

gcloud compute routers list-bgp-routes ROUTER_NAME \
    --address-family=ADDRESS_FAMILY \
    --no-policy-applied \
    --peer=PEER_NAME \
    --region=REGION \
    --route-direction=ROUTE_DIRECTION

Reemplaza lo siguiente:

  • ROUTER_NAME: el nombre de tu Cloud Router

  • ADDRESS_FAMILY: Es la familia de direcciones IP para la que se mostrarán las rutas:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones BGP basadas en IPv6
  • PEER_NAME es el nombre del par de BGP.

  • REGION: la región en la que se encuentra tu Cloud Router

  • ROUTE_DIRECTION: Es la dirección en la que se mostrarán las rutas:

    • INBOUND: Rutas aprendidas del par de BGP
    • OUTBOUND: Rutas anunciadas al par de BGP

El resultado es similar a lo siguiente:

---
asPaths:
- asns:
  - 64515
  type: AS_PATH_TYPE_SEQUENCE
destination:
  prefix: 192.168.1.0/24
med: 100
origin: BGP_ORIGIN_INCOMPLETE
---
asPaths:
- asns:
  - 64515
  type: AS_PATH_TYPE_SEQUENCE
destination:
  prefix: 192.168.2.0/24
med: 333
origin: BGP_ORIGIN_INCOMPLETE

API

Usa el método routers.listBgpRoutes:

GET https://compute.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/listBgpRoutes
{
  "addressFamily": "ADDRESS_FAMILY",
  "peer": "PEER_NAME",
  "policyApplied": FALSE,
  "routeType": "ROUTE_TYPE"
}

Reemplaza lo siguiente:

  • PROJECT_ID es el proyecto que contiene tu Cloud Router.

  • REGION: la región en la que se encuentra tu Cloud Router

  • ROUTER_NAME: el nombre de tu Cloud Router

  • ADDRESS_FAMILY: Es la familia de direcciones IP para la que se mostrarán las rutas:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones BGP basadas en IPv6
  • PEER_NAME es el nombre del par de BGP.

  • ROUTE_TYPE: Es el tipo de ruta que se mostrará:

    • LEARNED: Es la ruta aprendida del par de BGP.
    • ADVERTISED: Es la ruta anunciada al par de BGP.

El resultado es similar a lo siguiente:

{
  "kind": "compute#routersListBgpRoutes",
  "result": [
    {
      "destination": {
        "prefix": "10.0.1.0/24"
      },
      "med": 100
    },
    {
      "destination": {
        "prefix": "10.0.2.0/24"
      },
      "med": 338
    }
  ]
}

Enumera las rutas de BGP después de que se aplican las políticas

Console

  1. En la consola de Cloud de Confiance , ve a la página Cloud Router.

    Ve a Cloud Router

  2. En la página Cloud Router, haz clic en la pestaña Sesiones de BGP.

  3. Selecciona el par de la sesión de BGP que deseas enumerar. Se muestra la página de detalles de la sesión de BGP. Las rutas anunciadas se enumeran en la sección Rutas anunciadas.

gcloud

Usa el comando gcloud compute routers list-bgp-routes:

gcloud compute routers list-bgp-routes ROUTER_NAME \
    --address-family=ADDRESS_FAMILY \
    --policy-applied \
    --peer=PEER_NAME \
    --region=REGION \
    --route-direction=ROUTE_DIRECTION

Reemplaza lo siguiente:

  • ADDRESS_FAMILY: Es la familia de direcciones IP para la que se mostrarán las rutas:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones BGP basadas en IPv6
  • PEER_NAME es el nombre del par de BGP.

  • ROUTE_DIRECTION: Es la dirección en la que se mostrarán las rutas:

    • INBOUND: Rutas aprendidas del par de BGP
    • OUTBOUND: Rutas anunciadas al par de BGP

El resultado es similar a lo siguiente:

---
asPaths:
- asns:
- 64515
type: AS_PATH_TYPE_SEQUENCE
communities:
- 65535:65281
destination:
prefix: 192.168.1.0/24
med: 100
origin: BGP_ORIGIN_INCOMPLETE
---
asPaths:
- asns:
- 64515
type: AS_PATH_TYPE_SEQUENCE
communities:
- 65535:65281
destination:
prefix: 192.168.2.0/24
med: 333
origin: BGP_ORIGIN_INCOMPLETE

API

Usa el método routers.listBgpRoutes:

GET https://compute.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/listBgpRoutes
{
"addressFamily": "ADDRESS_FAMILY",
"peer": "PEER_NAME",
"policyApplied": TRUE,
"routeType": "ROUTE_TYPE"
}

Reemplaza lo siguiente:

  • PROJECT_ID es el proyecto que contiene tu Cloud Router.

  • REGION: la región en la que se encuentra tu Cloud Router

  • ROUTER_NAME: el nombre de tu Cloud Router

  • ADDRESS_FAMILY: Es la familia de direcciones IP para la que se mostrarán las rutas:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones BGP basadas en IPv6
  • PEER_NAME es el nombre del par de BGP.

  • ROUTE_TYPE: Es el tipo de ruta que se mostrará:

    • LEARNED: Es la ruta aprendida del par de BGP.
    • ADVERTISED: Es la ruta anunciada al par de BGP.

El resultado es similar a lo siguiente:

{
  "kind": "compute#routersListBgpRoutes",
  "result": [
    {
      "destination": {
        "prefix": "10.0.1.0/24"
      },
      "asPaths": [
        {
          "type": "AS_PATH_TYPE_SEQUENCE",
          "asns": [
            64514
          ]
        }
      ],
      "origin": "BGP_ORIGIN_INCOMPLETE",
      "med": 100
    },
    {
      "destination": {
        "prefix": "10.0.2.0/24"
      },
      "asPaths": [
        {
          "type": "AS_PATH_TYPE_SEQUENCE",
          "asns": [
            64514
          ]
        }
      ],
      "origin": "BGP_ORIGIN_INCOMPLETE",
      "med": 338
    }
  ]
}

Consulta las mejores rutas dinámicas

Verifica las mejores rutas dinámicas por Cloud Router y por región por VPC:

gcloud

Usa el comando gcloud compute routers get-status:

gcloud compute routers get-status ROUTER_NAME \
    --region=REGION

El resultado incluye la siguiente información:

  • bestRoutesForRouter: Representa las mejores rutas para un Cloud Router específico.
  • bestRoutes: Representa las mejores rutas por región de un Cloud Router de esa VPC.

El resultado es similar al siguiente para bestRoutesForRouter:

  bestRoutesForRouter:
  - asPaths:
    - asLists:
      - 65002
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2024-09-26T18:28:54.346-07:00'
    destRange: 192.168.1.0/24
    kind: compute#route
    network: https://www.googleapis.com/compute/projects/PROJECT_ID/global/networks/NETWORK_NAME
    nextHopIp: 169.254.0.2
    nextHopOrigin: INCOMPLETE
    nextHopVpnTunnel: https://www.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/vpnTunnels/vpc-demo-tunnel0
    priority: 100
    routeStatus: ACTIVE
    routeType: BGP
  - asPaths:
    - asLists:
      - 65002
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2024-09-27T12:44:56.575-07:00'
    destRange: 192.168.1.0/24
    kind: compute#route
    network: https://www.googleapis.com/compute/projects/PROJECT_ID/global/networks/NETWORK_NAME
    nextHopIp: 169.254.1.2
    nextHopOrigin: INCOMPLETE
    nextHopVpnTunnel: https://www.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/vpnTunnels/vpc-demo-tunnel1
    priority: 100
    routeStatus: ACTIVE
    routeType: BGP

El resultado es similar al siguiente para bestRoutes:

  bestRoutes:
  - asPaths:
    - asLists:
      - 65002
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2024-09-26T18:33:50.505-07:00'
    destRange: 192.168.1.0/24
    kind: compute#route
    network: https://www.googleapis.com/compute/projects/PROJECT_ID/global/networks/NETWORK_NAME
    nextHopIp: 169.254.0.2
    nextHopOrigin: INCOMPLETE
    nextHopVpnTunnel: https://www.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/vpnTunnels/vpc-demo-tunnel0
    priority: 100
    routeType: BGP
  - asPaths:
    - asLists:
      - 65002
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2024-09-27T12:46:49.028-07:00'
    destRange: 192.168.1.0/24
    kind: compute#route
    network: https://www.googleapis.com/compute/projects/PROJECT_ID/global/networks/NETWORK_NAME
    nextHopIp: 169.254.1.2
    nextHopOrigin: INCOMPLETE
    nextHopVpnTunnel: https://www.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/vpnTunnels/vpc-demo-tunnel1
    priority: 100
    routeType: BGP

El resultado incluye los siguientes valores:

  • PROJECT_ID es el proyecto que contiene tu Cloud Router.

  • NETWORK_NAME: Es el nombre de la red de VPC.

  • REGION: es el nombre de la región.

API

Usa el método routers.getRouterStatus:

GET https://compute.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/getRouterStatus

Reemplaza lo siguiente:

  • PROJECT_ID es el proyecto que contiene tu Cloud Router.

  • REGION: la región en la que se encuentra tu Cloud Router

  • ROUTER_NAME: el nombre de tu Cloud Router

El resultado incluye la siguiente información:

  • bestRoutes: Representa las mejores rutas por región de un Cloud Router de esa VPC.
  • bestRoutesForRouter: Representa las mejores rutas para un Cloud Router específico.

El resultado es similar al siguiente para bestRoutes:

    "bestRoutes": [
      {
        "kind": "compute#route",
        "creationTimestamp": "2025-03-05T11:20:40.323-08:00",
        "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME",
        "destRange": "200.0.0.0/24",
        "priority": 100,
        "nextHopIp": "169.254.0.1",
        "nextHopVpnTunnel": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels/TUNNEL_NAME",
        "routeType": "BGP",
        "asPaths": [
          {
            "pathSegmentType": "AS_SEQUENCE",
            "asLists": [
              65001
            ]
          }
        ],
        "nextHopOrigin": "INCOMPLETE"
      },

El resultado es similar al siguiente para bestRoutesForRouter:

    "bestRoutesForRouter": [
      {
        "kind": "compute#route",
        "creationTimestamp": "2025-03-05T11:20:50.240-08:00",
        "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME",
        "destRange": "10.2.1.0/24",
        "priority": 100,
        "nextHopIp": "169.254.0.1",
        "nextHopVpnTunnel": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/vpnTunnels/TUNNEL_NAME",
        "routeType": "BGP",
        "asPaths": [
          {
            "pathSegmentType": "AS_SEQUENCE",
            "asLists": [
              65001
            ]
          }
        ],
        "routeStatus": "ACTIVE",
        "nextHopOrigin": "INCOMPLETE"
      },
      {
        "kind": "compute#route",
        "creationTimestamp": "2025-03-05T01:50:01.725-08:00",
        "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/on-prem",
        "destRange": "200.0.0.0/24",
        "priority": 100,
        "nextHopIp": "169.254.0.1",
        "nextHopVpnTunnel": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels/TUNNEL_NAME",
        "routeType": "BGP",
        "asPaths": [
          {
            "pathSegmentType": "AS_SEQUENCE",
            "asLists": [
              65001
            ]
          }
        ],
        "routeStatus": "ACTIVE",
        "nextHopOrigin": "INCOMPLETE"
      },
      {
        "kind": "compute#route",
        "creationTimestamp": "2025-03-06T05:30:06.277-08:00",
        "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/on-prem",
        "destRange": "10.2.1.0/24",
        "priority": 100,
        "nextHopIp": "169.254.1.1",
        "nextHopVpnTunnel": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels/TUNNEL_NAME",
        "routeType": "BGP",
        "asPaths": [
          {
            "pathSegmentType": "AS_SEQUENCE",
            "asLists": [
              65001
            ]
          }
        ],
        "routeStatus": "ACTIVE",
        "nextHopOrigin": "INCOMPLETE"
      }
    ],

El resultado incluye los siguientes valores:

  • PROJECT_ID es el proyecto que contiene tu Cloud Router.

  • REGION: la región en la que se encuentra tu Cloud Router

  • ROUTER_NAME: el nombre de tu Cloud Router

  • TUNNEL_NAME: Si corresponde, el nombre de tu túnel VPN

Visualiza la tabla de ruta del plano de reenvío de la VPC

Haz lo siguiente:

  1. En la consola de Cloud de Confiance , ve a la página Rutas.

    Ir a Rutas

  2. En la pestaña Rutas eficaces, selecciona la red para la que deseas enumerar las rutas.

  3. En la lista Región, selecciona la región en la que deseas mostrar las rutas y, luego, haz clic en Ver.