IPv6 » Historique » Version 10
Bernard Urban, 29/09/2011 20:27
1 | 1 | Laurent GUERBY | h1. IPv6 |
---|---|---|---|
2 | 1 | Laurent GUERBY | |
3 | 1 | Laurent GUERBY | Information about IPv6 |
4 | 1 | Laurent GUERBY | |
5 | 1 | Laurent GUERBY | Issue #35 |
6 | 1 | Laurent GUERBY | |
7 | 2 | Laurent GUERBY | h2. Links |
8 | 2 | Laurent GUERBY | |
9 | 5 | Laurent GUERBY | General |
10 | 5 | Laurent GUERBY | |
11 | 2 | Laurent GUERBY | * http://en.wikipedia.org/wiki/ICMPv6 |
12 | 3 | Laurent GUERBY | * http://en.wikipedia.org/wiki/Neighbor_Discovery_Protocol |
13 | 4 | Laurent GUERBY | * http://en.wikipedia.org/wiki/Radvd |
14 | 4 | Laurent GUERBY | * http://en.wikipedia.org/wiki/DHCPv6 |
15 | 5 | Laurent GUERBY | |
16 | 5 | Laurent GUERBY | Linux |
17 | 5 | Laurent GUERBY | |
18 | 5 | Laurent GUERBY | * http://madduck.net/docs/ipv6/ |
19 | 5 | Laurent GUERBY | * http://tldp.org/HOWTO/Linux+IPv6-HOWTO/ |
20 | 2 | Laurent GUERBY | |
21 | 1 | Laurent GUERBY | h2. How to enable routing for /56 ? |
22 | 1 | Laurent GUERBY | |
23 | 1 | Laurent GUERBY | Currently each IPv4 delivered by tetaneutral.net is matched by a /56 IPv6 (mapping /24 = 256 IPv4 <=> /48 = 256 /56 IPv6). |
24 | 7 | Jérôme Nicolle | |
25 | 7 | Jérôme Nicolle | As tetaneutral.net is a simple flat ethernet network, all machines are on the same broadcast domain. In order to route /56s we must : |
26 | 7 | Jérôme Nicolle | - Assign interconexion subnets. Current recommendation is to provide /112s matched to (but outside) of the corresponding /56 |
27 | 7 | Jérôme Nicolle | - Add a local static route for this subnet to h3 and gw (admin required) |
28 | 7 | Jérôme Nicolle | |
29 | 8 | Laurent GUERBY | h2. Discussions |
30 | 1 | Laurent GUERBY | |
31 | 8 | Laurent GUERBY | > J'ai fait quelques essais: VM configuré en routeur, openvpn entre la VM |
32 | 8 | Laurent GUERBY | > et ma machine, histoire de simuler des interfaces. J'ai essayé radvd |
33 | 8 | Laurent GUERBY | > comme des définitions manuelles des adresses IPv6. |
34 | 8 | Laurent GUERBY | > |
35 | 8 | Laurent GUERBY | > Bon, ça marche depuis la VM mais pas depuis chez moi (wget |
36 | 8 | Laurent GUERBY | > http://ipv6.google.com), même si les paquets IPv6 (vu avec tcpdump) |
37 | 8 | Laurent GUERBY | > partent bien de la VM vers l'internet. Mais il n'y a pas de retour. |
38 | 8 | Laurent GUERBY | > |
39 | 8 | Laurent GUERBY | > Après quelques cogitations et la lecture de ceci: |
40 | 8 | Laurent GUERBY | > http://www.fdn.fr/IPv6-a-la-maison.html j'en arrive à ces |
41 | 8 | Laurent GUERBY | > réflexions: |
42 | 8 | Laurent GUERBY | > |
43 | 8 | Laurent GUERBY | > 1) Dans le blog FDN ci-dessus l'adresse IPv6 affectée au ppp0 n'est pas |
44 | 8 | Laurent GUERBY | > dans son /48; ce qui voudrait dire qu'il n'y a pas de raison d'affecter |
45 | 8 | Laurent GUERBY | > une IPv6 du /56 au eth0 des VM tetaneutral. |
46 | 8 | Laurent GUERBY | > |
47 | 8 | Laurent GUERBY | > 2) Pour faire marcher une telle config à FDN, le routeur FDN en amont du |
48 | 8 | Laurent GUERBY | > modem/routeur de l'abonné devrait avoir une route du type: |
49 | 8 | Laurent GUERBY | > ip -6 route add range/48 dev ppp-abonné via link-local-ppp-abonné |
50 | 8 | Laurent GUERBY | > soit chez nous: |
51 | 8 | Laurent GUERBY | > ip -6 route add range/56 dev eth0-vm via link-local-eth0-vm |
52 | 8 | Laurent GUERBY | > |
53 | 8 | Laurent GUERBY | > > du /56 via une interconnection explicite entre le routeur de |
54 | 8 | Laurent GUERBY | > > tetaneutral.net et un routeur chez le membre ? |
55 | 8 | Laurent GUERBY | > |
56 | 8 | Laurent GUERBY | > Un lien openvpn? |
57 | 8 | Laurent GUERBY | |
58 | 8 | Laurent GUERBY | Bonsoir, |
59 | 8 | Laurent GUERBY | |
60 | 8 | Laurent GUERBY | On peut rajouter une regle de routage comme tu le suggere, |
61 | 8 | Laurent GUERBY | reste a choisir les details pratiques. |
62 | 8 | Laurent GUERBY | |
63 | 8 | Laurent GUERBY | Pour la link-local coté routeur on a choisi fe80::31 en statique il |
64 | 8 | Laurent GUERBY | reste a choisir une regle pour attribuer le link local coté client. |
65 | 8 | Laurent GUERBY | |
66 | 8 | Laurent GUERBY | Une regle automatique basée sur l'IPv4 est en place pour |
67 | 8 | Laurent GUERBY | l'attribution du subnet IPv6 : |
68 | 8 | Laurent GUERBY | |
69 | 8 | Laurent GUERBY | http://wiki.tetaneutral.net/index.php/Architecture |
70 | 8 | Laurent GUERBY | |
71 | 8 | Laurent GUERBY | Une regle similaire pour le routage donnerait par exemple fe80::81:XY |
72 | 8 | Laurent GUERBY | ou XY est le dernier octet de l'IPv4 ecrit en hexadecimal |
73 | 8 | Laurent GUERBY | pour la link local coté client. |
74 | 8 | Laurent GUERBY | |
75 | 8 | Laurent GUERBY | L'avantage d'une regle statique vs le SLAAC c'est que c'est un peu plus |
76 | 8 | Laurent GUERBY | flexible coté client sur le choix de l'equipement routeur. |
77 | 8 | Laurent GUERBY | |
78 | 8 | Laurent GUERBY | L'avantage du routé est bien sur la flexibilité et la sécurisation |
79 | 8 | Laurent GUERBY | potentielle, l'inconvenient est qu'avec nos equipements actuels peu |
80 | 8 | Laurent GUERBY | puissant on perdra un peu en debit mais ça se corrigera avec |
81 | 8 | Laurent GUERBY | de nouveaux equipements. |
82 | 8 | Laurent GUERBY | |
83 | 8 | Laurent GUERBY | Je suis vraiment curieux de savoir comment font les autres hebergeurs |
84 | 8 | Laurent GUERBY | dans le monde IPv6, ceux auxquels j'ai acces ne proposent pas de |
85 | 8 | Laurent GUERBY | routage, simplement ce que propose tetaneutral.net actuellement. |
86 | 8 | Laurent GUERBY | |
87 | 8 | Laurent GUERBY | Suggestions ? |
88 | 8 | Laurent GUERBY | |
89 | 9 | Bernard Urban | h2. Connectivité IPv6 complète depuis chez vous en quelques étapes simples +(en cours d'édition)+ |
90 | 9 | Bernard Urban | |
91 | 10 | Bernard Urban | Connectivité complète signifie que toutes vos machines pouvant fonctionner en IPv6 peuvent accéder des sites IPv6 externes mais surtout être joignables de l'extérieur sur une adresse IPv6 propre. Pas de NAT ou autre bidouille de ce genre. Implications en terme d'autohébergement et sécurité laissées en exercice. |
92 | 9 | Bernard Urban | |
93 | 9 | Bernard Urban | Pour bien comprendre ce qui suit, il est recommandé |
94 | 10 | Bernard Urban | d'avoir un peu potassé les hyperliens plus haut et mieux encore d'avoir joué avec l'IPv6 sur votre réseau local maison en utilisant par exemple des adresses ULA. |
95 | 1 | Laurent GUERBY | |
96 | 10 | Bernard Urban | h3. Etape 1: obtenir une machine virtuelle Tetaneutral. |
97 | 10 | Bernard Urban | |
98 | 10 | Bernard Urban | Celle-ci (on l'appellera VM dans la suite) sera configurée par défaut comme suit dans /etc/network/interfaces du point de vue IPv6: |
99 | 9 | Bernard Urban | <pre> |
100 | 9 | Bernard Urban | iface eth0 inet6 static |
101 | 9 | Bernard Urban | address 2a01:6600:80XX:YY00::1 |
102 | 1 | Laurent GUERBY | netmask 56 |
103 | 1 | Laurent GUERBY | gateway fe80::31 |
104 | 1 | Laurent GUERBY | </pre> |
105 | 1 | Laurent GUERBY | |
106 | 10 | Bernard Urban | où XX et YY sont les versions hexadécimales des xx et yy décimaux de votre (unique!) adresse IPv4 de la forme 91.224.xx.yy. |
107 | 1 | Laurent GUERBY | |
108 | 10 | Bernard Urban | Voyons ce qu'implique la prise en compte par le système |
109 | 10 | Bernard Urban | de ce fragment de /etc/network/interfaces. Il dit que: |
110 | 10 | Bernard Urban | # l'adresse 2a01:6600:80XX:YY00::1 est affectée à eth0, ce qui signifie que votre VM est accessible à cette adresse depuis l'intérieur de la VM comme depuis l'extérieur par toutes les machines du même segment réseau que eth0 |
111 | 10 | Bernard Urban | # les paquets passant par votre VM peuvent atteindre les adresses de la plage 2a01:6600:80XX:YY00::/56 en étant envoyés en sortie de l'interface eth0 |
112 | 10 | Bernard Urban | |
113 | 10 | Bernard Urban | La plage 2a01:6600:80XX:YY00::/56 a été allouée par tetaneutral à votre VM. Notre problème est d'allouer une partie de ces adresses à des machines de notre domicile en utilisant l'accès que nous avons (en IPv4!) à la VM. |
114 | 10 | Bernard Urban | |
115 | 10 | Bernard Urban | Avec cette configuration, vous pouvez héberger sur la VM des milliards de serveurs avec des adresses IPv6 différentes, il suffit de les ajouter à eth0 par une commande du type: |
116 | 10 | Bernard Urban | <pre> |
117 | 10 | Bernard Urban | ip -6 address add une-adresse-ipv6-de votre-plage/56 dev eth0 |
118 | 10 | Bernard Urban | </pre> |
119 | 10 | Bernard Urban | (le /56 n'est pas absolument nécessaire, il évite juste de rajouter une route plus spécifique pour atteindre votre nouvelle adresse IPv6 depuis votre VM, route qui s'avère redondante) |
120 | 10 | Bernard Urban | |
121 | 10 | Bernard Urban | |
122 | 10 | Bernard Urban | Le lecteur attentif aura noté que cette configuration déclare que toutes les adresses de votre plage sont situées derrière eth0, en dehors de la partie contrôlée par votre VM, et il semble impossible alors d'en distraire une partie. Il y a au moins deux solutions à ce problème: |
123 | 10 | Bernard Urban | # S'arranger pour que les segments réseau de votre domicile fassent partie de celui partant de eth0 sur la VM. Celà revient techniquement à bridger ces segments réseaux. Cette solution a cependant des inconvénients en terme de configurabilité et de sécurité. |
124 | 10 | Bernard Urban | # Réduire la plage IPv6 allouée derrière l'eth0 de la VM et réallouer le solde à votre réseau local maison, par des techniques de routage. C'est ce qu'on va décrire dans la suite. Mais d'abord, on a besoin d'un peu de collaboration de tetaneutral. |
125 | 9 | Bernard Urban | |
126 | 9 | Bernard Urban | h3. Etape 2: faire router votre /56 par Tetaneutral |
127 | 9 | Bernard Urban | |
128 | 9 | Bernard Urban | h3. Etape 3: simuler un lien ethernet entre une machine à la maison et cette VM. |
129 | 9 | Bernard Urban | |
130 | 9 | Bernard Urban | Je vais décrire la méthode openvpn, mais il semble qu'on puisse le faire aussi avec un ssh pas trop ancien. |
131 | 9 | Bernard Urban | |
132 | 9 | Bernard Urban | h3. Etape 4: passer la VM en mode routeur et annoncer des routes pour votre réseau à la maison avec radvd |
133 | 9 | Bernard Urban | |
134 | 9 | Bernard Urban | h3. Etape 5: bridger l'"ethernet" entre votre machine à la maison et la VM, avec celui de votre domicile |
135 | 9 | Bernard Urban | |
136 | 8 | Laurent GUERBY | h2. FAQ |
137 | 6 | Laurent GUERBY | |
138 | 6 | Laurent GUERBY | * How to ping the link-local gateway? |
139 | 6 | Laurent GUERBY | |
140 | 6 | Laurent GUERBY | Using scoped addresses: |
141 | 6 | Laurent GUERBY | <pre> |
142 | 6 | Laurent GUERBY | ping6 fe80::31%eth0 |
143 | 6 | Laurent GUERBY | </pre> |