VPSs y mas.

viernes, 21 de octubre de 2011

Verificar el origen de un prefijo BGP


Historia:
  En algunas situaciones queremos estar seguros que el prefijo BGP aprendido en nuestro router sea efectivamente originado por quien debería ser. Han ocurrido ciertas eventualidades en la historia del mundo de Internetworking donde un Sistema Autonomo ha publicado redes no debidas (ej: http://www.ripe.net/internet-coordination/news/industry-developments/youtube-hijacking-a-ripe-ncc-ris-case-study).
  Hoy en día un poco más del 10% de los prefijos asignados por los RIRs (Lacnic, RIPE, Afrinic, ARIN y APNIC) tienen asignado un ROA (Route Origin Authorization) el cual indica de manera segura quien es el sistema autonomo asignado para publicar cierto prefijo. A lo anterior se le conoce como Resource Public Key Infrastructure (RPKI) 


Problema:
  Deseo saber cual debería ser el sistema autónomo de un prefijo especifico (por ejemplo una red aprendida por BGP). 


Solución:
  Seguramente en un futuro cercano tendremos decenas de páginas Web donde podamos consultar el sistema autonomo que debería publicar cierta red (quizás hoy en día existen y yo no las conozco), en fin, nuestro buen amigo whois nunca nos falla. En esta oportunidad nos apoyaremos en el servidor whois de bgpmon.net


  Aquí les dejo los comandos y unas salidas ejemplos:
  • ROA con problemas (
    Se esperaba el AS 17NN9 y esta siendo publicado por el 79NN))
    :


aacosta@bind:~$ whois -h whois.bgpmon.net 2001:NNNN::0


Prefix:              2001:NNNN::/32
Prefix description:  
Country code:        VE
Origin AS:           79NN
Origin AS Name:      NNNNNN.
RPKI status:         ROA validation failed: Invalid Origin ASN, expected 17NN9

  • ROA satisfactorio:

aacosta@bind:~$ whois -h whois.bgpmon.net 2001:NNNN::0


Prefix:              2001:NNNN::/32
Prefix description:  
Country code:        VE
Origin AS:           79NN
Origin AS Name:      NNNNNNN.
RPKI status:         ROA validation successful
  • SIN ROA (en este prefijo no podremos saber que AS debería publicarlo):
aacosta@bind:~$ whois -h whois.bgpmon.net 2800:NN::0


Prefix:              2800:NN::/32
Prefix description:  
Country code:        AR
Origin AS:           79NN
Origin AS Name:      NNNNNN
RPKI status:         No ROA found



Más información:
http://acostanetwork.blogspot.com/2011/03/historico-de-tablas-bgp-hijack-de-mi.html (Histórico de tablas BGP)
https://labs.ripe.net/Members/Paul_P_/content-serving-roas-rpsl-route-objects
http://bgpmon.net/blog/?p=414

2 comentarios:

  1. Acosta!

    Me parece muy interesante que compartas informacion sobre RPKI en castellano.

    Quiero intentar organizar una pequeña reunion de gente interesada en este tipo de tecnologias IPv6/BGP y demas. No estaras en Madrid, por casualidad?

    ResponderEliminar
  2. Hola IOS, recibe un saludo,
    Precisamente la intencion del blog es compartir informacion en espanol sobre temas tecnicos que en espanol son dificiles de conseguir (ipv6, bgp, dnssec, rpki, etc)
    Estoy en Venezuela.
    Tu sigues @lactf, no?

    Saludos,

    ResponderEliminar

¿Algo adicional que quieras mencionar? ¿Algun consejo?, ¿truco? Gracias!