KNOWLEDGE

AS / ASN / roteamento BGP — entendendo a espinha dorsal da internet

A internet não é uma única rede — são mais de 87.000 Sistemas Autônomos (AS) interligados pelo protocolo BGP. O que é um número de AS? Como o BGP funciona? Como acontecem os vazamentos e sequestros de rota?

Em resumo

A "internet" é, na verdade, formada por mais de 87.000 redes independentes (AS, Autonomous System) interligadas entre si, cada uma com um número único (ASN, por exemplo AS13335 = Cloudflare). Esses AS trocam rotas entre si via BGP, anunciando "estes são os blocos de IP que eu alcanço", e assim formam uma tabela de roteamento global (cerca de 1 milhão de prefixos IPv4 e 200.000 prefixos IPv6). Um pacote da sua casa até o Google costuma atravessar de 4 a 15 AS. Vamos explicar passo a passo.

I. O que é um AS — Autonomous System

Um AS (Sistema Autônomo) é uma rede ou um conjunto de redes sob uma única política administrativa de roteamento. O protocolo de roteamento usado dentro de um AS (OSPF / IS-IS) é assunto interno dele, mas entre AS é usado o BGP para anunciar publicamente os prefixos de IP.

  • Um grande ISP é, ele próprio, um AS (China Telecom AS4134, China Unicom AS4837, China Mobile AS9808)
  • Um grande provedor de nuvem é um AS (Google AS15169, Cloudflare AS13335, AWS AS16509)
  • Universidades, governos e grandes empresas podem ter o seu próprio AS
  • O IP de um usuário comum de banda larga doméstica é recortado do AS do seu ISP — usuários finais não precisam de um AS próprio

1.1 Quem atribui os ASNs

Os ASNs (números de AS) são administrados por 5 Registros Regionais de Internet (RIRs):

RIRRegiãoFaixa típica de ASN
ARINAmérica do NorteAS1-AS6655 + parcial
RIPE NCCEuropa / Oriente MédioAS6656-AS9215 + parcial
APNICÁsia-PacíficoAS17676-AS18431 + parcial
LACNICAmérica LatinaAS27648-AS28671 + parcial
AFRINICÁfricaAS36864-AS37887 + parcial

Os ASNs eram originalmente de 16 bits (0-65535, que começaram a ficar escassos depois de 1996); hoje são de 32 bits (0-4294967295, RFC 6793). Atualmente, cerca de 120.000 estão de fato em uso no mundo.

1.2 Como ler um ASN — formatos

AS13335 // formato antigo (16 bits)
AS393227 // novo formato puramente numérico (32 bits)
AS6.10 // formato antigo com ponto (= 6×65536+10 = 393226; o RFC 5396 define o asplain como notação preferida)

Hoje basta usar o formato numérico simples. O prefixo "AS" pode ser omitido, mas escrevê-lo deixa tudo mais claro.

II. BGP — o "sistema de CEP" da internet

O BGP (Border Gateway Protocol), RFC 4271, é o único protocolo de roteamento usado entre AS. Cada AS usa o BGP para anunciar aos AS vizinhos: "eu alcanço estes prefixos de IP e, através de mim, você alcança estes outros AS mais adiante".

2.1 O núcleo de um anúncio BGP: prefixo + AS-PATH

Tabela de roteamento BGP (trecho do RIPE RIS)
Prefix                Next Hop          AS-PATH
104.16.0.0/13    203.0.113.1   AS3356 AS13335   ← via Lumen até a Cloudflare
104.16.0.0/13    198.51.100.5   AS6939 AS13335   ← via HE.net até a Cloudflare
8.8.8.0/24      203.0.113.1   AS3356 AS15169   ← até o Google DNS
202.106.0.0/16  198.51.100.5   AS6939 AS4847 AS4134 ← até a China Telecom Pequim

O AS-PATH lista todos os AS atravessados desde o AS de origem (o dono do prefixo) até o roteador atual. Leia da direita para a esquerda — o AS mais à direita é a origem, o mais à esquerda é o vizinho.

2.2 Como o BGP escolhe o melhor caminho

Quando há vários caminhos para o mesmo prefixo, o BGP escolhe um seguindo esta ordem de prioridade (resumida):

  1. LOCAL_PREF: quanto maior, melhor — preferência interna dentro do AS (qual é usado primeiro)
  2. AS-PATH mais curto é melhor — vence quem atravessa menos AS
  3. Origin: IGP (interno) > EGP > Incomplete
  4. MED (Multi-Exit Discriminator): quanto menor, melhor — uma indicação passada entre AS
  5. eBGP > iBGP
  6. Custo IGP: quanto menor, melhor
  7. Router ID: quanto menor, melhor (critério final de desempate)

Atenção: o BGP não escolhe necessariamente o caminho mais rápido. Um AS-PATH mais curto não significa menor latência física. Uma rota intercontinental que passa por 1 AS pode ser mais lenta do que uma rota na mesma cidade que passa por 3 AS.

III. Tier 1 / Tier 2 / Tier 3 — a hierarquia dos ISPs

Todos os AS se dividem em três níveis, conforme precisem ou não pagar por trânsito de upstream:

NívelDefiniçãoExemplos típicos
Tier 1Não paga ninguém — alcança o mundo todo apenas por peeringAT&T AS7018, Verizon AS701, Lumen/Level3 AS3356, NTT AS2914, Telia AS1299, Tata AS6453, GTT AS3257, China Telecom AS4134 (segundo algumas definições), China Unicom AS4837
Tier 2Faz peering com alguns Tier 1, mas paga por parte do acessoA maioria dos ISPs nacionais / grandes provedores de nuvem (Google AS15169, Microsoft AS8075, Cloudflare AS13335)
Tier 3Precisa pagar um provedor upstream para alcançar outras redesPequenos ISPs locais / operadoras de acesso

Caminho típico de um pacote de banda larga doméstica: sua casa → pequeno ISP local (Tier 3) → rede provincial / metropolitana (Tier 2) → backbone da China Telecom (Tier 1) → Tier 1 no exterior → rede de destino.

IV. Teste você mesmo — quais AS ficam entre a sua casa e o Google

Use mtr -bz (BSD: traceroute -A) para ver o número de AS de cada salto:

mtr -bz www.google.com (Linux)
HOST: xxx                Loss%   Snt   Last  Avg   ASN
1.  192.168.1.1                0.0%   10   0.5  0.6   (rede privada, sem ASN)
2.  61.183.x.x                 0.0%   10   3.2  3.5   AS4134  China Telecom
3.  202.97.x.x                 0.0%   10   5.1  5.4   AS4134  backbone da China Telecom
4.  202.97.x.x                 0.0%   10  15.2  16.1  AS4134
5.  202.97.x.x                 0.0%   10  45.3  46.0  AS4134  nó pré-saída
6.  211.95.x.x                 0.0%   10 156.4 158.2  AS4134  gateway internacional
7.  72.14.215.x                0.0%   10 158.1 159.8  AS15169 rede do Google
8.  142.250.x.x                0.0%   10 159.8 161.2  AS15169 Google
9.  142.250.x.x (www.google.com)  0.0%   10 160.2 162.0  AS15169

Com este traçado do mtr, podemos ver:

  • Casa → rede local da China Telecom (AS4134, saltos 2-3): < 10ms
  • Backbone da China Telecom (AS4134, saltos 4-6): 5-150ms
  • Salto do gateway internacional para o Google (AS15169, salto 7): salto repentino para 150+ms ← latência da saída internacional
  • Dentro do Google (AS15169, saltos 8-9): < 5ms

Da banda larga doméstica chinesa até o Google são atravessados apenas 2 AS — um AS-PATH extremamente curto —, mas a latência física é alta. É exatamente isso que queremos dizer com "comprimento no BGP não é latência física".

V. Os dois pesadelos de segurança do BGP — vazamentos de rota e sequestro de rota

5.1 Vazamento de rota

Um AS repassa por engano a um upstream ou vizinho rotas que não deveriam ir para um upstream, desviando tráfego global para o caminho errado. Exemplo clássico: um ISP confunde as rotas de um cliente com as suas próprias rotas e as anuncia para todos.

Incidente notável: em novembro de 2017, um vazamento de rota da Level3 (AS3356) afetou um grande número de clientes da Comcast e da Verizon.

5.2 Sequestro de BGP

Um AS malicioso anuncia prefixos de IP que não lhe pertencem. Quando outros AS aceitam o anúncio, o tráfego é redirecionado para o sequestrador, o que permite MITM, negação de serviço ou envenenamento de DNS.

Incidentes notáveis:

  • 2008: a PTCL, do Paquistão, anunciou o prefixo do YouTube, redirecionando o tráfego global do YouTube para o Paquistão por 2 horas
  • 2018: a eNet (AS10297) anunciou os prefixos DNS do Amazon Route 53, sequestrando o tráfego de usuários do MyEtherWallet por cerca de 2 horas
  • 2022: a RTCOMM, da Rússia, sequestrou por pouco tempo um prefixo do Twitter

5.3 Defesa — o RPKI assina as rotas

O RPKI (Resource Public Key Infrastructure), série RFC 6480, permite que o titular legítimo de um prefixo de IP assine criptograficamente que "este prefixo só pode se originar deste AS". Roteadores BGP com suporte a RPKI descartam rotas sem assinatura ou com assinatura incorreta.

Cerca de metade de todos os prefixos IPv4 do mundo já tem assinatura RPKI, e a proporção continua subindo. Ao consultar um IP no cleanip.io, o cartão "Informações do ASN" mostra o seu status RPKI: valid / invalid / not-found.

VI. Como descobrir a qual ASN pertence um IP ou domínio

6.1 Consulte diretamente no cleanip.io

Basta acessar https://cleanip.io/8.8.8.8 ou https://cleanip.io/AS15169 — mostramos as informações completas do ASN, data de registro, faixas de IP, upstream/downstream e distribuição geográfica.

6.2 Visualização de BGP no cleanip.io

/asn-graph desenha a topologia BGP de qualquer ASN — da Origin, passando pelo Tier 2, até o Tier 1 —, para você ver num relance quem faz peering com quem.

/asn-history mostra o histórico de titularidade de um IP / CIDR — a quais AS um CIDR pertenceu ao longo do tempo e quando isso mudou.

6.3 Ferramentas de linha de comando

terminal — ASN lookup
$ whois -h whois.cymru.com " -v 8.8.8.8"
AS      | IP        | BGP Prefix    | CC | Registry | Allocated  | AS Name
15169   | 8.8.8.8   | 8.8.8.0/24    | US | arin     | 1992-12-01 | GOOGLE, US

$ curl https://api.bgpview.io/ip/8.8.8.8 | jq
{
  "data": {
    "ip": "8.8.8.8",
    "prefixes": [{
      "asn": { "asn": 15169, "name": "Google LLC" },
      "prefix": "8.8.8.0/24"
    }]
  }
}

VII. Referência rápida dos ASN mais comuns

ASNNomeTipo
AS13335CloudflareCDN / DNS
AS15169GoogleNuvem / Busca
AS16509Amazon AWSNuvem
AS8075Microsoft / AzureNuvem
AS32934Facebook (Meta)Rede social
AS13414Twitter / XRede social
AS2906NetflixVídeo
AS4134China TelecomISP (Tier 1 parcial)
AS4837China UnicomISP
AS9808China MobileISP
AS37963Alibaba / Alibaba CloudNuvem
AS45102Alibaba Cloud InternacionalNuvem
AS132203Tencent CloudNuvem
AS9009M247 (grande provedor de backbone de VPN)IDC
AS62371Proton AG (ProtonVPN)VPN
AS24940HetznerVPS alemão
AS16276OVHVPS francês
AS20473Choopa (Vultr)VPS
AS14061DigitalOceanVPS

VIII. Por que isso também importa para o usuário comum

  • Os sistemas de controle de risco consideram o ASN ao avaliar a reputação de um IP — ASNs de datacenter (provedores de nuvem/VPN) costumam ter pontuação mais baixa; ASNs de banda larga residencial (China Telecom / Unicom) têm pontuação mais alta
  • Ao escolher uma CDN para tráfego internacional, verifique a distância em AS entre o ASN dos seus usuários-alvo e os nós da CDN — o cleanip.io mostra a qual AS um IP pertence em uma única consulta
  • Durante um ataque DDoS, o ASN é a primeira pista para rastrear a origem — por exemplo, "a maior parte do tráfego de ataque veio do datacenter AS46562 Performive"
  • Ao escolher uma VPN, verifique em qual ASN de IDC ela está hospedada — veja rastreamento de VPN para mais detalhes

Leitura complementar

mimetic
mimetic
mimetic