Informations :
Dates
- Publish : : Wednesday 13 july 2016
- Modification : Sunday 17 july 2016
- 1616 views
Share :
Cette page est en cours de rédaction...
Bonjour, je vais expliquer comment configurer la pile réseau IPv6 d'un serveur dedié d'Online.net html d'une install Proxmox v4.
Je vais faire quelques tests avec différentes configurations (à faire). En voici une.
Configuration
Pour informations je n'ai qu'une IPv4 publique.
J'ai configuré un autre bridge pour les VMs et CTs
Sur l'hôte
Il faut configurer le client DHClient6 et lui envoyer notre DUID de notre sous-réseau.
vi /etc/dhcp/dhclient6.conf
Script avec 4 lignes
001interface "vmbr0" { 002 send dhcp6.client-id "VOTRE_DUID"; 003 request; 004}
A partir de ce moment on peut envoyer la requête dhclient -1 -cf /etc/dhcp/dhclient6.conf -v -6 -P vmbr0
Cà devrait vous retourner quelque chose come cela :
Script avec 51 lignes
001# dhclient -cf /etc/dhcp/dhclient6.conf -6 -P -v vmbr0 002Internet Systems Consortium DHCP Client 4.2.4 003Copyright 2004-2012 Internet Systems Consortium. 004All rights reserved. 005For info, please visit https://www.isc.org/software/dhcp/ 006 007Bound to *:546 008Listening on Socket/vmbr0 009Sending on Socket/vmbr0 010PRC: Soliciting for leases (INIT). 011XMT: Forming Solicit, 0 ms elapsed. 012XMT: X-- IA_PD 06:c7:93:f5 013XMT: | X-- Request renew in +3600 014XMT: | X-- Request rebind in +5400 015XMT: Solicit on vmbr0, interval 1070ms. 016RCV: Advertise message on vmbr0 from fe80::4501:b8ee:fe20:85bf. 017RCV: X-- Preference 255. 018RCV: X-- IA_PD 06:c7:93:f5 019RCV: | X-- starts 1468732865 020RCV: | X-- t1 - renew +43200 021RCV: | X-- t2 - rebind +172800 022RCV: | X-- [Options] 023RCV: | | X-- IAPREFIX 2001:bc8:COMPTE:SOUS-BLOC::/56 024RCV: | | | X-- Preferred lifetime 27000. 025RCV: | | | X-- Max lifetime 43200. 026RCV: X-- Server ID: 00:01:00:01:1b:ac:bc:2d:10:80:4b:9b:0a:f8 027RCV: Advertisement immediately selected. 028PRC: Selecting best advertised lease. 029PRC: Considering best lease. 030PRC: X-- Initial candidate 00:01:00:01:1b:ac:bc:2d:10:80:4b:9b:0a:f8 (s: 151, p: 255). 031XMT: Forming Request, 0 ms elapsed. 032XMT: X-- IA_PD 06:c7:93:f5 033XMT: | X-- Requested renew +3600 034XMT: | X-- Requested rebind +5400 035XMT: | | X-- IAPREFIX 2001:bc8:COMPTE:SOUS-BLOC::/56 036XMT: | | | X-- Preferred lifetime +7200 037XMT: | | | X-- Max lifetime +7500 038XMT: V IA_PD appended. 039XMT: Request on eth0, interval 1030ms. 040RCV: Reply message on eth0 from fe80::4501:b8ee:fe20:85bf. 041RCV: X-- Preference 255. 042RCV: X-- IA_PD 06:c7:93:f5 043RCV: | X-- starts 1468732865 044RCV: | X-- t1 - renew +43200 045RCV: | X-- t2 - rebind +172800 046RCV: | X-- [Options] 047RCV: | | X-- IAPREFIX 2001:bc8:COMPTE:SOUS-BLOC::/56 048RCV: | | | X-- Preferred lifetime 7200. 049RCV: | | | X-- Max lifetime 43200. 050RCV: X-- Server ID: 00:01:00:01:1b:ac:bc:2d:10:80:4b:9b:0a:f8 051PRC: Bound to lease 00:01:00:01:1b:ac:bc:2d:10:80:4b:9b:0a:f8.
Le fichier interfaces
Logiquement on pourait mettre :
vi /etc/network/interfaces
Script avec 4 lignes
001iface vmbr0 inet6 static 002 address 2001:bc8:COMPTE:SOUS-BLOC:: 003 netmask 56 004 pre-up dhclient -1 -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.eth0.pid -v -nw -6 -P vmbr0
Sur un serveur Linux Promox 4.4.13-1-pve chez Online.net, il faut mettre en auto l'interface inet6 (todo faire un script en RC.99).
vi /etc/network/interfaces
Script avec 5 lignes
001iface vmbr0 inet6 auto 002#iface vmbr0 inet6 static 003# address 2001:bc8:COMPTE:SOUS-BLOC:: 004# netmask 56 005# pre-up dhclient -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.eth0.pid -v -nw -6 -P vmbr0
Puis envoyer à la main :/ le DHClient et le ifconfig
Script avec 2 lignes
001dhclient -1 -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.eth0.pid -v -nw -6 -P vmbr0 002ip -6 addr add 2001:bc8:COMPTE:SOUS-BLOC::/56 dev vmbr0
Puis on doit pouvoir pinguer : ping6 -nc2 www.zw3b.fr
Le fichier SYSControl
vi /etc/sysctl.conf
Script avec 14 lignes
001# IPv6 002#net.ipv6.conf.default.forwarding=1 003net.ipv6.conf.all.forwarding=1 004#net.ipv6.conf.default.proxy_ndp=1 005#net.ipv6.conf.all.proxy_ndp=1 006# ONLINE IPv6 007net.ipv6.conf.all.accept_ra = 1 008net.ipv6.conf.all.accept_ra_defrtr = 1 009net.ipv6.conf.all.accept_ra_from_local = 0 010net.ipv6.conf.all.accept_ra_min_hop_limit = 1 011net.ipv6.conf.all.accept_ra_mtu = 1 012net.ipv6.conf.all.accept_ra_pinfo = 1 013net.ipv6.conf.all.accept_ra_rt_info_max_plen = 0 014net.ipv6.conf.all.accept_ra_rtr_pref = 1
Les VMs et Conteneurs
Ici j'ai ajouté un bridge pour les VMs
Script avec 8 lignes
001iface vmbr1 inet6 static 002 address 2001:bc8:25bb:ff00:3b:1ab3:: 003 netmask 64 004 up ip -6 route add 2001:bc8:25bb:ff00::/56 dev vmbr0 005 up ip -6 route add default via 2001:bc8:25bb:ff00:: 006# post-up ip -6 address add 2001:bc8:25bb:ff00:3b:1ab3::1 dev vmbr1 007 down ip -6 route del default via 2001:bc8:25bb:ff00:: 008 down ip -6 route del 2001:bc8:25bb:ff00::/56 dev vmbr0
On active le forwarding au système (si ce n'est pas déjà fait) sysctl -w net.ipv6.conf.all.forwarding=1
pour transférer les requêtes entre les interfaces :
A mon goût on peut faire mieux.. Là c'est optimal (on pourait séparer (les) d'autres VLAN).
On peut s'occuper des VMs et des conteners.
Sur une VM (Virtual Machine) ou dans un container (CT)
vi /etc/network/interfaces
Script avec 6 lignes
001iface eth0 inet6 static 002 address 2001:bc8:25bb:ff00:3b:1ab3:0:10 003 netmask 64 004 gateway 2001:bc8:25bb:ff00:: 005 up ip -6 route add 2001:bc8:25bb:ff00::/56 dev eth0 006 up ip -6 route add default via 2001:bc8:25bb:ff00::
Et hop on : ping6 -nc2 www.zw3b.fr
Commandes utiles
On recherche les voisins
Script avec 4 lignes
001$ ip -6 neigh 0022001:bc8:25bb:ff00:3b:1ab3:0:10 dev vmbr1 lladdr 62:38:34:63:31:65 STALE 003fe80::6038:34ff:fe63:3165 dev vmbr1 lladdr 62:38:34:63:31:65 STALE 004fe80::4603:a7ff:fe30:35bf dev vmbr0 lladdr 44:03:a7:30:35:bf router REACHABLE
On check les routes : route -6
Script avec 35 lignes
001$ route -nA inet6 002Kernel IPv6 routing table 003Destination Next Hop Flag Met Ref Use If 004::/0 :: !n -1 1 364 lo 005::1/128 :: U 256 0 0 lo 0062001:bc8:25bb:ff00::/64 :: U 256 1 2 vmbr1 0072001:bc8:25bb:ff00::/56 :: U 256 0 0 vmbr0 0082001:bc8:25bb:ff00::/56 :: U 1024 0 0 vmbr0 009fe80::/64 :: U 256 0 0 vmbr0 010fe80::/64 :: U 256 0 0 vmbr1 011fe80::/64 :: U 256 0 0 tap101i0 012fe80::/64 :: U 256 0 0 veth102i0 013fe80::/64 :: U 256 0 0 veth100i0 014::/0 fe80::4603:a7ff:fe30:35bf UGDAe 1024 4 183 vmbr0 015::/0 :: !n -1 1 364 lo 016::1/128 :: Un 0 5 61 lo 0172001:bc8:25bb:ff00::/128 :: Un 0 1 0 lo 0182001:bc8:25bb:ff00::/128 :: Un 0 1 0 lo 0192001:bc8:25bb:ff00:3b:1ab3::/128 :: Un 0 2 3 lo 020fe80::/128 :: Un 0 1 0 lo 021fe80::/128 :: Un 0 1 0 lo 022fe80::/128 :: Un 0 1 0 lo 023fe80::/128 :: Un 0 1 0 lo 024fe80::/128 :: Un 0 1 0 lo 025fe80::54e7:a4ff:fe4e:4727/128 :: Un 0 5 12 lo 026fe80::d6ae:52ff:fec7:93f2/128 :: Un 0 5 67 lo 027fe80::e499:1cff:fe45:52d6/128 :: Un 0 1 0 lo 028fe80::fc3d:8cff:fefc:d82a/128 :: Un 0 1 0 lo 029fe80::fcf9:3fff:fe1e:a41f/128 :: Un 0 1 0 lo 030ff00::/8 :: U 256 4 5189 vmbr0 031ff00::/8 :: U 256 4 63 vmbr1 032ff00::/8 :: U 256 0 0 tap101i0 033ff00::/8 :: U 256 0 0 veth102i0 034ff00::/8 :: U 256 0 0 veth100i0 035::/0 :: !n -1 1 364 lo
D'autres commandes IPv6
ip6tables
: Firewall (Netfilter)ping6 www.zw3b.fr
: Temps de réponse dewww.zw3b.frwww. bruttraceroute6 www.zw3b.fr
: Chemin pour accèder àwww.zw3b.frwww. brut
NSLookup IPv6 :
Script avec 11 lignes
001$ nslookup -q=AAAA lab3w.fr 002Server: 62.210.16.6 003Address: 62.210.16.6#53 004 005Non-authoritative answer: 006lab3w.fr has AAAA address 2a02:8428:21b:4e00:3b:1ab3:111:0 007 008Authoritative answers can be found from: 009lab3w.fr nameserver = c.dns.gandi.net. 010lab3w.fr nameserver = a.dns.gandi.net. 011lab3w.fr nameserver = b.dns.gandi.net.
Script avec 10 lignes
001$ nslookup -q=AAAA www.lab3w.fr 002Server: 62.210.16.6 003Address: 62.210.16.6#53 004 005Non-authoritative answer: 006www.lab3w.fr canonical name = web.lab3w.fr. 007web.lab3w.fr canonical name = pow.lab3w.fr. 008pow.lab3w.fr has AAAA address 2a02:8428:21b:4e00:3b:1ab3:111:254 009 010Authoritative answers can be found from:
Script avec 11 lignes
001$ nslookup -q=AAAA zwb.lab3w.fr 002Server: 62.210.16.6 003Address: 62.210.16.6#53 004 005Non-authoritative answer: 006zwb.lab3w.fr has AAAA address 2001:bc8:25bb:ff00:3b:1ab3:: 007 008Authoritative answers can be found from: 009lab3w.fr nameserver = c.dns.gandi.net. 010lab3w.fr nameserver = a.dns.gandi.net. 011lab3w.fr nameserver = b.dns.gandi.net.
Script avec 11 lignes
001$ nslookup -q=AAAA web.zwb.lab3w.fr 002Server: 62.210.16.6 003Address: 62.210.16.6#53 004 005Non-authoritative answer: 006web.zwb.lab3w.fr has AAAA address 2001:bc8:25bb:ff00:3b:1ab3:0:10 007 008Authoritative answers can be found from: 009lab3w.fr nameserver = c.dns.gandi.net. 010lab3w.fr nameserver = a.dns.gandi.net. 011lab3w.fr nameserver = b.dns.gandi.net.
Remerciements
Merci pour le soutient... jour et nuit ^^ au support d'online.net html ... Khalid, Julien, Yann, Christophe, Camille, Flavio et les autres .. ;)