Première rédaction de cet article le 13 décembre 2011
Une série de chiffres en vaut une autre, pensez-vous ? Eh bien
non. Quoique numériques, toutes les adresses IP ne se valent pas. Le préfixe
128.0.0.0/16
, quoique parfaitement légal, est
ainsi invisible depuis une bonne partie de
l'Internet.
Tentez l'expérience depuis votre machine en visant l'amer mis en place par le RIPE-NCC :
% ping -c 3 128.0.0.1 PING 128.0.0.1 (128.0.0.1) 56(84) bytes of data. 64 bytes from 128.0.0.1: icmp_req=1 ttl=55 time=83.6 ms 64 bytes from 128.0.0.1: icmp_req=2 ttl=55 time=83.8 ms 64 bytes from 128.0.0.1: icmp_req=3 ttl=55 time=83.5 ms --- 128.0.0.1 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2005ms rtt min/avg/max/mdev = 83.519/83.692/83.890/0.367 ms
Si cela marche (comme ci-dessus), vous faites partie des favorisés. Sinon :
% ping -c 3 128.0.0.1 PING 128.0.0.1 (128.0.0.1) 56(84) bytes of data. --- 128.0.0.1 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 2010ms
Mais pourquoi ? Qu'est-ce que ce chiffre a de particulier ?
C'est parce qu'une bogue des routeurs Juniper
traite ce réseau différemment et, par défaut, le considère comme
« martien » (anormal sur l'Internet) et refuse les annonces
BGP pour lui (ce
préfixe était réservé, mais le RFC 3330 l'a libéré en 2002). Le numéro
(interne) de bogue chez Juniper est le PSN-2011-10-393. Le problème est bien expliqué
dans un
article des RIPE labs et son effet mesuré
par les sondes Atlas. Aujourd'hui, un tiers de l'Internet ne
peut pas joindre ce réseau 128.0.0.0/16
. Autre
façon de mesurer le même problème, regarder la propagation des
annonces BGP, par exemple au
RIS qui, en décembre 2011, voit une propagation de seulement 80 %.
Une mise à jour existe désormais chez Juniper. On peut aussi
changer la configuration par défaut (qui est incorrecte). Si votre routeur
Juniper affiche 128.0.0.0/16
en réponse à
show route martians
, c'est que vous avez la
mauvaise configuration. Changez-la :
set routing-options martians 128.0.0.0/16 orlonger allow set routing-options martians 191.255.0.0/16 orlonger allow set routing-options martians 223.255.255.0/24 exact allow
(Trois préfixes sont concernés, même si c'est surtout le premier qui a fait parler de lui.)
Si vous n'arivez pas à pinguer l'adresse de l'amer ci-dessus, tapez sur votre FAI jusqu'à ce qu'il mette à jour ses routeurs (et ainsi de suite récursivement car cela dépend également de l'opérateur qui connecte le FAI).
Avant la mise à jour, sur la console du routeur :
admin@m7i-2-sqy> show route 128.0.0.1 admin@m7i-2-sqy> show route 128.0.0.1 hidden SERVICE.inet.0: 395145 destinations, 730370 routes (394162 active, 0 holddown, 1051 hidden) + = Active Route, - = Last Active, * = Both 128.0.0.0/21 [BGP/170] 1w5d 21:07:00, localpref 100 AS path: 2200 20965 1103 12654 I > to 193.51.182.46 via ge-1/3/0.0
Après la mise à jour :
admin@m7i-2-sqy> show route 128.0.0.1 SERVICE.inet.0: 369404 destinations, 369404 routes (368357 active, 0 holddown, 1047 hidden) + = Active Route, - = Last Active, * = Both 128.0.0.0/21 +[BGP/170] 00:01:55, localpref 100 AS path: 2200 20965 1103 12654 I > to 193.51.182.46 via ge-1/3/0.0
Merci à Sylvain Busson pour sa prompte mise à jour des routeurs.
Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)
Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)