Professional Documents
Culture Documents
1.2 - IPv4 : certaines limites \ IPv6 : des atouts pour un relais de croissance
IPv4 : un espace dadressage gographique ingale restreint avec une rpartition
Le protocole IPv4, finalis en 1983 sadressait alors une communaut restreinte. Ainsi, ladressage dIPv4 est-il prvu sur 32 bits, ce qui permet de disposer dun "stock" de 4,3 milliards dadresses IP environ. A cette poque et avec la vision quavaient alors les responsables, savoir un rseau destin aux militaires et scientifiques (donc assez loigne de ce quallait devenir lInternet que nous connaissons aujourdhui), le stock paraissait plus que suffisant.
Aujourdhui, ce stock dadresses IPv4 est trs entam et si prs de 47% des adresses ne sont pas attribues (parmi le stock total dadresses), la rpartition gographique en est trs ingale. Les adresses alloues (destines tre utilises par un registre rgional ou par des organisations pre-RIR) reprsentent la majorit du stock et sont destines essentiellement la zone amricaine aux dpens de lAsie qui prsente pourtant un important potentiel de dveloppement (Chine, Inde). Il est galement noter, que parmi le total des adresses IPv4 disponibles, 53% ont t attribues directement des organisations (amricaines pour la plupart), avant lapparition des RIR qui ne les contrlent donc pas. Ainsi, en tenant compte de ces organisations pre-RIR, on peut estimer, fin 2001, que 74% des adresses alloues le sont pour lAmrique du Nord, 17% pour lEurope et 9% pour lAsie. IPv4 est face une explosion des besoins Outre la croissance organique encore forte dInternet dans le monde entier (particulirement en Asie o le potentiel de croissance est trs lev et les ressources en adresses trs faibles), bon nombre dapplications nouvelles, consommatrices dadresses IP devraient se dvelopper : larrive des services mobiles autour du GPRS. les accs haut dbit et le mode "always on". llectronique connecte et les vhicules communicants, les applications domotiques et rseaux de capteurs IPv4 : un protocole non pens pour un usage commercial dInternet Prvu lorigine pour des usages non commerciaux, IPv4 na pas t conu pour assurer les fonctions de QoS attendues aujourdhui, ni pour assurer les fonctions dauto-configuration ou Multicast, ou encore la scurit, essentielles dans lInternet commercial moderne. Des solutions ont t trouves pour assurer ces fonctions, alourdissant le protocole de couches supplmentaires, ou pour doper artificiellement la dure de vie du stock dadresses (NAT), faisant notamment exploser la complexit des tables de routage. Nous sommes ds prsent dans une priode de gestion de la pnurie dadresses IP Cette gestion de la pnurie dadresses se traduit par des politiques drastiques dattribution dadresses IPv4 pratiques par les RIR. De plus, lemploi gnralis des NAT permet de retarder la pnurie, mais cela alourdit la gestion des rseaux et constitue un frein au dveloppement dapplications temps rel et P2P. Ainsi, toutes choses gales par ailleurs, on peut estimer un puisement du stock dadresses IPv4 dici 2010. Limmense capacit dadressage dIPv6 justifie elle seule, le passage au nouveau protocole Malgr les divers avantages techniques dIPv6 dcrits ci-aprs, lessentiel, de lavis gnral des experts, reste lespace dadressage large, qui permettra de faire face aux besoins engendrs par le dveloppement des nouvelles applications always on et de rtablir lusage du mode end-to-end qui est le principal apport dIPv6 au niveau des applicatifs. Les
autres avantages techniques, bien que rels, ne prsentent pour lheure que des potentiels intressants, mais ne sont pas latout premier dIPv6 : Adressage hirarchique pour optimiser le routage, Autoconfiguration, IPSec natif, Multicast, Mobile IPv6. IPv6 prsente galement plusieurs avantages permettant de mieux grer la QoS mais qui ne sont pas encore significatifs. De manire gnrale, on considre que dans un premier temps, la QoS sera gre de la mme faon sous IPv6 que ce que lon connat aujourdhui sous IPv4.
Les 64 premiers bits de l'adresse IPv6 (prfixe) servent gnralement l'adresse de sous rseau, tandis que les 64 bits suivants identifient l'hte l'intrieur du sous rseau : ce dcoupage joue un rle un peu similaire aux masques de sous rseau d'IPv4. Les "0" les plus gauche des mots de 16 bits ne se figurent pas dans l'criture.
Fedc: 6482: cafe: ba05:a200:e8ff:fe65:df9a /64 L'adresse de boucle :1 a le mme rle qu'une adresse IPv4 127.0.0.1. Lorsqu'une machine utilise cette adresse, elle s'envoie des paquets IPv6 elle mme. L'adresse indtermine, cette adresse 0:0:0:0:0:0:0:0 (ou encore note "::") est utilise pendant l'initialisation de l'adresse IPv6 d'une machine. C'est une phase transitoire. Un ou plusieurs groupes de 4 zros conscutifs peuvent tre remplacs par un double deux-points : . C'est ainsi que l'adresse 8000:0000:0000:0000:0123:4567:89ab: cdef deviant: cdef 8000: 123:4567:89ab:
Il est pourtant parfois ncessaire de manipuler littralement des adresses IPv6. Le caractre ":" utilis pour sparer les mots peut crer des ambiguts. C'est le cas avec les URL o il est aussi utilis pour indiquer le numro de port. Ainsi l'URL http://2001:1234:12::1:8000/, peut aussi bien indiquer le port 8000 sur la machine Ayant l'adresse IPv6 2001:1234:12:1, que la machine 2001:1234:12:1:8000 en utilisant Le port par dfaut. Pour lever cette ambigut, le RFC 2732 propose d'inclure l'adresse IPv6 entre "[ ]". L'adresse prcdente s'crirait : http://[2001:1234:12::1:8000]/
Les adresses Multicast : Le protocole IPv6 gnralise l'utilisation des adresses Multicast qui remplacent les adresses de type "broadcast" (diffusion) qui n'existent plus en IPv6. La raison de cette disparition est que l'mission d'un paquet broadcast tait trs pnalisante pour toutes les machines se trouvant sur un mme lien. Une adresse Multicast est une adresse dsignant un groupe d'interfaces donn. Une interface est libre de s'abonner un groupe ou de le quitter tout moment, c'est donc moins pnalisant qu'en IPv4. Le format des adresses Multicast est le suivant : ff01 : noeud local, les paquets ne quittent pas l'interface. ff02 : lien local, les paquets ne quittent pas le lien. ff05 : site local, les paquets ne quittent pas le site. Voici un exemple intressant d'utilisation d'adresse Multicast qui vous permet de dtecter les htes actifs sur le lien local :
# ping6 -I eth0 ff02::1 PING ff02::1(ff02::1) from fe80::20e:35ff:fe8f:6c99 eth2: 56 data bytes 64 bytes from ::1: icmp_seq=1 ttl=64 time=0.048 ms 64 bytes from fe80::20d:61ff:fe22:3476: icmp_seq=1 ttl=64 time=9.05 ms (DUP!) 64 bytes from ::1: icmp_seq=2 ttl=64 time=0.045 ms 64 bytes from fe80::20d:61ff:fe22:3476 icmp_seq=2 ttl=64 time=3.33 ms (DUP!)
64 bytes from ::1: icmp_seq=3 ttl=64 time=0.037 ms Vous pouvez identifier 2 htes actifs fe80::20e:35ff:fe8f:6c99 (celui d'o est passe la commande) et fe80::20d:61ff:fe22:3476 (qui correspond un autre poste du rseau local). Les adresses Anycast : Anycast est un nouveau type d'adressage. Il identifie qu'un noeud, parmi un groupe de noeuds, doit recevoir l'information. Une adresse Anycast, comme une adresse Multicast, dsigne un groupe d'interfaces, la diffrence qu'un paquet mis avec comme destinataire une adresse Anycast ne sera remis qu' un seul membre du groupe, par exemple le plus proche au sens de la mtrique des protocoles de routage, mme si
Plusieurs interfaces ont rpondu au message. L'interface de destination doit spcifiquement tre configure pour savoir qu'elle est Anycast.
Pour l'instant, une seule adresse Anycast est utilise, elle est rserve au routeur mais dans l'avenir, d'autres pourraient tre dfinies. La porte ou "scope" des adresses, est une nouvelle notion qui n'existait pas en IPv4. En fait une interface ne possde pas une seule adresse IPv6 mais peut en avoir plusieurs. Les quatre portes d'adresses sont : Nud local : il s'agit de l'adresse de loopback. Elle est note : 1/128. Lien local : adressage commun aux machines d'un mme lien physique relies entre elles sans routeur intermdiaire .Ces adresses ont comme prfixe fe80:/64. Seuls les quipements de la couche 2 du modle OSI peuvent utiliser ces adresses pour communiquer entre eux. Cette adresse est obtenue par auto configuration "sans tat". Site local : adressage commun des machines d'un mme site.Par exemple, un site qui n'est pas encore reli Internet peut utiliser ce type d'adresse. C'est un peu le concept des adresses prives en IPv4 (192.168.x.x ou 10.x.x.x). Une adresse site local a comme prfixe fec0:/48 suivi d'un champ de 16 bits permettant de dfinir des sous rseaux. Globale : ce sont des adresses dont le routage est effectu sans restriction. Leur prfixe est 2000:/3, ce qui signifie qu'elles commencent par 001 en binaire. Concrtement, on utilise 2xxx ou 3xxx. Par exemple 2001:7a8:4b09:1bff:feb1:defa est une adresse globale.
Grce aux schmas, nous nous apercevons tout d'abord qu'il existe certaines similitudes entre IPv4 et IPv6. La premire constatation est de voir que l'en-tte IPv6 a t simplifi. Certains en-ttes IPv4 ont t supprims ou rendus optionnels pour rduire dans les situations classiques le cot en
ressources de traitement de la gestion des paquets et pour limiter le surcot en bande passante de l'en-tte IPv6. Champ version : indique la version du protocole utilis, IPv4 ou IPv6. Il sert vrifier que le paquet est bien trait par la bonne couche rseau. Champ priorit : ce champ permet d'indiquer aux routeurs la priorit relative des diffrents datagrammes transmis. Il peut prendre les valeurs allant de 0 15. Champ tiquette de flot : permet de dfinir diffrents flots, que les noeuds du rseau peuvent alors traiter avec un comportement particulier (en termes de gestion des files dattente par exemple). Champ longueur de charge utile : ce champ indique le nombre d'octets d'information qui suivent les en-ttes de base et d'extension. Ce champ contient 16 bits, ce qui permet d'avoir jusqu' 64 Ko de donnes utiles par datagramme.
Champ en-tte suivant : ce champ indique le type du prochain en-tte d'extension. Champ nombre maximum de sauts : ce champ a comme fonction d'viter qu'un Datagramme ne circule indfiniment dans un rseau. La valeur contenue dans ce champ reprsente le nombre de routeurs que Le datagramme peut traverser avant d'tre dtruit.
IPv6 avanc
3.1 - Exploitation de DNS avec IPv6
Le service de noms, qui permet la rsolution d'adresses vers des noms (et vice-versa), est une partie trs importante de la migration d'un site vers IPv6. Les adresses IPv6 sont difficiles retenir du fait de leur notation et de leur longueur. Le systme de gestion des noms de domaines, DNS (Domain Name System), est en partie l pour pallier ce problme. De plus, il est souvent ncessaire dtre enregistr dans un serveur DNS pour accder certaine services qui effectuent un test de correspondance DNS inverse (adresse IP vers nom DNS) afin de sassurer de lauthenticit dun hte. Un noeud IPv6 peut sauto-configurer sans laide dun systme plus coteux quest DHCP. La difficult est alors de savoir comment grer les enregistrements DNS de noeuds dans le cas o ils sont autoriss grer eux-mmes leurs adresses. Cependant, afin de supporter le nouveau schma d'adressage d'IPv6 (adresses sur 128 bits, hirarchie d'adressage...), deux extensions au DNS ont t apportes (RFC 1886) : Un nouveau type d'enregistrement a t cr, AAAA (lenregistrement des adresses Ipv4 tant de type A).
De mme, deux nouveaux domaines ont t crs, le domaine ip6.int et ip6.arpa pour la rsolution inverse Avec la configuration automatique des clients, le maintien de bases de donnes DNS devient trs complexe et fastidieux. A ces fins, il parat trs avantageux dutiliser un service de mises jour dynamiques du DNS. Aprs avoir implment et test notre service de nom, nous avons donc dcid de modifier notre serveur DNS pour rajouter ce module de mises jour. DNS dynamique : un client met jour ladresse associe son nom Le protocole de mises jour dynamique du DNS, appel DNS Update permet de supprimer ou de rajouter des enregistrements en utilisant des formats de messages DNS prvus cet effet [RFC 2136]. Deux types de messages sont utiliss, updateQuery, qui permet au client de rajouter un champ, en donnant sil le souhaite une liste de pr requis, et updateResponse envoy par le serveur sur le rsultat de lopration. Il existe deux modes dutilisation pour mettre jour le DNS : La mise jour est ralise directement par le serveur DHCP. Lorsque celui-ci attribue une adresse et un nom, il va lui mme envoyer les messages DNSUpdate au serveur de noms pour rajouter les enregistrements.
La mise jour est effectue par un utilisateur (administrateur ou autre), en utilisant un outil spcifique appel nsupdate, qui possde des commandes permettant de modifier les enregistrements DNS. Il est ncessaire de spcifier au moins une zone pour la rsolution directe et une pour la rsolution inverse.
Format :
Le format textuel d'un enregistrement AAAA tel qu'il apparat dans le fichier de zone DNS est le suivant : <nom> IN AAAA <adresse> L'adresse est crite suivant la reprsentation classique des adresses IPv6 (RFC 4291). Par exemple, l'adresse IPv6 de la machine Pc1.cnss.ma est publie dans le fichier de zone cnss.ma comme suit : Pc1.cnss.ma. IN AAAA 2001:660:3006:1::1:1 Il est important de noter que toutes les adresses IPv4 et/ou IPv6 correspondant un quipement donn, doivent cohabiter dans le mme fichier de zone renseignant le nom de l'quipement en question. Ainsi, les adresses de ns3.nic.fr sont publies dans le fichier de zone cnss.ma comme suit :
Pc1 IN A 192.134.1.49 IN AAAA 2001:660:3006:1::1:1 Une adresse IPv6 est transforme en un nom de domaine publi sous l'arborescence inverse ip6.arpa de la manire suivante : les 32 demi-octets formant l'adresse IPv6 sont spars par le caractre `.' et concatns dans l'ordre inverse au suffixe ip6.arpa. Par exemple l'adresse 2001:660:3006:1::1:1 (adresse de Pc1.cnss.ma) est transforme en le nom de domaine inverse suivant : 1.0.0.0.1.0.0.0.0.0.0.0.0.0.0.0.1.0.0.0.6.0.0.3.0.6.6.0.1.0.0.2.ip6.arpa. Voici un extrait du fichier de zone DNS inverse :
Message d'interrogation de prsence de serveurs DHCP. Il est mis vers un serveur ou un relais DHCP. Un client met un tel message pour localiser les serveurs DHCP. Elle envoie sa requte en mode multicast vers tous les agents DHCP du lien (adresse FF02::1:2).
Message de prsence de serveurs DHCP. Il est mis en rponse un message sollicitation DHCP afin de communiquer l'adresse IP d'un serveur DHCP. Le destinataire est le client s'il est sur le mme lien que le serveur sinon ce message est adress au relais du client
DHCP Request (Requte DHCP) :
Message mis par le serveur suite une demande du client. Il contient les valeurs des paramtres de configuration demands.
DHCP Confirm (Confirmation DHCP) :
Identique au prcdent message mais un autre serveur DHCP peut rpondre, pas obligatoirement celui qui a allou l'adresse IP.
DHCP Release (Libration DHCP) :
Message d'indication du client de libration des adresses IP pralablement alloues par le serveur.
DHCP Decline (Refus DHCP) :
Message d'indication du client qu'une ou plusieurs adresses affectes sont dj utilises sur son lien.
DHCP Reconfigure-init (Notification de reconfiguration DHCP) :
Message mis par le serveur pour informer le client qu'il a de nouvelles valeurs pour les paramtres de configuration. Le client doit alors commencer une nouvelle transaction pour acqurir ces informations
Message du relais pour vhiculer les messages du client vers le serveur. Le message du client est encapsul dans ce message.
Message gnr par le serveur contenant un message pour le client. Ce message est destination du relais qui extraira un message pour le client afin de le transmettre sur le lien du client
La configuration du routeur DHCP
Router> enable Router# configure terminal Router(config)# ipv6 dhcp pool ntic Router(config-dhcp)# prefix-delegation 2001:0DB8:1263::/48 Router(config-dhcp)# domain-name ntic.ma Router(config-dhcp)# dns-server 2001:0DB8:3000:1263::42 Router(config-dhcp)# exit Router(config)# interface serial 3 Router(config-if)# ipv6 dhcp server dhcp-pool
La configuration du relay DHCP
Cette configuration est ncessaire si votre serveur DHCP se situe sur un autre segment de votre rseau que celle du client DHCP
Router> enable Router# configure terminal Router(config)# interface Ethernet 4/2 Router(config-if) ipv6 dhcp relay destination FE80::250:A2FF:FEBF:A056 Ethernet 1
DHCP Solicit DHCP Advertise DHCP Request DHCP Reply DHCP Confirm DHCP Renew DHCP Rebind
Client DHCP v 6
DHCP Release DHCP Decline DHCP Reconfigure-init DHCP Relay-Forward DHCP Relay-Reply
Serveur DHCP v 6
IPv6 supporte par dfaut les deux architectures classiques d'IPsec : AH et ESP. L'extension d'authentification, ou AH, assure l'authentification et l'intgrit des donnes. L'metteur calcule une signature sur un datagramme et l'met avec le datagramme sur lequel elle porte. Le rcepteur rcupre cette valeur et vrifie qu'elle est correcte. Cette signature peut s'appuyer sur des cls asymtriques et ventuellement des certificats. L'extension ESP (pour Encryption Security Payload) complte la prcdente pour offrir la confidentialit des donnes. Elle permet de chiffrer l'ensemble des paquets (entte IPv6 comprise) ou seulement leur partie transport (tout ce qui se trouve aprs l'entte IP), selon les modes dits repectivement tunnel et transport. Avant l'authentification ou le chiffrement de donnes IP, l'metteur et le receveur doivent convenir des algorithmes et des cls utiliser. Ceci se fait par le protocole IKE (pour Internet Key Exchange, [RFC2409]). Sans dcrire les dtails de ce dernier, il est important de se souvenir que ce protocole ne convient pas, dans l'tat actuel, aux changes multicast. Le trafic multicast passe donc en clair, pour la majorit des cas, dans le rseau.
SEND propose de scuriser NDP, le protocole de voisinage d'IPv6 . La premire proposition est l'utilisation de CGA (Cryptographically Generated Addresses), qui cre des identifiants d'adresses partir d'une cl publique. Ce mcanisme permet de vrifier l'identit de la machine mettrice du paquet NDP.
Pare-feux et filtrage
Plusieurs outils de filtrage existent, et sont mis disposition dans les systmes d'exploitation avec la couche IPv6. Parmi ceux-ci :
Sous Linux, il existe ip6tables, dont l'usage est trs similaire celui de son prdcesseur iptables pour IPv4. Dans les versions BSD, pf permet de filtrer IPv6 de manire assez simple Mac OS s'appuie sur l'utilitaire ipfw (ip6fw) pour offrir le filtrage IPv6. Microsoft fournit galement un pare-feu partir de la version XP SP1, nomm Internet Connexion Firewall puis Windows Firewall. L'utilisateur dfinit une seule configuration, qui s'applique pour IPv4 et IPv6.
le routage interne : cantonn un domaine administratif (ou systme autonome, AS), il permet de distribuer des prfixes du domaine des routeurs du domaine. On trouvera ci-dessous des exemples pour les protocoles de routage internes (IGP): RIP OmnisSwitch Alcatel Cisco ISIS Cisco
le routage externe : il permet un AS d'changer des prfixes rseaux avec des AS voisins. Ces prfixes, une fois redistribus l'intrieur de l'AS, permettent d'avoir la connectivit vers l'Internet mondial. On trouvera ci-dessous des exemples pour le protocole EGP le plus rpandu aujourd'hui : BGP4. Cisco Juniper
Quagga :
Gnralits
Rappelons que la fonction de routage peut tre dcompose en deux temps : le routage effectif des paquets (forwarding) et la construction des tables de routage (routing). Tout routeur IP fait du forwarding mais le routage pouvant tre statique, tous ne font pas du routing. Ces deux fonctions sont typiquement mises en oeuvre par des parties trs distinctes du routeur.
Sur Unix, le noyau effectue le forwarding, alors que le routing est confi un programme extrieur comme Zebra\Quagga, outil qui regroupe un ensemble de systmes de gestion de protocoles de routage. Il offre via un systme unique la possibilit de grer RIP, OSPF, BGP... En pratique, Zebra\Quagga se charge de mettre jour les tables de routage de la machine, sous les ordres des dmons de routage utiliss (cf. schema ci-dessous).
Les dmons que sont Zebra et Quagga sont donc des intermdiaires entre le noyau de Linux et les dmons de routage dynamique. Pour autant, il peuvent rcuprer les routes statiques dfinies directement sous Linux afin de les diffuser via le routage dynamique. Ils permettent
eux-mme de dfinir des routes statiques. Les routages statique et dynamique peuvent donc cohabiter sans problme avec Zebra ou Quagga. L'un des intrts de tels programmes est qu'ils offrent un ensemble d'outils permettant d'inspecter distance d'autres machines sous Zebra\Quagga et d'tudier les actions en cours et les tables de routage. Ils permettent galement de dfinir des routes statiques, des rgles de filtrage ou encore le contrle des changes entre protocoles diffrents. Le dveloppement de Zebra est plus ou moins arrt depuis novembre 2003, mois de sortie de la dernire version de ce logiciel. Il reste nanmoins que c'est un systme pratique, car il regroupe, sous un mme principe, un grand nombre de mthodes de routage dynamique; c'est pourquoi il demeure un outil important pour la gestion de routage dynamique dans des rseaux de type moyen-grand sous Linux. Quagga est le digne successeur du programme Zebra. Il se veut plus ouvert, et surtout plus actif que son prdcesseur. Il est compos, tout comme Zebra, de plusieurs dmons qui acceptent chacun des connexions TCP. Il semble donc facile d'effectuer la configuration de chaque dmon via une connexion telnet.
Programme encore en cours d'volution, Quagga permet la gestion de systmes de routage comme RIPv1, RIPv2, RIPng, OSPFv2, OSPFv3, BGP-4... Si cette connexion aux dmons est trs pratique pour dboguer ou surveiller un routeur, elle n'est pas forcment la plus efficace pour crire ou modifier la configuration du routeur. Le mieux serait plutt de modifier les fichiers de configuration via un diteur, ce qui permet d'utiliser un bon outil d'dition et de prserver les commentaires. L'emplacement des fichiers de configuration de Zebra ou de Quagga dpend du systme Unix utilis et de la manire dont Quagga a t compil. En gnral, les fichiers sont dans /etc/zebra ou dans /etc/quagga. On trouve notamment :
zebra.conf, la configuration gnrale ; ospfd.conf, la configuration du protocole OSPF ; ripd.conf, la configuration du protocole RIP ; ospf6d.conf, la configuration du protocole OSPFv6 ; bgpd.conf, la configuration du protocole BGP.
Venons en maintenant la console d'administration du dmon. On l'atteint en faisant un telnet routeur dmon. Comme on vient de le voir, le nom du dmon est zebra, ospfd, ospf6d ou bien bgp. Certaines commandes ncessiteronnt plus de privilge, ce sont celles qui modifieront l'tat du routeur. La commande enable permet de passer dans cet tat privilgi. Par exemple, pour changer la configuration du routeur ou bien pour rinitialiser une session BGP, vous devrez tre en mode enable.
Logiciel libre sous licence GNU Interface de configuration interactive accessible via telnet Philosophie d'un langage de configuration proche d'IOS de Cisco Supporte les principaux protocoles de routage Il fonctionne avec IPv6.
Installation
Avant d'installer, on doit vrifier le contenue des fichiers des interfaces utiliss durant le routage. Les fichiers en question se trouve:
/etc/sysconfig/network-scripts
On doit s'assur que les lignes IPADDR et NETMASK ne si trouve pas et que BOOTPROTO soit gale static (BOOTPROTO=static).
/etc/sysconfig/network
Il y a plusieurs rpm tlcharger avec Quagga, le mieux et d'installer le tout pour son bon fonctionnement.
Ceci permettra d'installer tous les rpms destin au bon fonctionnement du routage. Il suffira d'activ l'auto-dmarrage du routage lors de l'allumage de la machine.
On active le routage RIP pour activ le routage dynamique des routes. Une fois que l'on s'est dbrouiller pour le dmarrage des services l'allumage de la machine, maintenant il faut s'assurer que les services dmarront adquatement.
Voil que des fichiers de configuration prt l'emploi son plac, le problme est qu'il ne sont peut-tre pas tous attribus l'utilisateur Quagga qui dmarre les services de routage.
Configuration
Il y a divers mthode pour configurer le routage de quagga, soit en ditant les fichiers de configuration de chaque service, soit en passant par telnet ou en passant par le shell de quagga (vtysh). Pour accder individuellement chaque fonction de routage en passant par telnet, il faut connatre les ports de communication auxquels ils sont reli.
zebra: ripd: ripng: ospfd: bgpd: ospf6d: telnet localhost 2601 telnet localhost 2602 telnet localhost 2603 telnet localhost 2604 telnet localhost 2605 telnet localhost 2606
En utilisant le shell du logiciel, on est plus l'aise pour faire sa configuration et on peut configurer tout les services en quelque commande et d'autant plus que si on connait la configuration d'un routeur Cisco tout devient facile dans les commandes qui sont similaire. Afin d'accder au shell:
root@localhost~# vtysh
vtysh ! Hello, this is Quagga (version 0.99.3). Copyright 1996-2005 Kunihiro Ishiguro, et al. ! localhost# localhost# conf t localhost(config)# hostname fedosrv fedosrv(config)# interface eth0 fedosrv(config interface)# ip address 10.17.0.2/16 fedosrv(config interface)# exit fedosrv(config)# interface eth1 fedosrv(config interface)# ip address 172.168.1.2/24 fedosrv(config interface)# exit fedosrv(config)# interface eth2 fedosrv(config interface)# ip address 192.168.1.2/24 fedosrv(config interface)# exit fedosrv(config)# router rip fedosrv(config router)# version 2 fedosrv(config router)# redistribute connected fedosrv(config router)# network 10.17.0.0/16 fedosrv(config router)# network 172.168.1.0/24 fedosrv(config router)# network 192.168.1.0/24 fedosrv(config router)# exit fedosrv(config)# exit fedosrv # wr fedosrv # exit root@localhost~#
! Zebra configuration saved from vty ! 2009/01/30 12:49:30 ! hostname fedosrv ! interface eth0 ip address 10.17.0.2/16 ipv6 nd suppress-ra ! interface eth1 ip address 172.168.1.2/24 ipv6 nd suppress-ra ! interface eth1 ip address 192.168.1.2/24 ipv6 nd suppress-ra ! interface lo ! interface sit0 ipv6 nd suppress-ra ! ip forwarding !line vty
! Zebra configuration saved from vty ! 2009/01/30 12:49:30 ! hostname ripd password zebra log stdout ! router rip version 2 redistribute connected network 10.17.0.0/16 network 172.168.1.0/24 network 192.168.1.0/24 ! line vty
Router(config)#ipv6 ? access-list Configure access lists hop-limit Configure hop count limit host Configure static hostnames icmp Configure ICMP parameters neighbor Neighbor prefix-list Build a prefix list route Configure static routes router Enable an IPv6 routing process unicast-routing Enable unicast routing
Router(config-if)#ipv6 ? IPv6 interface subcommands: address Configure IPv6 address on interface enable Enable IPv6 on interface mtu Set IPv6 Maximum Transmission Unit nd IPv6 interface Neighbor Discovery redirects Enable sending of ICMP Redirect messages rip Configure RIP routing protocol traffic-filter Access control list for packets unnumbered Configure IPv6 interface as unnumbered
La premire tape est maintenant dactiver globalement IPv6 sur le routeur. On peut le faire mode de configuration avec la commande ipv6 unicast-routing Cette commande active IPv6 pour tout le routeur. Si cette commande nest pas active globalement, le reste des commandes sur les interfaces seront inoprantes. Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#ipv6 unicast-routing Router(config)# Ltape suivante est dactiver IPv6 sur les interfaces dsires. On peut configurer une adresse IPv6 sur une interface LAN ou WAN et nous prendrons comme exemple une interface LAN. Il y a quelques tapes pour configurer une adresse LAN. En considrant que le routage IPv6 global est dj activ, la premire tape est de configurer linterface actuelle. Dans la plupart des cas, cela peut tre une interface Ethernet bien quil soit possible de configurer IPv6 aussi bien du Token Ring ou FDDI. Nous nous concentrerons sur les interfaces ethernet. Il y a trois types dadresses que lon peut attribuer des adresses LAN. Les trois types sont
link-local , site-local et les adresses dites globales. Ladresse globale et ladresse sitelocal sont attribues en mme temps. SI une adresse globale est dj attribue par larchitecture du rseau, alors ladresse complte sera tape pendant la configuration. Si seulement les 64 premiers bits sont spcifis, alors la commande EUI (Extended Unique Identifier) la fin de ladresse globale va avoir un identifiant dinterface attribu pour ladresse globale. Pour entrer une adresse dans le routeur, il faut passer en mode de configuration et slectionner linterface dsire. LEUI fonctionne de manire similaire pour les adresses link-local . Si lEUI est utilis, alors seuls les 64 premiers bits de ladresse ont besoin dtre spcifis ; le reste de ladresse tant remplis automatiquement en utilisant ladresse MAC du routeur. Si on a des interfaces multiples utilisant le paramtre EUI, on aura alors des adresses qui finiront toutes par les mme 64 derniers bits. Router configuration for predetermined global address RouterA#conf t Enter configuration commands, one per line. End with CNTL/Z. RouterA(config)#int s0 RouterA(config-if)#ipv6 address 2000:1:1::1/64 RouterA(config-if)# Router configuration for global address to be assigned interface identifier RouterA#conf t Enter configuration commands, one per line. End with CNTL/Z. RouterA(config)#int s0 RouterA(config-if)#ipv6 address 2000:1:1:1::/64 eui-64 RouterA(config-if)#
Quand le paramtre EUI est utilis, les 64 bits restants de ladresse sont automatiquement remplis par le routeur. On peut voir ladresse ainsi produite par la commande ci-dessous. Notons que seulement les 64 premiers bits ont t dfinis. Notons galement que ladresse link-local possde les mme 64 derniers bits que ladresse globale. Router#show ipv6 int s0 Serial1 is down, line protocol is down IPv6 is enabled, link-local address is FE80::2E0:B0FF:FE5A:D998 Global unicast address(es): 2001:1:1:1:2E0:B0FF:FE5A:D998, subnet is 2001:1:1:1::/64
Cette section montre beaucoup des commandes ncessaires pour vrifier que la configuration est en place et quelle fonctionne telle que prvu. La liste suivante montre les commandes show disponibles qui sont spcifiques lIPv6
router#show ipv6 ? access-list interface mtu neighbors prefix-list protocols rip route routers traffic tunnel Summary of access lists IPv6 interface status and configuration MTU per destination cache Show IPv6 neighbor cache entries List IPv6 prefix lists IPv6 Routing Protocols RIP routing protocol status Show IPv6 route table entries Show local IPv6 routers IPv6 protocol statistics Summary of IPv6 tunnels
La premire commande montre si IPv6 est configur pour fonctionner est show runningconfig. Pour vrifier quune adresse LAN est configure correctement, utilisons la commande show ipv6 interfaces <type> . Cette commande est trs utile pour obtenir des informations de bases sur linterface
le processus RIP en question. Cela permet au routeur de lancer sparment de multiples processus RIP sur le mme routeur. Pour ajouter des rseaux particuliers au domaine de routage RIP IPv6, on utilise la commande ipv6 rip <word> enable. Cette commande place cette interface IPv6 dans le domaine de routage RIP IPv6. Router>enable Password: RouterA#config terminal Enter configuration commands, one per line. End with CNTL/Z. RouterA(config)#ipv6 router rip cisco RouterA(config-rtr)#exit RouterA(config)#interface ethernet 0 RouterA(config-if)#ipv6 rip cisco enable RouterA(config-if)#exit RouterA(config)#interface serial 0 RouterA(config-if)#ipv6 rip cisco enable RouterA(config-if)#exit RouterA(config)#interface serial 1 RouterA(config-if)#ipv6 rip cisco enable RouterA(config-if)#exit Dans lexemple qui figure ci-dessus, nous avons cre un domaine de routage RIP avec 6 sous rseaux spars, 2000:1:1::/64, qui est le rseau qui relie les interfaces sries des deux routeurs A , B et le sous rseau 2000:1:5::/64 relie les interfaces sries des deux routeurs A , B, 2000:1:1::/64, qui est le rseau qui relie les interfaces sries des deux routeurs A et B et nous avons 3 rseaux sur les interface Ethernet 0 de chaque routeur, 2000:1:2::/64 et 2000:1:3::/64 respectivement. En tapant la commande show ipv6 protocol , on peut voir tous les protocoles de routage IPv6 qui tournent actuellement sur le routeur. Dans le listing cidessous, nous voyons deux rseaux connects, des routes statiques et, bien sur le RIP qui tourne sur le Routeur A.
Nous avons peu de commandes utiliser pour vrifier que RIP IPv6 fonctionne correctement :
commande
show ipv6 rip
utilit
-Information sur le dlai -Information de Port -Frquence de mise jour -Type de mise jour -Information sur la route par dfaut -Protocoles de routage utiliss -Interfaces utilises par les protocoles de routage -Information sur la Redistribution
Dans lexemple prcdent, nous sommes all en mode de configuration dinterface et tap la commande ipv6 rip cisco default-information originate , ce qui a indiqu au routeur dutiliser le rseau connect linterface serial 0 comme la route par dfaut. Si nous regardons dans la table de routage du routeur voisin RouteurB, on voit que le RouteurA a inject en fait cette route par dfaut dans le domaine de routage RIP. Si nous regardons la table de routage prcdente, nous voyons une entre RIP supplmentaire pour le rseau ::/0 via serial 0. Notons que ces entres RIP sont suivies de la mention R . Cest la route par dfaut.
Router> enable Router# configure terminal Router# enable password torino Router(config)# ipv6 host cisco-sj 2001:0db8:20:1::12 Router(config)# line vty 0 4 Router(config)# password hostword Router(config-line)# login Router(config-line)# exit Router(config)# telnet cisco-sj ou Router(config)# telnet 2001:0db8:20:1::12 Router(config)# exit