1 [[!meta title="Tor, IPv6 et prises de tête"]]
 
   2 [[!meta date="2020-07-06 12:00:00"]]
 
   5 Chez nos-oignons, nous faisons tourner [plusieurs relais de sortie tor à haute
 
   6 capacité](https://nos-oignons.net/Services/index.fr.html), et comme nous sommes en 2020, la plupart ont de l'IPv6. Tout allait
 
   7 bien, jusqu'à ce qu'on se penche sur le cas
 
   8 d'[elenagb](https://metrics.torproject.org/rs.html#details/F47B13BFCE4EF48CDEF6C4D7C7A99208EBB972B5),
 
   9 notre nœud hébergé chez [Aquilenet](https://www.aquilenet.fr/), et nommé
 
  10 d'après la professeure et écrivaine italienne [Elena Gianini Belotti](
 
  11 https://fr.wikipedia.org/wiki/Elena_Gianini_Belotti ). En effet, le consensus
 
  12 pensait que son *exit policy* était `reject *:*`, alors que nous voulions qu'il
 
  13 soit un relai de sortie. La seule différence avec nos autre relais était que
 
  14 comme notre hébergeur ne nous attribuait pas l'IPv4, nous nous étions mis
 
  15 d'accord pour n'avoir que du trafic sortant du réseau tor en IPv6. Il y avait
 
  16 donc, quelque part, sûrement, un soucis de configuration.  Le `torrc`
 
  17 ressemblait à ça. En partant du principe que tout le reste soit correctement
 
  18 configuré (`ORPort`, `address`, …), arrivez-vous à débusquer l'erreur?
 
  24 # Reduced exit policy in IPv6
 
  25 ExitPolicy accept6 *:20-23     # FTP, SSH, telnet
 
  27 ExitPolicy accept6 *:64738     # Mumble
 
  28 ExitPolicy reject6 *:*
 
  31 L'astuce  comme souligné dans le [ticket 16069](https://trac.torproject.org/projects/tor/ticket/16069) est que la configuration `reject
 
  32 *:*` rejette l'IPv4 **ainsi** que l'IPv6 pour des raisons historiques. À ce
 
  33 sujet, la [documentation](https://torproject.org/docs/tor-manual.html.en) indique :
 
  35 > Les entrées `accept6` et `reject6` affectent seulement les politiques de
 
  36 sortie Ipv6. Utiliser des IPv4 avec `accept6` et `reject6` sera ignoré et
 
  37 générera une alerte. Les entrées `accept`/`reject` permettent de prendre en
 
  38 compte l'IPv4 ainsi que l'IPv6. Utiliser `*4` comme adresse IPv4 générique, et `*6`
 
  39 comme IPv6 générique. `accept`/`reject *` sont utilisés comme générique
 
  40 concernant IPv4 et IPv6.
 
  42 La bonne configuration ressemblerait donc plutôt à ceci:
 
  46 ExitPolicy reject *4:*
 
  48 # Reduced exit policy in IPv6
 
  49 ExitPolicy accept6 *:20-23     # FTP, SSH, telnet
 
  50 ExitPolicy accept6 *:43        # WHOIS
 
  52 ExitPolicy accept6 *:64738     # Mumble
 
  53 ExitPolicy accept6 *:64738     # Mumble
 
  54 ExitPolicy reject6 *:*
 
  58 Une bonne partie de la soirée fût passée à s'user les yeux sur le problème, et
 
  59 évidement, aussitôt le mystère résolu, notre hébergeur nous a informé que
 
  60 l'IPv4 nous était maintenant correctement attribuée, et qu'elenagb pouvait donc
 
  61 avoir du trafic sortant de tor à la fois en IPv4 et en IPv6.