L3 d Informatique. Examen terminal EI51 Systèmes avancés et réseaux



Documents pareils
Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

Programmation système de commandes en C

Étude de l application DNS (Domain Name System)

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Programmation C. Apprendre à développer des programmes simples dans le langage C

Cours de Système : Gestion de Fichiers

Le système de gestion des fichiers, les entrées/sorties.

Programmation système I Les entrées/sorties

SYSTÈME DE GESTION DE FICHIERS

Unix/Linux I. 1 ere année DUT. Université marne la vallée

TD n o 8 - Domain Name System (DNS)

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

L3 informatique Réseaux : Configuration d une interface réseau

Serveurs de noms Protocoles HTTP et FTP

Configurez votre Neufbox Evolution

Réalisation d un portail captif d accès authentifié à Internet

Programmation Réseau. ! UFR Informatique ! Jean-Baptiste.Yunes@univ-paris-diderot.fr

Systèmes d exploitation

MANUEL D INSTALLATION

Structure fonctionnelle d un SGBD

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

Mise en place des TPs Réseau en machines virtuelles. Utilisation de VmPlayer

Installation Serveur DNS Bind9 Ubuntu LTS

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication

Partie II PRATIQUE DES CPL

Système de Gestion de Fichiers

Programmation système en C/C++

Eole - gestion des dictionnaires personnalisés

Compte-rendu du TP n o 2

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Devoir Surveillé de Sécurité des Réseaux

TP01: Installation de Windows Server 2012

TP PLACO. Journées Mathrice d'amiens Mars 2010

GESTION DES FICHIERS C/UNIX

Comment configurer Kubuntu

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Manuel d administration de Virtual Box MANUEL D UTILISATION VIRTUAL BOX

VIDÉOSURVEILLANCE. Procédures de paramétrage des différentes box du marché

Master d'informatique 1ère année. Réseaux et protocoles. Architecture : les bases

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Dynamic Host Configuration Protocol

Master d'informatique 1ère année Réseaux et protocoles

DNS ( DOMAIN NAME SYSTEM)

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

Manuel de System Monitor

Mise en place Active Directory / DHCP / DNS

Gestion des domaines

Introduction. Adresses

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

CONFIGURATION DE BASE. 6, Rue de l'industrie BP130 SOULTZ GUEBWILLER Cedex. Fax.: Tel.:

Mon premier rpm. 7 juin Avant de commencer RPM URPMI RPMBUILD... 2

IV- Comment fonctionne un ordinateur?

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

INSTALLATION DEBIAN 7 (NETINSTALL) SUR VM

Cours CCNA 1. Exercices

Surveiller et contrôler vos applications à travers le Web

Administration réseau Résolution de noms et attribution d adresses IP

Prérequis. Résolution des problèmes WMI. Date 03/30/2010 Version 1.0 Référence 001 Auteur Antoine CRUE

Mandataires, caches et filtres

UE Programmation Impérative Licence 2ème Année

Le prototype de la fonction main()

Administration de Parc Informatique TP03 : Résolution de noms

Encryptions, compression et partitionnement des données

Cours 6 : Tubes anonymes et nommés

Rappels réseaux TCP/IP

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

TCP/IP, NAT/PAT et Firewall

Ed 03/95 PAQ 1530 NON URGENTE (INFO PRODUIT) TEMPORAIRE DEFINITIVE

ASR4 Réseaux Département Informatique, IUT Bordeaux 1. DHCP Prénom : Nom : Groupe :

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

CREER UN ENREGISTREMENT DANS LA ZONE DNS DU DOMAINE

Algorithmique et langages du Web

Travaux pratiques : configuration des routes statiques et par défaut IPv6

Impact des robots d indexation sur le cache de second niveau de SPIP IMBERTI Christophe - SG/SPSSI/CP2I/DO Ouest 06/06/2012 mis à jour le 05/07/2012

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

Informatique pour scientifiques hiver Plan général Systèmes d exploitation

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

DIFF AVANCÉE. Samy.

Partie 7 : Gestion de la mémoire

Guide des fonctions avancées de mywishtv

Le routeur de la Freebox explications et configuration

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

1 Lecture de fichiers

Le serveur web Windows Home Server 2011

Le service de nom : DNS

TP1 - Prise en main de l environnement Unix.

Cours 1 : Qu est-ce que la programmation?

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A. TP réseau firewall

Domaine Name System. Auteur: Congduc Pham, Université Lyon 1. Figure 1: Schéma des salles TP11 et TD4

La Comptabilité UNIX System V Acctcom

Cours Programmation Système

module Introduction aux réseaux DHCP et codage Polytech / 5

INFO-F-404 : Techniques avancées de systèmes d exploitation

Télécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS

Licence 3 Systèmes et Réseaux II. Chapitre V : Filtrage

Ce cours est la propriété de la société CentralWeb. Il peut être utilisé et diffusé librement à des fins non commerciales uniquement.

Administration de Parc Informatique TP02 : Utilisation du logiciel Marionnet

Protéger une machine réelle derrière une machine virtuelle avec pfsense

Transcription:

Université de Caen U.F.R. de Sciences L3 d Informatique Année 2010/2011 1ère session / Décembre Date : 15 décembre 2010 Examen terminal EI51 Systèmes avancés et réseaux Chaque candidat doit, au début de l épreuve, porter son nom dans le coin de la copie qu il cachera par collage après avoir été pointé. Il devra en outre porter son numéro de place sur chacune des copies, intercalaires, ou pièces annexées. Tout document autorisé Durée : 2 heures Les deux parties systèmes et réseaux sont à rédiger sur des copies séparées. 1 Partie système (à rédiger sur une copie séparée) 1.1 Systèmes de fichiers Lu sur stackoverflow.com : Hi, I am trying to modify the ext3 file system. Basically I want to ensure that the inode for a file is saved in the same (or adjacent) block as the file that it stores metadata for. [...] Ce que l on peut traduire par : Salut, Je suis en train de modifier le système de fichiers ext3. En deux mots, je voudrais assurer que le inode d un fichier soit toujours stocké dans le même bloc (ou le bloc adjacent) que le fichier dont il conserve les métadonnées. Question 1.1 Que sont les métadonnées dont il est question ici? Question 1.2 Quel gain 1 espère ce programmeur en modifiant ainsi ext3? 1.2 Ordonnancement de processus Question 1.3 Quels sont les différences entre des processus limités par les performances en calcul (CPU bound) et par des processus limités par les entrées sorties (I/O bound)? Donnez des exemples de processus limités par les performances en calcul ( CPU bound). Le texte suivant a été déposé sur lwn.net en commentaire d un article sur le nouvel algorithme d ordonnancement des processus : Apt and dpkg are not, in general, CPU bound, but I/O bound. Nicing I/O bound processes generally causes more problems than it solves, because you end up blowing the file cache. Ce que l on peut traduire en français par : 1 Mis à part le plaisir de programmer!

Les programmes apt et dpkg ne sont pas en général limités par les performances en calcul, mais sont limités par les entrées sorties. Utiliser nice sur les processus limités par les E/S provoque généralement plus de problèmes qu il n en résout car cela finit toujours par surcharger le cache du système de fichiers. Question 1.4 Êtes-vous en accord avec ce commentaire? Justifiez. 1.3 Appel système Nom open, creat - Ouvrir ou créer éventuellement un fichier. Synopsis #i n c l u d e <sys / types. h> #i n c l u d e <sys / s t a t. h> #i n c l u d e <f c n t l. h> i n t open ( const char pathname, i n t f l a g s ) ; i n t open ( const char pathname, i n t f l a g s, mode t mode ) ; i n t c r e a t ( const char pathname, mode t mode ) ; Description open essaye d ouvrir un fichier et retourne un descripteur de fichier (petit entier non négatif à utiliser avec read, write, etc.) flags est l un des éléments O RDONLY, O WRONLY ou O RDWR qui réclament respectivement l ouverture du fichier en lecture seule, écriture seule, ou lecture/écriture. flags peut aussi être un OU binaire ( ) avec un ou plusieurs des éléments suivants : O CREAT Créer le fichier s il n existe pas. O EXCL En conjonction avec O CREAT, déclenchera une erreur si le fichier existe, et open échouera. O EXCL ne fonctionne pas sur les systèmes de fichiers NFS de version antérieure à la v3. [...] Fig. 1 : Début de la page du manuel Unix open(2) Question 1.5 La figure 1 indique que le drapeau (flag) O EXCL n est pas opérationnel au dessus de NFS de version antérieure à la v3. Existe-t-il une autre façon de garantir qu une ouverture en création n écrase pas un fichier qui existait déjà avant cette création? 2

2 Partie réseaux (à rédiger sur une copie séparée) 2.1 Introduction On se place dans le cadre d un réseau domestique. Un fournisseur d accès permet de connecter ce réseau à l Internet. Ce fournisseur nous alloue une adresse IPv4 et on supposera de plus en section 2.4 qu il nous alloue également un préfixe IPv6, au minimum un «/64». La prestation du fournisseur inclut une «box», et on suppose dans ce qui suit que l utilisateur peut accéder à un menu de configuration de cette dernière au moyen d une interface web. 2.2 Configuration classique Question 2.1 Rappeler les principaux mécanismes inclus dans une telle «box» permettant : de fournir une configuration IPv4 à chaque élément du réseau domestique, et préciser la nature des adresses fournies, ainsi que les autres éléments nécessaires ; d autoriser les logiciels client situés sur les machines de ce réseau d accéder aux services classiques sur Internet ; à l utilisateur du réseau domestique de configurer un ou quelques services sur une ou plusieurs de ses machines, ces services pouvant être accessibles de l extérieur (donner un exemple au moins en précisant les éléments de configuration nécessaires). 2.3 Service additionnel Notre fournisseur, afin d attirer certaines catégories de clients, souhaite proposer un service supplémentaire permettant à ses clients de donner des noms aux différents éléments de son réseau. Ce service devra, bien sûr, être facilement configurable pour des non-spécialistes. On suppose donc que la «box» intègre un logiciel serveur de noms (ce qui est d ailleurs souvent le cas pour les configurations actuelles, mais ils sont configurés seulement pour être un relais vers des serveurs de noms extérieurs). On se préoccupe uniquement de pouvoir donner des noms à usage interne aux machines du réseau domestique, permettant ainsi, à partir de chaque machine de ce réseau, d accéder par leurs noms aux différents services situés sur les autres machines de ce réseau. Le nommage éventuel de services accessibles de l extérieur sera pour la prochaine amélioration de la prestation du fournisseur... On supposera que le domaine domestique est home. par défaut, éventuellement modifiable par l utilisateur, et que les machines du réseau domestique obtiennent des adresses IP ayant le préfixe 192.168.1.0/24. Question 2.2 Précisez quelle(s) information(s) de configuration (fournies par la box) sont nécessaires aux machines du réseau pour qu elles puissent utiliser ce système de nommage une fois qu il sera correctement configuré (avec les réponses aux questions suivantes). Question 2.3 Décrivez un mécanisme, intégré à la «box», permettant d offrir ce service aux clients du fournisseur. Celui-ci doit permettre : de découvrir automatiquement les services «classiques» (p.e. serveur http, partage de fichiers,...) disponibles sur les différents éléments du réseau domestique, et à l utilisateur d y ajouter des services plus «exotiques» qu il aurait configuré sur certains de ces éléments ; de proposer à l utilisateur un nom (ou plusieurs) pour chacun de ces services, dans le domaine domestique qui sera home par défaut ; d enregistrer les données ainsi découvertes ou fournies par l utilisateur et de mettre en place le service de nommage associé. Indiquez sur un ou deux exemples la forme de ces données qui devront être enregistrées. 3

Ce service devra bien entendu résister à une réinitialisation de la «box», par contre on admettra que modification, ajout, retrait d un service d une des machines du réseau nécessite une mise à jour manuelle de la liste des services mémorisés dans la «box». Question 2.4 Quels phénomènes risquent de compromettre le bon fonctionnement du service en cas de redémarrage de la «box»? Quelle(s) parade(s) peut-on y apporter? 2.4 IPv6 On suppose dans cette question que le fournisseur nous alloue un préfixe IPv6 du type «/64», permettant ainsi à chaque machine du réseau de posséder une adresse publique. Pour autant, l utilisateur du réseau domestique ne désire pas forcément annoncer tous ses services au monde entier, et on étudiera donc encore uniquement le cas où ces services doivent être accessibles par leur nom à partir des machines de ce réseau. On supposera que tous les logiciels clients et serveurs des machines du réseau domestique peuvent fonctionner en IPv6. Question 2.5 Les mécanismes que vous avez proposés pour IPv4 restent-ils valables pour IPv6? Si oui, justifiez votre réponse et si non, indiquez lesquels posent problème et éventuellement des solutions de remplacement. 4

Corrigé indicatif 1 Partie système 1.1 Systèmes de fichiers Question 1.1 Le i-node d un fichier contient les identifiants du propriétaire et groupe propriétaire, les dates de création, de dernière modification ou d accés, le nombre de liens, la taille en octets, mais aussi les adresses de blocs contenant le fichier proprement dit. Question 1.2 Le gain escompté sera effectif lorsque l on accédera (en lecture ou écriture) au contenu du fichier. En effet, l accès aux blocs du fichier nécessite l accès préalable à son i-node. S ils sont contenus dans le même secteur disque, on évitera ainsi une autre lecture de secteur disque, ce qui peut être coûteux s il nécessite un déplacement du bras de lecture du disque. Rappel : dans le système de fichiers ext3 standard, les i-nodes et les blocs de données sont stockés dans des zones différentes. 1.2 Ordonnancement de processus Question 1.3 Un processus limité par les entrées-sorties va être ralenti par les attentes de complétions des opérations en lecture ou en écriture sur les périphériques (disques ou réseau) et ne fait que peu de calculs sur les données lues ou écrites. apt et dpkg vont d abord lire les paquets depuis des dépôts, puis les écrire dans le système de fichiers local, sans faire beaucoup de calculs. Un processus limité par les performances en calcul demande beaucoup de temps de calcul sans accéder à des ressources externes (pas d E/S). Un premier exemple est un programme qui va inverser une matrice de grande taille (assez petite pour tenir en mémoire centrale ce qui commence à faire une taille respectable) en O(n 3 ). Un deuxième encore plus critique est la résolution d un problème dont on n a pas de solution en complexité polynomiale comme le problème du voyageur de commerce (recherche d un chemin hamiltonien dans un graphe). Note : détourner les entrées-sorties ne change pas vraiment le problème, sauf peut-être si c est vers /dev/null ou depuis /dev/zero car dans ces derniers cas, la complétion des E/S est beaucoup plus rapide puisqu elle ne demande aucun accès à un périphérique réel. On ne peut pas dire qu un programme qui fait des lectures du clavier soit limité par les entrées sorties, car le contrôleur du clavier sera toujours plus rapide que le dactylographe. Rappel : l utilisation des canaux DMA (Direct Memory Access) présents sur pratiquement toutes nos machines, décharge complètement le CPU lors des E/S Question 1.4 Oui, diminuer la priorité (avec nice) de processus limités par les E/S ne va pas forcément accélérer les autres processus. En effet, si on «prive» un processus de l accès au processeur alors qu il a demandé beaucoup d E/S, ces dernières seront néanmoins réalisées par le noyau ; le noyau va donc être obligé d allouer de nombreux tampons (ce qui est appelé cache du système de fichiers dans le texte) à ce processus. Ces tampons ne pourront être libérés que lorsque le processus traitera ces résultats (apt les réécrira ailleurs), et il ne pourra le faire que s il a accès au processeur. Pour que cette gestion de priorité soit efficace sur ce type de processus limités par les E/S, il faudrait disposer d un système limitant le nombre de tampons d E/S utilisés par un processus donné. Note : le fait que les processus soit exécuté en arrière plan ne change rien à ce problème. On applique nice en général à des processus en arrière plan, mais cela n a rien d obligatoire. 5

1.3 Appel système Question 1.5 Le problème est ici de garantir que le fichier soit créé si, et seulement si, il n existait pas avant. Nous sommes en présence d un problème où il faut faire deux opérations : le test et la création, de façon atomique. Le seul autre appel sur un système de fichiers qui garantit cette atomicité est : link (cf TD du 13/10/2010). Si l on veut garantir que le fichier toto soit créé sauf s il existait déjà, il faut : créer un premier fichier (par exemple de nom toto.link ; tenter de créer un lien de toto.link sur toto, ce qui échouera si toto existe déjà ; détruire le lien toto.link (ce qui ne détruit pas le fichier toto). Évidemment, ceci est correct seulement si on suppose que la création temporaire de toto.link est acceptable... Cela peut s écrire en shell : #! / bin / sh # crée l e f i c h i e r dont l e nom e s t donné en premier paramètre # s a u f s i l e x i s t e déjà # retourne 0 en cas de succès, 1 s i l e f i c h i e r e x i s t a i t déjà, # 2 s i non d r o i t en création, 3 s i syntaxe i n c o r r e c t e i f t e s t $# ne 1 ; then echo usage : $0 f i c h i e r à c r é e r >&2 exit 3 f i i f! touch $1. l i n k ; then exit 2 f i ln $1. l i n k $1 r e t=$? rm f $1. l i n k exit $ r e t ou en C : / crée l e f i c h i e r dont l e nom e s t donné en premier paramètre s a u f s i l e x i s t e déjà retourne 0 en cas de succès, 1 s i l e f i c h i e r e x i s t a i t déjà, 2 s i non d r o i t en création, 3 s i syntaxe i n c o r r e c t e / #include <s t d i o. h> #include <s t r i n g. h> #include <s t d l i b. h> #include <unistd. h> #include <f c n t l. h> int main ( int argc, char argv [ ] ) { i f ( argc!= 2) { f p r i n t f ( s t d e r r, usage : %s f i c h i e r à c r é e r \n, argv [ 0 ] ) ; e x i t ( 3 ) ; } 6

} char l i e n [ s t r l e n ( argv [ 1 ] ) + s t r l e n (. l i n k ) + 1 ] ; s t r c a t ( s t r c a t ( l i e n, argv [ 1 ] ),. l i n k ) ; i f ( c r e a t ( l i e n, 0664) == 1) { p e r r o r ( c r e a t ) ; e x i t ( 2 ) ; } int r e t = l i n k ( l i e n, argv [ 1 ] ) ; unlink ( l i e n ) ; return r e t == 0? 0 : 1 ; // ou e x i t ( r e t == 0? 0 : 1) Note : touch pourrait fonctionner car il crée le fichier seulement s il n existait pas, mais il modifie sa date de dernier accès et surtout on ne peut pas savoir s il existait avant! 2 Partie réseaux 2.1 Introduction Rappel du contexte : on se place dans le cadre d un réseau domestique. Un fournisseur d accès permet de connecter ce réseau à l Internet. Ce fournisseur nous alloue une adresse IPv4 et on supposera de plus en section 2.4 qu il nous alloue également un préfixe IPv6, au minimum un «/64». La prestation du fournisseur inclut une «box», et on suppose dans ce qui suit que l utilisateur peut accéder à un menu de configuration de cette dernière au moyen d une interface web. 2.2 Configuration classique Question 2.1 Les principaux mécanismes inclus dans une telle «box» Fournir une configuration IPv4 à chaque élément du réseau domestique : en général, une classe C privée (par exemple 192.168.1.0/24) est réservée pour adresser les appareils du réseau interne. La «box» s attribue une de ces adresses sur son interface Ethernet, les autres étant disponibles. L utilisateur a le choix entre configurer lui-même les adresses de ses machines, ou bien utiliser la fonction DHCP (distribution d adresses et de configuration). La plage d adresses pouvant ainsi être allouée est configurable, ce qui permet de séparer les plages adresses automatiques / manuelles. Il y a en outre en général un relais DNS dans la «box», les machines seront donc en général configurées avec comme adresse de DNS l adresse interne de la «box». Ce point n est pas forcément indispensable, mais va le devenir à la section suivante. Autoriser les logiciels client situés sur les machines de ce réseau d accéder aux services classiques sur Internet : Il faut une conversion d adresses privées en l adresse publique de la «box», car les adresses privées ne peuvent circuler sur Internet. Toute requête émanant d une machine interne à destination de l extérieur sera donc transformée, au niveau de l adresse destinataire et aussi du numéro de port, le port de la machine émettrice étant remplacé par un port de la «box». Cette fonction est le NAPT. Permettre à l utilisateur du réseau domestique de configurer un ou quelques services sur une ou plusieurs de ses machines, ces services pouvant être accessibles de l extérieur. Là encore, il faut changer l adresse (fontion NAT), plus précisément rediriger le port souhaité de l adresse publique vers le même port de la machine supportant le service. Par exemple, si l utilisateur souhaite un service web sur sa machine d adresse 192.168.1.12, 7

il devra rediriger le port 80 de sa box vers le port 80 de cette adresse IP. On ne peut rediriger chaque port qu une fois, donc il est impossible d avoir sur deux machines différentes des services accessibles de l extérieur sur un même port. Il est préférable d activer ce genre de service sur des machines dont l adresse IP interne est fixe, car si un redémarrage de la «box» donne de nouvelles adresses, la redirection ne sera plus bonne. 2.3 Service additionnel Il s agissait ici d ajouter un système de nommage des machines internes. Question 2.2 Précisez quelle(s) information(s) de configuration (fournies par la box) sont nécessaires aux machines du réseau pour qu elles puissent utiliser ce système de nommage une fois qu il sera correctement configuré (avec les réponses aux questions suivantes) : Il est ici impératif que les configurations de toutes les machines du réseau interne, qu elles soient obtenues automatiquement ou manuellement, aient comme adresse de DNS à interroger l adresse de la «box», puisque c est elle qui contiendra les données de correspondance entre noms et adresses. Il peut aussi être très utile d indiquer aux machines qu elles se trouvent dans le domaine home afin d autoriser la complétion automatique des adresses internes. Question 2.3 Mécanisme, intégré à la «box», permettant d offrir ce service aux clients du fournisseur. pour découvrir automatiquement les services «classiques» (p.e. serveur http, partage de fichiers,...) disponibles sur les différents éléments du réseau domestique, et à l utilisateur d y ajouter des services plus «exotiques» qu il aurait configuré sur certains de ces éléments, on peut imaginer : que la «box» puisse scanner les ports (au moins quelques ports bien connus) des adresses des machines du réseau interne. Au pire il y a 253 adresses à scanner ; que pour chacun des ports trouvés ouverts, l interface propose au client de donner un nom à la machine concernée, correspondant à la fonction trouvée. En cas de plusieurs fonctions sur une même machine, le système pourra proposer des alias. que ce système puisse également proposer au client d ajouter des noms ou des alias pour certaines adresses Enregistrer les données ainsi découvertes ou fournies par l utilisateur et de mettre en place le service de nommage associé. : L enregistrement devra contrôler qu il n y a pas d informations contradictoire. Les données seront enregistrées dans les fichiers du DNS de la «box». Il y a le fichier direct du domaine homequi peut contenir par exemple des enregistrements : www IN A 192.168.1.12 (parce qu on a détecté que le port 80 était ouvert sur cette machine) ftp IN CNAME www (on y a aussi détecté un port 21) Le fichier reverse du domaine.68.192.in-addr.arpa@peut également être utile, bien que non indispensable et contenir : 12 IN PTR www.home. 8

Question 2.4 Problème de réinitialisation. Pour résister à une réinitialisation de la «box», il faudra s assurer que les machines ne changent pas d adresses. Si ces dernières sont configurées manuellement, c est de la responsabilité de l utilisateur, mais si on utilise DHCP, alors il sera bon de configurer DHCP pour distribuer les adresses IP en fonction des adresses MAC des machines car celles-ci ne changent pas. 2.4 IPv6 On suppose dans cette question que le fournisseur nous alloue un préfixe IPv6 du type «/64», permettant ainsi à chaque machine du réseau de posséder une adresse publique. Pour autant, l utilisateur du réseau domestique ne désire pas forcément annoncer tous ses services au monde entier, et on étudiera donc encore uniquement le cas où ces services doivent être accessibles par leur nom à partir des machines de ce réseau. On supposera que tous les logiciels clients et serveurs des machines du réseau domestique peuvent fonctionner en IPv6. Question 2.5 Les mécanismes que vous avez proposés pour IPv4 restent-ils valables pour IPv6? Le NAPT / NAT de la «box» n a plus d utilité ici. Le DHCP pourra être remplacé par une configuration automatique sans états, mais le DHCP peut cependant avoir toujours un intérêt : S il n y a plus de DHCP, on ne peut pas savoir quelles sont les machines qui ont obtenu des configurations automatiques. Il est par ailleurs hors de question de scanner les 2 64 machines possibles! La recherche automatique de services sera donc plus difficile. De plus, on peut difficilement demander à l utilisateur de taper à la main les adresses IPv6 auto-configurées... Il faudra donc mettre en place un mécanisme de découverte de voisins pour au moins acquérir les adresses des machines connectées (notons que pour un usage interne, les adresses lien-local suffisent), et on pourra alors en scanner les ports et proposer des noms et/ou proposer à l utilisateur d en mettre d autres. Pour éviter les changements d adresses, il suffira de choisir, en cas d auto-configuration, la version qui calcule l adresse IP à partir de l adresse MAC. Le fait de devoir avoir l adresse du DNS de la «box» configurée dans chaque machine ne change pas, mais ceci ne s obtient pas par auto-configuration! Un serveur DHCP complémentaire pourra dons être utile. Idem pour le nom (home) du domaine. Les enregistrements dans le DNS devront bien entendu être adaptés à IPv6 (AAAA au lieu de A, sous-domaine de ip6.arpa pour le reverse) 9