Resolver problemas de rotas do BGP e seleção de rota

Este guia visa resolver problemas relacionados às rotas do BGP, incluindo seleção, propagação e métricas de rota.

Para mais informações sobre a solução de problemas, consulte os seguintes tópicos:

A sessão IPv6 do BGP foi estabelecida, mas não troca rotas IPv4

  1. Verifique se o anexo da VLAN ou o gateway da VPN de alta disponibilidade tem o tipo de pilha necessário de IPV4_IPV6. Se o tipo de pilha estiver incorreto no anexo da VLAN, modifique esse anexo. Para um gateway de VPN de alta disponibilidade, recrie esse gateway e os túneis dele.

  2. Verifique se o Cloud Router está configurado corretamente. Execute este comando:

    gcloud compute routers describe ROUTER-NAME
    

    Na saída, verifique os seguintes valores:

    • bgpPeers.enableIpv4 é true
    • bgpPeers.ipv4NexthopAddress e bgpPeers.peerIpv4NexthopAddress estão presentes

Alguns prefixos IPv4 ou IPv6 locais não estão acessíveis

Se você estiver com perda de tráfego, erros de ping ou outros problemas ao tentar acessar destinos IPv4 ou IPv6 no local que estão dentro dos prefixos aprendidos pelo Cloud Router, há várias causas possíveis.

Verificar se há rotas aprendidas inativas

Se não for possível chegar a um destino local usando uma rota personalizada aprendida, faça o seguinte:

  • Verifique se a rota está configurada corretamente na sessão do BGP.
  • Verifique se a sessão do BGP está ativa.
  • Verifique se o roteador local está filtrando algumas rotas aprendidas.

Para mais informações, consulte Verificar o status de rotas aprendidas personalizadas.

Verificar rotas aprendidas filtradas

Para ver se uma rota foi descartada, execute o seguinte comando:

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

Substitua:

  • ROUTER_NAME: o nome do seu Cloud Router.
  • REGION: a região em que o Cloud Router está localizado.

A resposta será semelhante a esta: procure o routeStatus definido como active:

kind: compute#routerStatusResponse
result:
  bestRoutesForRouter:
  - asPaths:
    - asLists:
      - 65200
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2024-03-22T13:57:15.533-07:00'
    destRange: 10.128.0.0/20
    kind: compute#route
    network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/VPC_NAME
    nextHopIp: 169.254.73.246
    nextHopVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
    priority: 100
    routeStatus: ACTIVE
    routeType: BGP
  bgpPeerStatus:
  - advertisedRoutes:
    - destRange: 10.128.0.0/20
      kind: compute#route
      network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/aneta-vpc
      nextHopIp: 169.254.73.245
      nextHopVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
      priority: 100
      routeType: BGP
    enableIpv6: false
    ipAddress: 169.254.73.245
    linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
    md5AuthEnabled: false
    name: aneta-bgp
    numLearnedRoutes: 1
    peerIpAddress: 169.254.73.246
    state: Established
    status: UP
    uptime: 10 hours, 11 minutes, 0 seconds
    uptimeSeconds: '36660'
  network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/VPC_NAME

O valor bestRoutesForRouter.routeStatus mostra ACTIVE para uma rota ativa e DROPPED para uma rota filtrada.

Verificar cotas e limites

Verifique se os Cloud Routers não excederam as cotas para rotas aprendidas. Para ver o número de rotas aprendidas, confira o status do Cloud Router.

Para informações sobre as cotas, as mensagens de registro relacionadas e as métricas e como resolver problemas, consulte a tabela a seguir.

Tópico Orientação
Sobre as cotas Consulte Cotas do Cloud Router e Exemplo de rota aprendida.
Registros Quando você exceder uma dessas cotas, vai aparecer uma mensagem de erro no Cloud Logging. Para informações sobre como criar uma consulta avançada para visualizar esta mensagem, veja a consulta relacionada na documentação de geração de registros do Cloud Router.
Métricas

Você também pode usar as métricas a seguir para entender sua disponibilidade e uso atuais de cota. Essas métricas são precedidas por router.googleapis.com/dynamic_routes/learned_routes/:

  • used_unique_destinations

    Número de destinos exclusivos que estão em uso nesta rede VPC. Se o roteamento dinâmico global estiver ativado, essa métrica mostrará uso global e regional.

  • unique_destinations_limit

    Número de destinos exclusivos que podem anunciar nessa rede VPC. Se o roteamento dinâmico global estiver ativado, esta métrica mostrará cotas globais e regionais.

  • any_dropped_unique_destinations

    Indica se essa rede VPC tem destinos que foram descartados devido a uma ou ambos as cotas de rota.

Essas métricas estão disponíveis por meio do recurso monitorado gce_network_region. Para mais informações sobre as métricas do Cloud Router e como visualizá-las, consulte a seção Métricas em Como ver registros e métricas.

Como resolver problemas

Faça o seguinte para resolver problemas de cota de rota. Nas situações em que o número de rotas excede muito a cota disponível, faz sentido fazer as duas coisas:

  • Configurar os roteadores locais para resumir as rotas que você exporta, para que essas rotas divulguem menos destinos (CIDRs).
  • Entrar em contato com o suporte. O suporte pode trabalhar com você para aumentar as cotas.

As rotas aprendidas (rotas de uma rede local) não são propagadas para outras redes VPC

Um único Cloud Router não pode divulgar novamente as rotas aprendidas de um peering do BGP para outros, inclusive para Cloud Routers em outras redes VPC.

Por exemplo, na topologia hub e spoke a seguir, o Cloud Router não é compatível com a divulgação de rota entre várias redes VPC.

"Hub and spoke" do Cloud Router.
"Hub and spoke" do Cloud Router (clique para ampliar)

Nesse caso, não há uma sessão iBGP entre Cloud Routers que compartilham a mesma rede VPC, e o Cloud Router só divulga sub-redes VPC e rotas configuradas de forma personalizada. O Cloud Router não anuncia rotas dinâmicas da rede VPC.

Para analisar as recomendações de topologias de rede no Google Cloud, consulte Práticas recomendadas e arquiteturas de referência para o design da VPC.

Além disso, é possível usar o Network Connectivity Center para criar e gerenciar topologias hub e spoke no Google Cloud.

O tráfego IPv6 não está sendo roteado

Se você estiver com dificuldade para se conectar a hosts IPv6, faça o seguinte:

  1. Verifique se as rotas IPv4 estão sendo anunciadas corretamente. Ao verificar o tráfego IPv4 primeiro, é possível descartar problemas gerais de rede. Se as rotas IPv4 não estiverem sendo divulgadas, execute os procedimentos gerais de solução de problemas listados neste documento.

  2. Inspecione as regras de firewall para garantir que você permita o tráfego IPv6 entre a rede VPC e a rede local.

  3. Determine se você excedeu a cota disponível para rotas aprendidas. Se você exceder a cota das rotas aprendidas, os prefixos IPv6 serão descartados antes dos prefixos IPv4. Consulte Verificar cotas e limites.

  4. Verifique se todos os componentes que exigem a configuração do IPv6 foram configurados corretamente.

    • A sub-rede VPC é configurada para usar o tipo de pilha IPV4_IPV6.

    • A sub-rede VPC tem --ipv6-access-type definido como INTERNAL.

    • As VMs do Compute Engine na sub-rede são configuradas com endereços IPv6.

    • O gateway da VPN de alta disponibilidade ou o anexo da VLAN para a Interconexão dedicada está configurado para usar o tipo de pilha IPV4_IPV6.

    • A sessão do BGP está ativada para anunciar rotas IPv6, e o próximo salto é um endereço IPv6.

      • Para ver o status e as rotas do Cloud Router, consulte este link.

      • Para ver a configuração da sessão do BGP, consulte este link.

O Cloud Router não retorna respostas de ping ICMPv6

O ICMPv6 ping não é compatível com endereços BGP do Cloud Router. Para testar a conectividade da camada 3 para endereços BGP do Cloud Router, use ICMPv4 ping.

A seguir