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 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.

Cómo enumerar las rutas de BGP antes de que se apliquen las políticas

Console

Haz lo siguiente:

  1. En la Trusted Cloud consola, 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 sesión de BGP que deseas incluir en la lista. 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 mostrar rutas de acceso para lo siguiente:

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

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

  • ROUTE_DIRECTION: Es la dirección para mostrar las rutas de:

    • INBOUND: Rutas aprendidas del par de BGP
    • OUTBOUND: Son las rutas anunciadas al par de BGP.

El resultado es similar a este:

---
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: Es 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 mostrar rutas de acceso para lo siguiente:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones de 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 este:

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

Cómo enumerar las rutas de BGP después de aplicar las políticas

Console

  1. En la Trusted Cloud consola, 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 sesión de BGP que deseas incluir en la lista. 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 mostrar rutas de acceso para lo siguiente:

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

  • ROUTE_DIRECTION: Es la dirección para mostrar las rutas de:

    • INBOUND: Rutas aprendidas del par de BGP
    • OUTBOUND: Son las rutas anunciadas al par de BGP.

El resultado es similar a este:

---
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: Es 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 mostrar rutas de acceso para lo siguiente:

    • IPV4: Para direcciones BGP basadas en IPv4
    • IPV6: Para direcciones de 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 este:

{
  "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

Consulta 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 ese 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: Es 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 ese 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: Es 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 de VPN

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

Haz lo siguiente:

  1. En la Trusted Cloud consola, 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 enumerar las rutas y, luego, haz clic en Ver.