De l’ipv6 propre, fixe et indépendant de votre ISP, oui c’est possible ?

J’héberge depuis des années des services directement à domicile. En voulant déployer de l’ipv6 sur ceux-ci je me suis heurté à plusieurs problèmes tels que:

– Un préfixe trop petit ne me permettant pas de créer plusieurs sous réseau (/64)

– Un préfixe dynamique qui peut changer à tout moment (pratique pour fixer des ip en interne dans votre réseau hein…).

– Vous disposez de plusieurs ISP et donc vous seriez obligé de donner une adresse de chaque provider à vos pc (et perdez donc la main sur le loadbalancing).

– Aucune possibilité de changer le reverse dns

 

En Belgique, à peu près tout les ISP pratiquent au moins 2 des points cités précédemment.

 

Solutions envisageables:

Tunnelbroker (HE)

He peut vous fournir un /64 voir un /48 sur demande avec la gestion des reverse dns. C’est donc en théorie un candidat intéressant pour bénéficier d’ipv6.

Cependant, il reste quelques problèmes.

Les ip fournies par sixxs sont géolocalisés aux USA et sont reconnues comme tel, vous allez donc vous heurter a énormément de problèmes du type:

  • Impossible d’accéder à netflix
  • Une géolocalisation invalide pouvant déclencher des systèmes de sécurités chez google ou facebook.
  • L’impossibilité d’avoir une connexion redondante (en effet, un pool par serveur de tunnel, donc changement de tunnel = changement de pool).

Sixxs

Par le passé, j’ai pu utiliser le défunt Sixxs pour me fournir de l’ipv6.

L’avantage, c’est que Sixxs s’appuyait sur des opérateurs locaux, cela réglait donc le problème de géoloc, mais il reste toujours l’incapacité d’avoir une connexion redondante.

En effet, les serveurs de tunnels Sixxs n’étaient pas connus pour leurs stabilités.

 

Utiliser un serveur dédié / vps avec un pool d’ipv6 routable

J’ai pu expérimenter cette solution au travers du provider online.net, cependant, vu que je suis en Belgique, les soucis de géolocalisations se sont de nouveau présentés.

De plus, le pool est connut pour provenir d’un serveur dédié, donc niveau limitation type netflix on repassera.

 

La solution retenue

Finalement, après avoir testé les 3 solutions précédentes, j’ai décidé d’explorer une autre piste.

En effet, tunnelbroker permet de monter des BGP tunnels. Cela veut dire que vous êtes en mesure d’annoncer vos propres IP via votre propre numéro d’AS.

De cette manière, pour le réseau, vous devenez un opérateur indépendant des autres. Il vous suffit donc de vous connecter à un provider fournissant du BGP (tels que tunnelbroker).

 

En principe, dans un monde idéal, votre fournisseur d’accès internet pourrait vous fournir le service, cependant, c’est quelque chose qu’ils facturent en général très cher donc inaccessible pour un hobbyiste.

L’autre solution est donc d’envisager tunnelbroker ou des providers de vps / dédiés permettant de faire du BGP et ramener le tout via tunnel ou vous le souhaitez. (en quelque sorte, vous fabriquez votre propre tunnelbroker).

 

Et donc, BGP ?

Je ne vais pas vous expliquer en détail ce qu’est BGP, mais je vais plutôt tenter d’expliquer brièvement comment celui-ci fait fonctionner internet. Je vous invite à consulter votre moteur de recherche favoris ou à attendre un prochain billet de blog sur le sujet de ma part 😉

Internet, est globalement constitués d’une multitude de réseaux, tels que celui de votre fournisseur d’accès, ovh ou online par exemples. Cependant, pour que tous ces réseaux puissent communiquer ensemble, il faut 2 choses:

– Que 2 personnes n’utilise pas le même espace (adresse ip ou numéro d’as).

– Que tout les réseaux puissent s’échanger leurs routes (même ceux situés à l’autre bout de la terre).

Pour éviter de se marcher dessus, une hiérarchie à été mise en place. L’IANA à délégués du pouvoir à 5 associations qui gère le rôle de coordinateurs sur chaque continent. Les opérateurs s’enregistrent chez ces coordinateurs et demande des ressources. Le coordinateur pour l’Europe s’appelle le RIPE NCC. Pour s’adresser à lui, il faut en être membre, et je ne vous cache pas que cela à un coût important pour un hobyist. Cependant, rassurez-vous, le RIPE NCC à mi en place un programme de sponsor. Vous pouvez donc vous adresser à un membre pour obtenir les précieuses ressources convoitées. Je reviendrai sur ce point plus tard.

 

Le second point est que votre réseau doit-être visible par tous. Pour arriver à cela, tout les réseaux sont connectés ensemble de manière direct ou indirect. C’est là qu’intervient BGP. A tout hasard, prenons pour exemple un réseau appelé TESTNET. Vous souhaitez l’annoncer au reste du monde, vous allez donc vous connecter à un opérateur (via bgp) qui sera en mesure de dire pour rejoindre TESTNET, vous pouvez passer par MOI. Ensuite,  l’opérateur a aussi des connexions BGP avec d’autres opérateurs. Vos annonces vont donc circuler via cet opérateur vers les autres réseaux et de cette manière tout internet saura comment rejoindre votre réseau. Vous pouvez bien évidemment vous connecter à plusieurs opérateurs en même temps.

Il est important de comprendre ici que HE n’est pas le seul opérateur et qu’un paquet peut traverser des dizaines d’opérateurs avant d’arriver à destination.  Je reviendrai plus en détail sur les types de réseaux que vous pouvez traverser sur un article dédié à bgp (peering, transit, point d’échange, …)

 

Exemple pour rejoindre le réseau de Steam.
Dans l’exemple, ci-dessous, on voit que je traverse 3 réseaux (as_path). Un réseau est identifié par un numéro d’AS (136620, 174 et 11404)

69.36.224.0/19     via 10.192.252.141 on edge-lon1-edp [EDGE_LON1 2018-05-25 from 10.192.252.4] * (100/?) [AS11404i]
	Type: BGP unicast univ
	BGP.origin: IGP
	BGP.as_path: 136620 174 11404
	BGP.next_hop: 10.192.252.4
	BGP.med: 0
	BGP.local_pref: 100

Je sais que ce sujet, n’est pas des plus simples, mais je vous recommande vivement de faire vos propres recherches pour comprendre tout cela plus en détail avant de continuer.

Donc, maintenant, comment on s’y prend ?

Obtenir un range d’ip et un numéro d’AS

Pour l’obtention de ces ressources, il vous faudra vous adresser à un LIR membre du ripe. Niveau justification, il faudra signer un agrément (provenant du ripe ncc) , justifier votre identité ainsi que le fait que vous allez au moins disposer de 2 opérateurs (il faut justifier le fait d’avoir 2 opérateurs pour obtenir un numéro d’AS). Rassurez-vous, cela est très simple, HE et NETASSIST fournissent des tunnels bgp gratuitement 😉

Nivaux cout un numéro d’as peut coûter entre 50 et 75€ une fois si on choisit un LIR correcte.

 

Pour la partie range d’ip, vous avez 2 possibilités: un range de type PA ou PI.

PA ou provider assigned: cela veut dire que le LIR vous délègue une partie de son range à votre nom. Le coût est beaucoup moins cher et vous pouvez obtenir bien plus d’ip de la sorte. Par contre, si le LIR arrête ses activités, vous perdez votre range d’ip. (c’est bien évidemment très rare)

PI ou provider indépendant: cela signifie que le ripe vous délègue un range en direct. Cependant, le cout annuel est plus élevé, car le ripe facture le LIR pour le maintien de ce type de ressources.

Le numéro d’AS est également considéré comme une ressource PI, cependant le ripe ne facture pas de frais annuel. Pour détenir vos ressources PI il faut passer par un membre du ripe (LIR), mais vous pouvez changer de membre sans aucun problème. Par contre, la seule manière de s’adresser en direct au ripe est d’en être membre.

 

Enfin, vu que vous avez vos ressources assignées directement dans la base du ripe (pa ou pi), vous pouvez indiquer vos informations et donc avoir une géolocalisation correcte. Même l’adresse abuse sera la votre (n’en profitez pas hein).

 

Si vous souhaitez trouver un membre du ripe (LIR), je devrais pouvoir vous aider. N’hésitez pas à m’envoyer un e-mail via le formulaire de contact du site.

Annoncer votre range

Pour annoncer via HE (qui est pour moi la solution la plus simple), suivez les étapes suivantes:

– Créez-vous un compte HE

– Créez un tunnel de type BGP

– Vous allez devoir envoyer un mail à ipv6@he.net afin de leur demander d’autoriser votre range d’ip. Pour cela, donnez-leur en copie un lien vers les objets créer dans la base de données du ripe et utilisez le mail repris dans la db du ripe pour les contacter. Il pourront simplement se rendre compte que c’est bien vous et ne demanderont pas de justificatif supplémentaire.

– Configurez votre tunnel 6to4 comme vous le feriez pour un tunnel classique.

– Configurez votre session BGP par-dessus pour annoncer votre range d’ip avec votre numéro d’AS. (je ferai un article sur ce point, mais internet regorge de tutoriels pour le faire).

Enfin, utilisez votre range dans votre réseau tout comme si c’était un tunnel HE classique.

 

Conclusion

Si vous êtes parvenu à réaliser tout cela, félicitation, vous êtes opérateur au sens réseau du terme.

J’attire cependant votre attention que vous ne l’êtes pas au niveau légal. Le fait de détenir votre propre abuse vous permettra la gestion des cas simples (port scan, hack, …), mais si vous donnez un accès à un tiers qui l’utilise pour des délits important (tati martine adepte de pédobear), vous restez responsable. Si vous voulez monter un vrai opérateur qui fournit des services à des tiers, une déclaration arcep (ou équivalent) reste indispensable.

 

Enfin, je sais que cet article survole assez bien l’aspect technique, mais c’est le but. Il présente une piste, mais ne donne pas toute la solution. Si vous souhaitez que je rentre un peu plus dans les détails, je le ferai volontiers par l’intermédiaire d’autres articles.

Enfin, il n’existe pas que HE comme opérateur fournissant du BGP, vous pouvez même les combiner pour avoir une certaine redondance. Vous trouverez une liste sur le site suivant http://bgp.services

 

Bon amusement et bienvenue dans le monde du routage 😉

 

 

4 commentaires

  1. Merci pour l’article !

    J’aimerais m’auto-héberger avec edpnet. Ça te semble viable ?

    Ils fournissent un préfixe statique /56 même pour les abonnements de particulier (ce qui donne 256 réseaux /64) et on peut configurer le reverse avec un abo professionnel (d’après la réponse que j’ai eu du support).

    1. En effet, l’ipv6 Edpnet est fixe sur du pro ou du particulier.
      Par contre, je leurs ais jamais demandé pour changer un reverse IPv6 (uniquement en v4).
      Si tu dispose de plusieurs accès internet tu devras assigner l’IP de chaque connexion à ton serveur.
      Enfin si tu es bien situé , tu peux atteindre 35mbps d’up donc c’est vraiment pas mal du tout. Sa dépend de ce que tu vas héberger.
      Juste un dernier petit conseil. Utilise un réseau séparé pour y mettre ton serveur, sa serait dommage qu’en cas de souci de sécurité ton lan soit exposé.

      1. Pour le reverse, effectivement, je me souviens pas si c’est possible pour IPv6. Je vais leur demander.

        Yep, j’ai un routeur OpenWRT que je vais utiliser pour isoler mes réseaux par VLAN.

        Merci pour tes conseils !

        1. Après un reverse n’est pas indispensable sauf dans des cas comme l’hébergement d’un serveur mail. Tu peux toujours utiliser un petit vps en relais qui dispose d’ip fixe / reverse valide.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.