RAPPORT. Surveillance Intelligente du Réseau. Vincent Chalnot. Licence Professionnelle Systèmes Informatiques et Logiciels

Dimension: px
Commencer à balayer dès la page:

Download "RAPPORT. Surveillance Intelligente du Réseau. Vincent Chalnot. Licence Professionnelle Systèmes Informatiques et Logiciels"

Transcription

1 Université de Franche-Comté UFR Sciences et Techniques Licence Professionnelle Systèmes Informatiques et Logiciels RAPPORT destage Surveillance Intelligente du Réseau Vincent Chalnot Promotion

2 REMERCIEMENT Je tiens à remercier tout particulièrement mon superviseur de stage, Professeur Selvakumar Manickam, de m'avoir permis de travailler sur un sujet aussi motivant Je remercie également Professeur Jean-Christophe Lapayre, mon tuteur à l'université de Besançon ainsi que Guillaume Paquette, responsable de la formation de la licence professionnelle en informatique Enfin, j'aimerais remercier toute l'équipe du laboratoire Nav6 ainsi que mes collègues stagiaires, tout particulièrement Julien Lamy, Sébastien Barbier et Yohann Pollonghini avec qui j'ai partagé cette expérience 2

3 UNIVERSITÉ DE FRANCHE-COMTÉ - LICENCE PROFESSIONNELLE D'INFORMATIQUE Systèmes Informatiques et Logiciels Conception et Développement Orienté Objet d'applications Multi Tiers Vincent Chalnot Stagiaire wwwcarnet-de-routeinfo Selvakumar Manickam Superviseur de stage inetmon Sdn Bhd Entreprise d'accueil Tingkat 2 Blok No 10 Persiaran Bukit Jambul, Bayan Lepas, Penang, Malaysia Tel: wwwinetmoncom 3

4 TABLE DES MATIÈRES 1 Introduction 6 11 L'entreprise 6 12 L'application 6 13 Le travail 6 2 L'existant 7 21 Solutions existantes inetmon Wireshark AthTek Netwalk PRTG Bilan des solutions existantes LibPCap Open Source Facilité d'utilisation Documentation des Protocoles 11 3 Développement LibPCap Initialisation Affichage minimal Principes de base Encapsulation Désencapsulation Base de données MySQL Modèle de base de données Purge automatisée Gestion de la mémoire Capture des paquets Traitement des paquets 22 4 Tests Utilisation de la mémoire Stabilité Stress-tests Débit et perte de paquets 23 4

5 432 Saturation de la base de données Environnement de production 24 5 Conclusion 25 6 Annexes Documentation Description des protocoles Glossaire Bibliographie Blog de développement Linux CentOS installation Threaded Client Valgrind memory check MySQL first results MySQL robustness Switched to VMWare Simple monitoring views Database Model Endianess headache, the NUXI problem Événnements survenus pendant le stage La révolution de jasmin Le tsunami Japonnais L'accident nucléaire de Fukushima Linux a 20 ans Sony piraté La mort de Ben Laden Arrestation de DSK IPv6 day 37 5

6 1 INTRODUCTION 11 L'entreprise inetmon fait partie du laboratoire Nav6 lui-même intégré à l'université de Sciences de Malaisie (plus communément appelée USM) de Penang L'entreprise inetmon développe une suite logicielle de surveillance des réseaux informatiques destinée aux administrateurs Le contexte socioculturel de l'entreprise très hétérogène est un point à souligner, la langue principale est de loin l'anglais en raison de la diversité culturelle du laboratoire : Chinois, Malais et Indiens sont les principales ethnies représentées par ordre d'importance 12 L'application inetmon est à l'origine une plateforme développée en Java et utilisant WinPcap pour la capture de paquets L'utilisation de Java pour un tel logiciel n'est pas justifiée, en effet, de par ses dépendances sur des librairies externes, l'application ne fonctionne que sous Windows et Java perd son intérêt multiplateforme De plus, en raison de son exécution dans une machine virtuelle et à la suite de nombreuses mises à jour et modifications, le programme est devenu trop lourd, peu performant et beaucoup de paquets sont perdus lors de la capture L'interface a souffert de multiples modifications sans jamais qu'une chartre graphique claire n'ait été définie L'idée de Professeur Selva fut de repartir de zéro pour développer la version 2 du logiciel en parallèle de la première version dont le développement sera stoppé lorsque la version 2 sera arrivée à maturité 13 Le travail J'ai été chargé de développer le moteur de capture de paquets, c'est-à-dire la partie du système qui écoute sur une interface réseau pour mettre en base de données les paquets capturés Cette application étant destinée à tourner en tant que service sous Linux, et afin de respecter la convention de nommage des services Linux, nous avons appelé le système de capture de paquets inetmond pour inetmon Daemon Daemon étant l'appellation des services Linux Afin d'optimiser au maximum les performances d'inetmond, le moteur de capture de paquets a été développé en C, ce qui permet de contrôler au maximum des appels systèmes et l'optimisation de la mémoire Le choix de la base de données s'est porté sur MySQL en raison de sa facilité d'utilisation et de ses performances honorables Les informations contenues dans la base de données sont utilisées par une application web (PHP/HTML) pour permettre à l'utilisateur d'interfacer avec ces données Au départ, mon superviseur m'a laissé seul sur ce projet pour poser les bases du système avec son aide, puis j'ai rejoint une équipe de développeurs qui avait pour objectif d'utiliser les données chargées en base MySQL par le moteur de capture pour les traiter et construire l'interface web 6

7 2 L'EXISTANT 21 Solutions existantes Nous nous sommes penchés sur les programmes permettant de surveiller le réseau ou plus généralement de capturer les paquets transitant sur une interface réseau pour les analyser Pour chaque logiciel, on a surtout retenu les fonctionnalités les plus intéressantes qui sont présentées ici 211 inetmon Site web : Le prédécesseur de l'application sur laquelle nous avons travaillé, que nous avons toujours considéré avec un pied d'égalité par rapport aux autres solutions disponibles pour éviter de se limiter à reproduire une solution identique 2111 Le carnet d'adresses Incontestablement la fonctionnalité la plus utile de la distribution, elle permet en effet de surveiller qui est présent sur le réseau, à quel moment, en associant une adresse MAC aux différentes adresses IP utilisées Cet outil permet de détecter l'installation de nouvelles machine sur le réseau ainsi que les changements d'adresses IP ou de nom d'hôte Il est possible d'associer des informations supplémentaires manuellement sur chaque machine afin notamment d'identifier les personnes physiques ou les services utilisant une machines 7

8 212 Wireshark Site web : Wireshark est avant tout un logiciel d'analyse de paquets et de trafic plus qu'un logiciel de surveillance, et dans ce domaine il est de loin le meilleur 2121 Les " Dissectors" Dans le jargon des développeurs de Wireshark, les dissectors sont les filtres utilisés pour analyser un protocole réseau De par la quantité phénoménale de dissectors présents dans Wireshark, plus de à la version 145, celui-ci s'impose comme la référence en matière d'analyse La présentation des différents en-têtes pour un paquet permet de comprendre en un coup d'oeil la structure des différents protocoles présents dans le paquet Cette vue qui combine à la fois une arborescence de type clé=valeur et une vue hexadécimale du paquet a été d'une grande aide lors de l'écriture de nos propres dissectors On note ici le surlignage du champ actif qui permet d'identifier un champ particulier au sein du dump hexadécimal de l'en-tête du paquet Même si Wireshark n'entre pas exactement dans la catégorie des logiciel de surveillance du réseau, il n'en reste pas moins une référence incontournable dans le domaine en raison de sa puissance analytique 8

9 213 AthTek Netwalk Site web : Ce logiciel fait partie des solutions professionnelles les plus simples du marché, il est par conséquent moins abouti que ses concurrents, mais possède une particularité appréciable 2131 Le tableau de bord Regroupe en une seule vue l'ensemble des éléments important dont un administrateur réseau pourrait avoir besoin Cette vue est modulable à volonté ce qui permet à chacun d'adapter ses propres indicateurs Ce logiciel ne nous a pas convaincu lors de son utilisation, ses fonctionnalités sont trop limitées par rapport aux autres solutions existantes, mais le tableau de bord nous a agréablement surpris par son aspect pratique et fonctionnel 9

10 214 PRTG Site web : Développé par Paessler, PRTG est une solution de surveillance de réseaux très aboutie permettant de surveiller des réseaux distants, des serveurs distants et possédant une grande variété d'interfaces utilisateur dont plusieurs interfaces web La principale faiblesse de ce logiciel est sa grande complexité qui ne permet pas une prise en main rapide, même pour un administrateur réseau confirmé 2141 Interface web Parce que les applications se développent de plus en plus dans le Cloud, et parce qu'il y a nécessité pour un administrateur réseau de pouvoir accéder aux informations de ses serveurs à tout instant, une interface web est aujourd'hui une fonctionnalité incontournable pour tout logiciel de gestion Une interface web offre aussi la possibilité d'être utilisée sur un smartphone avec presque les mêmes performances et possibilités qu'un ordinateur de bureau 10

11 2142 Modulabilité Les différentes interfaces (web, mobile et software) se ressemblent énormément et se basent sur la possibilité pour l'administrateur d'éditer toutes les vues de l'application Néanmoins, le jargon utilisé pour décrire les différents éléments du système manquent de clarté et compliquent l'utilisation de cette solution 22 Bilan des solutions existantes Nous avons passé beaucoup de temps à étudier les solutions existantes afin de déterminer quelles fonctionnalités devaient être présentes dans inetmon 2, ce travail a néanmoins d'avantage servit les développeurs de la partie interface dont je ne faisais pas partie Participer à cette étude m'a tout de même permis de donner mon avis sur les choix techniques à implémenter ou non 23 LibPCap Site web: LibPcap est incontestablement la librairie Open Source la plus performante pour capturer des paquets sur une interface réseau Nombre de logiciels prestigieux embarquent cette librairie ou son équivalent Windows WinPCap Cette librairie propose une interface de haut niveau pour les systèmes de capture de paquets Tous les paquets du réseau, même ceux destinés à d'autres hôtes, sont accessibles par le biais de cette interface 231 Open Source Comme pour n'importe quel projet Open Source, la force de libpcap provient de son potentiel d'évolution Les développeurs ont pu contribuer à améliorer continuellement le code avec l'évolution du matériel et des systèmes 232 Facilité d'utilisation L'autre atout de LibPCap est sa facilité d'implémentation dans un programme, particulièrement en C comme c'est le cas pour notre projet 24 Documentation des Protocoles La plus grosse difficulté fut incontestablement de réunir une documentation complète et uniformisée des protocoles réseau les plus utilisés En effet, il n'existe à ce jour aucune documentation uniforme décrivant les structures de ces protocoles Certainement l'étape la plus chronophage de ce projet, l'écriture d'un manuel des protocoles réseau les plus communément rencontrés a nécessité de réunir toutes les documentations existantes sur le sujet Cette étape est détaillée en annexe dans la section "Documentation" 11

12 3 DÉVELOPPEMENT Le développement d'inetmond a commencé le 20 mars après avoir jeté les bases du système sur papier On décrira ici les étapes principales du développement aussi bien en terme de problèmes rencontrés que de solutions trouvées inetmon 2 est toujours en cours de développement à l'heure actuelle, mais fonctionne en partie, notamment pour ce qui est de la capture de paquets 31 LibPCap Une des premières étapes du développement fut de tester la librairie libpcap pour se familiariser avec ses méthodes Ci-dessous un exemple de programme utilisant libpcap dans lequel on a retiré la gestion des exceptions pour plus de simplicité #include #include int main(int argc, char *argv[]){ pcap_t *handle; // Session handle char *dev; // The device to sniff on char errbuf[pcap_errbuf_size]; // Error message struct bpf_program fp; // The compiled filter char filter_exp[] = "tcp"; // The filter expression struct pcap_pkthdr header; // The header that pcap gives us const u_char *packet; // The actual packet /* Define the device */ dev = pcap_lookupdev(errbuf); /* Open the session in promiscuous mode */ handle = pcap_open_live(dev, BUFSIZ, 1, 1000, errbuf); /* Compile and apply the filter */ pcap_compile(handle, &fp, filter_exp, 0, net); pcap_setfilter(handle, &fp); /* Grab a packet */ packet = pcap_next(handle, &header); /* Print its length */ printf("the captured packet has a length of [%d]\n", headerlen); /* And close the session */ pcap_close(handle); } return(0); 12

13 311 Initialisation Pour gérer une session de capture avec libpcap, on a besoin d'initialiser les variables suivantes: pcap_t * handle : Le gestionnaire de session qui permet à la librairie de conserver les mêmes paramètres lors d'une session de capture char * dev : Indique le périphérique utilisé pour la capture de paquets char errbuf[pcap_errbuf_size] : Sert de buffer pour récupérer les messages d'erreur venant de la librairie struct bpf_program fp : Est une structure utilisée par libpcap pour filtrer les paquets entrants char filter_exp[] : Est la chaîne de caractères humainement lisible contenant l'expression du filtre struct pcap_pkthdr header : Est la structure de l'en-tête retournée par Pcap pour chaque paquet capturé const u_char* packet : Le pointeur vers le début du paquet Pendant une capture, Pcap charge en mémoire un paquet et retourne deux pointeurs Le premier pointeur donne la structure contenant les informations relatives au paquet capturé, comme le temps, la taille et le numéro du paquet Le second pointeur pointe sur le début du paquet en mémoire, c'est à partir de là qu'on va commencer à lire le contenu de la mémoire pour désencapsuler le paquet 32 Affichage minimal Afin de pouvoir tester la capture des paquets visuellement, on a mis en place une interface minimale en mode terminal pour représenter chaque paquet capturé À partir de là, on a pu commencer à disséquer les paquets individuellement pour afficher leurs informations dans le terminal 13

14 33 Principes de base 331 Encapsulation Un paquet est construit par encapsulation de multiples protocoles Prenons l'exemple d'un navigateur web qui veut envoyer une requête à un serveur Un paquet va être construit en superposant des couches de protocoles les unes sur les autres Au départ, le navigateur web veut envoyer la requête suivante: GET / HTTP/11 Host: wwwgooglecom Cette requête va être encapsulée pour être envoyée sur le réseau, ce n'est généralement pas le programmeur qui s'occupe de l'encapsulation, mais la couche réseau du système d'exploitation Chaque couche va être ajoutée successivement, d'abord la couche transport TCP puis la couche réseau IPv4 et enfin la couche liaison Ethernet L'exemple utilisé est très simple et en fonction de l'application, l'encapsulation peut devenir très compliquée Au final, le paquet peut être représenté ainsi: Bytes Bits Destination 4 32 Destination (Continuation) Source 8 64 Source (Continuation) Ethertype Version IHL TOS Total Length Identification Flags Offset TTL Protocol Checksum Source Source (Continuation) Destination Destination (Continuation) Source port Destination port Sequence number Sequence number (Continuation) Acknowledgment number Acknowledgment number (Continuation) Data offset Reserved Flags Window size Checksum Urgent pointer HTTP DATA HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) HTTP DATA (Continuation) On peut voir, en jaune tout en haut la couche Ethernet, puis juste en dessous en vert la couche IPv4, la couche TCP en bleu et les données HTTP en blanc 14

15 Ce paquet va transiter sur le réseau à travers une multitude de routeurs, de switch et de répartiteurs qui vont probablement encapsuler et désencapsuler la couche Liaison (Ethernet) un grand nombre de fois, mais le paquet arrivera à destination avec la même information qu'au départ La principale problématique lorsqu'on veut analyser un paquet vient du fait qu'on ne sait pas ce qu'il contient avant d'avoir commencé à le lire Il faut donc, pour accéder à l'information de la couche application (ici HTTP), désencapsuler le paquet 332 Désencapsulation Lorsqu'on veut lire ce que contient un paquet, on doit le désencapsuler, c'est-à-dire retirer les couches de protocoles une par une en commençant par la plus basse On gardera ici l'exemple du paquet précédent, mais il faut garder à l'esprit que l'on ne connait pas la structure du paquet avant d'avoir commencé à l'analyser Dans le cas de Pcap, le paquet contenu en mémoire est accessible par l'intermédiaire d'un pointeur non typé, on peut donc lire n'importe quelle partie du paquet à partir de ce pointeur, mais il faut connaître d'avance ce que l'on veut récupérer, notamment le type de la variable 3321 Ethernet On doit connaître la couche la plus basse du paquet avant de pouvoir l'analyser, dans l'immense majorité des cas il va s'agir d'ethernet Toutefois, il existe plusieurs types de trame Ethernet, la plus courante est Ethernet type II mais on peut aussi trouver de l'ethernet IEEE 8023 avec LLC et éventuellement SNAP On ne peut pas savoir d'avance à quel type de paquet on a affaire La première étape est de considérer qu'il s'agit d'une trame Ethernet type II On va donc lire dans la mémoire en castant chaque champ de la structure d'un paquet Ethernet pour recréer une structure propre en mémoire #define ETHER_ADDR_LEN 6 struct layer_ethernet { u_char destination[ether_addr_len]; u_char source[ether_addr_len]; u_short type; } Le principal problème lors de la manipulation de structures de mémoire en provenance du réseau est le problème de l'endianness L'ordre des octets n'est généralement pas le même entre la machine et le réseau, on ne peut donc pas caster la structure directement comme suit: struct layer_ethernet * ethernet = (struct layer_ethernet *) packet; Ici, le pointeur vers le début du paquet est packet et le fait de caster le paquet de la sorte va inverser les deux octets du champ type Si le type venant du réseau a pour valeur 0x2104, la valeur enregistrée dans la structure ethernet sera 0x0421 Le problème ne se pose pas pour les adresses étant donné qu'on les stocks dans des tableaux d'octets, l'ordre est respecté 15

16 Ce problème, connu sous le nom du NUXI vient du fait que les données transférées sur le réseau sont toujours en Big-Endian (on parle de network byte order), alors que l'architecture des processeurs x86 est Little-Endian L'endianness peut changer en fonction de l'architecture du processeur, mais aussi en fonction du système, car certains processeurs supportent les deux architectures De plus, le problème peut devenir plus complexe avec la variation de l'unité atomique du système et la possibilité d'avoir une architecture en Middle-Endian Dans notre cas, la solution nécessite une réécriture plus complexe de la méthode précédente On doit commencer par libérer un espace en mémoire pour la nouvelle structure struct layer_ethernet* packet_ethernet = (struct layer_ethernet*) malloc (sizeof(struct layer_ethernet)); On veut ensuite prendre individuellement chaque valeur du paquet pour les copier dans la nouvelle structure u_short i; for( i = 0; i < ETHER_ADDR_LEN; i++ ){ packet_ethernet->destination[i] = (*(u_char*) (packet + i)); } for( i = ETHER_ADDR_LEN; i < (ETHER_ADDR_LEN * 2); i++ ){ packet_ethernet->source[i] = (*(u_char*) (packet + i)); } packet_ethernet->type = ntohs(*(u_short*) (packet + 12)); Lors de la conversion du type ou Ethertype, on utilise la fonction ntohs() afin de convertir l'ordre des octets vers celui de la machine L'exemple donné ici est simplifié par rapport à la version finale qui utilise d'avantage de fonctions pour standardiser la copie en mémoire quelque soit le protocole Une fois la structure en mémoire, on peut s'intéresser à la valeur de l'ethertype qui indique le type du protocole supérieur et qui peut éventuellement permettre de corriger le type de la frame Ethernet 0x05DC : Indique que la trame Ethernet est en fait de type IEEE 8023, dans ce cas, un autre filtre doit être appelé pour analyser de nouveau le paquet depuis le début 0x0800 : IPv4 0x86DD : IPv6 0x0806 : ARP 0x8100 : IEEE 8021Q 0x : Il existe plus de 3000 valeurs enregistrées Il existe une liste exhaustive des protocoles correspondant aux Ethertype, cette liste ne présente que peu d'intérêt car elle n'a jamais été mise à jour avec l'évolution du matériel Dans le cas de notre paquet, le type est IPv4 0x0800, ce qui nous permet de continuer la lecture du paquet en sachant quelle type de grille de lecture appliquer On veut faire avancer le pointeur vers la trame suivante, on écrit donc: packet = (const u_char *) packet + 14; 16

17 Ce qui permet d'avancer le pointeur en mémoire de 14 octets qui correspond à la longueur d'un entête Ethernet type II 3322 IPv4 Le principe est toujours le même avec quelques subtilités concernant les champs dont la longueur n'est pas un nombre fini d'octets où on a besoin d'appliquer un bitmask pour récupérer la valeur correcte du champ Étant donné qu'il est fortement déconseillé de manipuler en mémoire des variables de longueur inférieure à un octet (cela peut engendrer des comportements différents en fonction des compilateurs), on préfère enregistrer ces champs dans une variable dont le type est légèrement supérieur Dans l'exemple utilisé, IPv4 contient les champs version et header_len dont la longueur est égale à 4 bits, soit un demi-octet Lors de la définition de la structure IPv4, on préfère les enregistrer en tant que u_char, c'est à dire sur un octet struct layer_ipv4 { u_char version; u_char header_len; } Au moment de l'enregistrement de la structure du paquet en mémoire, on utilise les opérateurs >> (bitswap) et & (bitmask) afin de ne garder que les valeurs correctes des champs packet_ipv4->version = (*(u_char*) packet) >> 4; packet_ipv4->header_len = (*(u_char*) packet) & 0x0f; Penchons-nous un peu plus en détail sur cette opération, et considérons la structure suivante où version=4 (0100b) et header_len=5 (0101b) On part du premier octet casté depuis le pointeur du paquet (qui commence maintenant au début d'ipv4): (*(u_char*) packet) Bits Lorqu'on effectue la première opération >> 4, on décale de 4 bits le champ vers la droite Bits On obtient bien un octet de valeur 4 En ce qui concerne l'autre opérateur, on applique un bitmask, c'est-à-dire qu'on fait un ET logique bit à bit qui retourne 0 si un des deux bits est égal à 0 et 1 si les deux bits sont égaux à 1 Bits Ici, le bitmask appliqué est 0x0f ce qui correspond à b et le résultat est bien la valeur 5: 17

18 Bits Il s'agit ensuite de savoir quel est le protocole suivant et à partir de quel adresse mémoire celui-ci commence La longueur d'un en-tête IPv4 peut changer en fonction du nombre d'options qu'il contient, dans notre cas on considérera que le header_len prend la valeur 5 : la longueur de l'en-tête IPv4 en égale à 5 word, soit 5*4=20 octets qui est en fait la longueur minimale d'un en-tête IPv4 On sait donc que le prochain protocole commence 20 octets plus loin: packet = (const u_char *) packet + header_len*4; Pour connaître le type du prochain protocole, on s'en réfère au champ protocol de l'en-tête IPv4: 0 - HOPOPT: IPv6 Hop-by-Hop Option 1 - ICMP: Internet Control Message 2 - IGMP: Internet Group Management 3 - GGP: Gateway-to-Gateway 4 - IPv4: IPv4 encapsulation 5 - ST: Stream 6 - TCP: Transmission Control Il existe à ce jour 142 protocoles référencés La liste complète est gérée et maintenue à jour par l'iana et on peut récupérer la version XML à l'adresse suivante: Dans notre cas, le numéro 6 indique que la trame supérieure est de type TCP 3323 TCP Les principes vus pour Ethernet et IPv4 s'appliquent sur toutes les structures des autres protocoles Il est donc crucial de bien appréhender le concept de bitswap et bitmask ainsi que les problèmes d'endianness pour automatiser la mise en mémoire des protocoles 3324 HTTP Enfin, une fois toutes les couches retirées, on obtient la requête HTTP envoyée par le client au serveur Pour le moment inetmond ne capture pas le contenu de la couche applicative, l'analyse des protocoles de plus haut niveau sera une des futures étapes du développement de l'application 18

19 34 Base de données L'étape suivante du développement fut de mettre en place la base de données afin de stocker les paquets capturés dans l'attente d'un traitement par une autre partie du système MySQL a été un choix difficile, il existe en effet à ce jour deux gestionnaires de base de données fiables et performants sous licence libre : MySQL et PostgreSQL Après un long moment passé à s'interroger sur les bienfaits et les désavantages de l'un ou de l'autre, il s'est avéré que les deux systèmes étaient si proches l'un de l'autre qu'il était impossible de les départager objectivement Nous avons au final choisi MySQL par simple préférence, car nous connaissions déjà le système et étions familiers de son fonctionnement 341 MySQL Une fois décidé d'utiliser MySQL comme gestionnaire de base de données, une nouvelle question s'est posée sur le choix du moteur de stockage Il existe en effet deux moteurs de stockage populaires sur MySQL: MyIsam et InnoDB MyIsam est le moteur par défaut de MySQL, il est supposé être plus rapide qu'innodb car il ne gère pas les transactions et les clés étrangères InnoDB est le moteur le plus couramment utilisé par les développeurs nécessitant une base de données transactionnelle et relationnelle Nous avons pu trouver une revue de test sur internet mettant en évidence les faiblesses et les points forts de ces deux moteurs (ainsi que d'un troisième moins connu: Falcon) Ces tests sont disponibles à l'adresse suivante: Il ressort de ces tests qu'innodb est en fait plus performant que MyIsam à quelques exceptions près Le choix s'est donc porté sur InnoDB Nous n'avons pas modifié particulièrement l'installation du serveur MySQL sur la machine de test, mais il semblerait qu'il y aurait possibilité d'optimiser les paramètres du serveur pour obtenir de meilleures performances L'équipe de développement Web travaille actuellement sur le serveur de production pour améliorer ce point 342 Modèle de base de données Le modèle de la base de données côté capture des paquets est extrêmement simple, nous nous sommes en effet penchés uniquement sur le problème de stocker chaque en-tête de paquet en base de données sans trier ou sélectionner les champs Au final, on peut interroger la base de données directement sur n'importe quel champ de n'importe quel en-tête de n'importe quel paquet capturé 19

20 On notera que le nom des tables pour chaque protocole est construit à partir le l'id du protocole dans la table protocol Ainsi, la première ligne de la table protocol correspond à Ethernet donc proto_1 correspond à la table Ethernet Ce modèle présente des inconvénients en terme d'espace de stockage, mais permet aux développeurs de la couche supérieure de l'application (les développeurs web dans notre cas) de sélectionner précisément les champs dont ils ont besoin pour construire leur propre base de données tout en leur laissant la possibilité d'accéder ultérieurement à d'autres champs sans avoir besoin de modifier la base de données et le service de capture 20

21 343 Purge automatisée Comme nous avons pu le voir précédemment, tous les champs sont enregistrés en base de données, ce qui présente un inconvénient en terme d'espace de stockage utilisé Une fois les informations désirées extraites par la couche supérieure de l'application, il est donc nécessaire de purger la base de données pour libérer la mémoire L'idée de base est qu'il faut, à différents instants dans le temps, conserver de moins en moins d'informations sur les paquets pour finir par ne garder que les statistiques globales de la journée après un certain temps Les différentes options en ce qui concerne la purge de la base de données ont été étudiées, puis laissées entre les mains de l'équipe web 35 Gestion de la mémoire Un soin particulier a été mis sur l'optimisation de la mémoire par le système afin de limiter la perte de paquets qui survient lorsque la mémoire tampon de Pcap est pleine 351 Capture des paquets Lorsque Pcap retourne le pointeur vers le paquet en mémoire, il attend que la fonction qui est supposée traiter le paquet se termine pour écraser le paquet en mémoire et écrire le paquet suivant Concrètement, on utilise la fonction pcap_loop() qui prend comme paramètre principal la référence vers la fonction qui traite chaque paquet pcap_loop(pcap_handle, NUM_PACKETS, buffer_packet, NULL); La fonction en question est buffer_packet() dont le constructeur doit être comme suit: void buffer_packet(u_char *args, const struct pcap_pkthdr *header, const u_ char *packet); Lorsqu'on lance la fonction pcap_loop() (qui est un appel bloquant), Pcap va capturer NUM_ PACKETS paquets en appelant à chaque fois la fonction buffer_packet() L'objectif ici est de minimiser le temps pris par la fonction buffer_packet() à chaque exécution On ne peut pas en effet se permettre que l'analyse de chaque paquet soit bloquante au niveau du système de capture de paquets, on utilise donc une mémoire tampon de type FIFO (First-In-First-Out) sous la forme d'une liste chaînée À chaque fois qu'un nouveau paquet est capturé, il est copié intégralement dans un nouvel espace mémoire et ajouté en fin de liste 21

22 Il s'agit d'un scénario classique de liste chaînée ou chaque structure contient un pointeur vers la structure suivante, ce qui permet de parcourir la liste que dans un seul sens 352 Traitement des paquets Une fois les paquets insérés dans la mémoire tampon tel qu'expliqué précédemment, il faut les analyser et les supprimer de la mémoire tampon Afin de faire cette opération en parallèle de la capture de paquets, on utilise des threads Un thread s'occupe de traiter le paquet en haut de la liste afin de l'analyser et de le mettre en base de données Si la mémoire tampon est vide, le thread se met en pause pendant 500 ms puis se lance de nouveau La fin de la capture est signalée par Pcap dans une variable globale ce qui permet aux threads de s'arrêter à partir du moment où la mémoire tampon est vide Il est à noter que lorsque plusieurs threads travaillent en concurrence, au moment où un thread isole un paquet pour le traiter, il y a un risque que deux threads isolent en même temps le paquet de tête de liste, ce qui aurait pour conséquence le double traitement d'un paquet Afin de prévenir à cette éventualité, on place un verrou mutex au moment de l'isolation, cela permet de bloquer les threads qui tenteraient d'accéder simultanément au paquet de tête 22

23 4 TESTS 41 Utilisation de la mémoire Une des principales forces du langage C est de permettre une allocation précise de la mémoire Cet avantage peut devenir très rapidement un inconvénient si l'allocation n'est pas effectuée correctement Il n'existe pas de ramasse-miette comme dans les langages de plus haut niveau, si une partie de la mémoire n'est pas libérée après avoir été allouée, elle restera en utilisation jusqu'à la fin du programme Afin de détecter des fuites de mémoire qui auraient pour conséquence de faire planter purement et simplement l'application, nous avons utilisé Valgrind, une application Open Source qui permet de débugger et de profiler un exécutable sous Linux Il s'avère que les tests incluant Valgrind étaient nécessaires puisqu'ils ont permis de détecter à plusieurs reprises des portions de mémoire qui n'étaient pas libérées correctement Valgrind à été d'une aide précieuse lors du développement d'inetmond, et je ne peux que conseiller vivement son utilisation par tous les développeurs C 42 Stabilité A plusieurs reprises lors du développement, inetmond a été laissé en marche pendant de longues périodes de temps (plus de 24h), période pendant laquelle nous avons enregistré les ressources utilisées, ceci afin de détecter d'éventuelles instabilités Il s'est avéré que le système était extrêmement stable et ne semblait pas être affecté par la durée pendant laquelle il était en marche 43 Stress-tests 431 Débit et perte de paquets Le principal argument en faveur du changement de plateforme et de langage entre inetmon premier du nom et son successeur était l'inefficacité du système à supporter de lourdes charges en terme de débit Il fallait prouver que le nombre de paquets perdu était inférieur avec inetmond qu'à celui de son précurseur Le teste principal permettant de détecter la perte de paquet consiste à envoyer un grand nombre de paquets en une seule fois sur l'interface réseau de la machine et de comparer le nombre de paquets injectés et le nombre de paquets enregistrés par le système Nous avons injecté à plusieurs reprises 3000 paquets sur l'interface réseau, ce qui prenait environ 10 ms pour la machine émettrice et 3 à 4 secondes pour que le système les traites, à chaque fois, on arrivait à un nombre de paquets perdu compris entre 0 et 3, ce qui correspond à un taux inférieur ou égal à 1 % 23

24 inetmon 1 en comparaison affichait un taux de perte d'environ 11 % Le problème est que les deux tests n'ont pas été effectués exactement dans les mêmes conditions, notamment en ce qui concerne le système d'exploitation (Windows pour inetmon et Linux pour la version 2), cela indique néanmoins une progression certaine entre les deux systèmes 432 Saturation de la base de données Après avoir laissé fonctionner la capture de paquet pendant plus de 24h, le nombre de paquets capturé avoisine aisément le million Nous avons décidé pendant un temps de ne pas remettre à zéro la base de données afin de tester sa résistance à la saturation Au bout d'un temps, un peu plus de 10 millions de paquets étaient présents en base de données sans qu'aucun problème notable soit survenu Le principal problème avec la présence d'autant de paquets était lors de l'interrogation de la base où des requêtes, même simples, pouvaient prendre plusieurs minutes pour s'exécuter 44 Environnement de production Un des problèmes qui risque de se poser avec un environnement de production est le nombre bien supérieur de paquets à insérer dans la base de données et il se pourrait que MySQL puisse être le «bottleneck», le goulot d'étranglement du système Nous avons commencé à préparer une machine pour tester inetmond dans un environnement de production (port mirroring sur le routeur), mais il a été décidé d'abandonner les tests en attendant les résultats de l'équipe de développement web sur le système de purge de la base de données Aucun résultat acceptable n'a donc pour l'instant permis de juger de la capacité d'inetmond à fonctionner en environnement de production Il s'agit là d'une lacune, mais il faut rester conscient que le projet n'est qu'à ses débuts et que les spécifications finales du système (notamment sur la base de données et sur l'interface) n'ont pas encore été fixées définitivement Malgré ce fait, inetmond s'est montré plus que capable dans un environnement de test avec une machine de bureau et une utilisation du réseau moyenne 24

25 5 CONCLUSION Ce projet a été très motivant dès le départ pour plusieurs raisons: D'une part, Professeur Selva m'a réellement intégré dans le processus de réflexion visant à définir les choix techniques nécessaires au développement du projet Professeur Selva m'a aussi accordé une grande confiance en ce qui concernait l'implémentation de ces choix techniques et cela m'a permis de repousser mes limites en tant que développeur D'autre part, le but de l'application finale qui est de surveiller les réseaux informatiques coïncide pleinement avec une problématique de plus en plus courante: la sécurité des réseaux Ce sujet me passionne, notamment en raison de sa perpétuelle évolution Au final, j'ai eu l'occasion de perfectionner énormément mes compétences en programmation en langage C ainsi que mes connaissances du fonctionnement des réseaux, notamment en ce qui concerne le fonctionnement des protocoles de la suite Internet: Ethernet, IPv4, IPv6, TCP et UDP Je mettrais un point particulier sur IPv6 qui n'a jamais été autant d'actualité avec la récente pénurie d'adresses IPv4 et la journée d'hier: le 8 juin 2011 était l'ipv6 day Ce stage m'a apporté énormément, aussi bien humainement que professionnellement La Malaisie a été une expérience nouvelle et formidable qui m'a permis de découvrir d'autres cultures, d'autres mentalités et plus généralement d'autres gens intéressants 25

26 26

27 6 ANNEXES 61 Documentation Un certain nombre d'outils de suivi ont été mis en place sur le projet que nous détaillerons ici 611 Description des protocoles Afin de standardiser au maximum la documentation sur les protocoles, nous avons créé un format XML pour décrire chaque protocole Cette spécification devait résoudre plusieurs problématiques liées à la structure des protocoles réseau Champs : La structure d'un protocole est séparée en champs Valeurs possibles : Sur certains champs, on veut pouvoir décrire les effets de certaines valeurs Encapsulation : Des champs peuvent être encapsulés dans d'autres champs Dynamisme : Un champ peut avoir une taille variable dans la structure d'un paquet, il y a donc nécessité de faire référence à la valeur d'un autre champ dans certaines propriétés Présence conditionnelle : Certains champs peuvent apparaître ou non en fonction de la valeur prise par un champ précédent, on veut pouvoir indiquer la présence conditionnelle de certains éléments Ces deux dernières spécificités ont été abordées lors de la création du format, mais ne sont pas encore implémentées La documentation concernant les protocoles est encore en cours de construction et aboutira probablement à un livre commercialisé en version papier et électronique 27

28 62 Glossaire Adresse IP : Numéro d'identification qui est attribué à chaque branchement d'appareil à un réseau informatique utilisant le protocole Internet Adresse MAC : Identifiant physique stocké dans une interface réseau et utilisé pour attribuer mondialement une adresse unique au niveau de la couche de liaison Bitmask : Désigne des données utilisées pour des opérations bit à bit, permettant de modifier les valeurs d'un groupe de bits en une seule opération Bitswap : Opération visant à décaler les bits en mémoire d'un nombre de «cases» définies Bottleneck : Littéralement «Goulot de bouteille», désigne une partie d'un système pouvant être la cause d'une perte de performances ou d'informations Buffer : Mémoire tampon, partie de la mémoire que l'on réserver pour travailler avec Cloud : Le Cloud Computing est un concept qui consiste à déporter sur des serveurs distants des traitements informatiques traditionnellement localisés sur des serveurs locaux ou sur le poste client de l'utilisateur Daemon : Désigne un processus qui s'exécute en arrière-plan plutôt que sous le contrôle direct d'un utilisateur Dissectors : Filtre permettant de disséquer un paquet pour l'analyser Encapsulation : Procédé consistant à inclure les données d'un protocole dans un autre protocole Endianness : Certaines données telles que les nombres entiers peuvent être représentées sur plusieurs octets L'ordre dans lequel ces octets sont organisés en mémoire ou dans une communication est appelé endianness (mot anglais traduit par «boutisme» 1 ou par «endianisme») FIFO : First In First Out, premier arrivé premier servi IANA : L'Internet Assigned Numbers Authority est une organisation dont le rôle est la gestion de l'espace d'adressage IP d'internet Mutex : Primitive de synchronisation utilisée en programmation informatique pour éviter que des ressources partagées d'un système ne soient utilisées en même temps NUXI : Le problème NUXI fait référence à un problème d'endianness Si on veut envoyer la chaîne «UNIX» en regroupant deux octets par mot entier de 16 bits sur une machine de convention différente, alors on obtient NUXI 28

29 Paquet : En réseau, le paquet est l'entité de transmission permettant de faire passer un message d'une machine à une autre Pcap : Packet Capture, fait généralement référence à la librairie LibPcap Pointeur : Un pointeur est une variable contenant une adresse mémoire Protocole : Dans les réseaux informatiques et les télécommunications, un protocole de communication est une spécification de plusieurs règles pour un type de communication particulier Thread : Les threads sont des processus partageant la même mémoire virtuelle avec le programme dont ils font partie WinPcap : Equivalent Windows de la librairie LibPCap permettant de capturer des paquets sur une interface réseau 29

30 63 Bibliographie Nmap TCP-IP reference : SolarWinds: Network Management Software & Network Monitoring : MySQL :: MySQL 50 Reference Manual : IPv4 Wikipedia : IPv6 Wikipedia : Ethernet : Page de manuel : PTHREAD_ATTR_INIT(3) : Time C reference : Protocols Numbers : POSIX Thread programming : https://computingllnlgov/tutorials/pthreads/#passingarguments Pcap Lib : 30

31 Valgrind : C Memory Managment :

32 64 Blog de développement Sachant dès le départ que mon code serait amené à être repris par d'autres développeurs pour être amélioré et complété, il fallait garder une trace des étapes franchies et des problèmes rencontrés lors du développement de l'application Un blog est le meilleur moyen de partager ces informations 641 Linux CentOS installation Posted on March 18, 2011 by Vincent We just finished the installation of CentOS and for now we are using it as a web server to host this blog 642 Threaded Client Posted on March 30, 2011 by Vincent I just finished a first draft of the inetmon2 daemon, so far I am able to: 1 Capture packets and put them in a FIFO buffer in memory (linked-list) 2 Process the buffer with several threads (thread-safe) 3 Analyse the packets for the following protocols : Eth II, IPv4, IPv6, TCP 4 Display the basic informations about each packet The daemon is running for a few hours with 100 threads (just for testing purpose), no problem was detected so far I ve checked very carefully all possible memory leak so it should be allright Next step is to implement the mysql link 643 Valgrind memory check Posted on March 31, 2011 by Vincent I think the memory allocation is now pretty good : 32

33 ==11554== ==11554== HEAP SUMMARY: ==11554== in use at exit: 0 bytes in 0 blocks ==11554== total heap usage: 3,751 allocs, 3,751 frees, 220,357 bytes allocated ==11554== ==11554== All heap blocks were freed -- no leaks are possible ==11554== ==11554== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 34 from 8 ) ==11554== ==11554== 1 errors in context 1 of 1: ==11554== Syscall param socketcallsetsockopt(optval) points to uninitialised byte(s) ==11554== at 0x4B6117: setsockopt (in /lib/libc-25so) ==11554== by 0x543C68: pcap_setfilter (in /usr/lib/libpcapso094) ==11554== by 0x804975A: main (mainc:94) ==11554== Address 0xbea30642 is on thread 1's stack ==11554== Uninitialised value was created by a stack allocation ==11554== at 0x542E53:??? (in /usr/lib/libpcapso094) ==11554== used_suppression: 34 dl-hack3 ==11554== ==11554== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 34 from 8 ) 644 MySQL first results Posted on April 1, 2011 by Vincent So far, I'm only inserting data for the ethernet layer but it seems that MySQL is definitly not going to be a bottleneck We're using a standard installation of MySQL with the InnoDB engine, and there is still place for a lot of optimizations The memory used is not very important but the usage of the CPU will be an important point to monitor in the futur (Currently we are using more than 50% of the cpu all the time, but it's relatively stable) The programm is running for about 2 hours and seems to work fine, even with a download in the background at about 20kb/s I'm trying to monitor eventual packets lost between the daemon and the database, but the tests are not conclusive yet [edit] More than packets captured in 1h50, no packets lost between the daemon and the database The packet buffer of the daemon is not growing so this is a very good sign! 645 MySQL robustness Posted on April 4, 2011 by Vincent The daemon was launched during 1h30 and captures packets that were all succesfully inserted in the database Next step is to record the other informations about all the headers 33

34 646 Switched to VMWare Posted on April 19, 2011 by Vincent I just switched the blog on the VMWare, I'm still fighting to administrate the server remotly, currently I'm using in parallel: Putty for SSH with tunnels for VNC port VNC (over SSH) to use some graphical features MySQL WorkBench to administrate the MySQL database, connected with an other SSH tunnel FileZilla in SFTP (SSH) to upload/download files from my computer to the server My web browser to test the web server Currently, the server configuration is the following: CentOS 54 (Final) - Linux version el5 (gcc version (Red Hat )) #1 SMP Thu Sep 3 03:28:30 EDT 2009 Only opened ports: 22: SSH 80: HTTP 443: HTTPS 647 Simple monitoring views Posted on April 20, 2011 by Vincent Bandwidth usage per minute on a vertical time scale: Protocol distribution at Ethernet level: This is just a basic demo of what we can already do with the database 34

35 648 Database Model Posted on April 21, 2011 by Vincent We are currently working on a database model that will allow several differents levels of precision on the monitoring We want to be able to see a precise view of the network for the last 2-4 hours, but after that we want to simplify the data so that we can still have interesting informations on the traffic and we want to discard all unimportants data So we will have several layers in the database model that will correspond to the differents timescales used: 1 Full headers informations: That's what we were doing before 2 Only Importants Defragmented packets and simple statistics per minutes 3 Full statistics and no more packets 4 Simple statistics This is just a quick draft of the second layer: 649 Endianess headache, the NUXI problem Posted on May 10, 2011 by Vincent The data structures of the packets on the network are stored in big-endian whereas the endianess of the system is generally little-endian This causes a lot of problem for all the types bigger than a single byte I'm still fighting to understand if this problem can also affect smaller types like nibbles (half bytes) 35

36 65 Événnements survenus pendant le stage Je tiens ici à parler des événements exceptionnels qui sont survenus pendant la période du stage et que nous avons suivis avec assiduité 651 La révolution de jasmin Débutée en décembre 2010, la révolution tunisienne s'est progressivement étendue à l'ensemble des pays du Maghreb, notamment l'egypte et la Libye où les manifestants ont été la cible de violentes répressions jusqu'à encore très récemment 652 Le tsunami Japonnais Le 11 mars 2011, un très violent séisme de magnitude 8,9 a dévasté les côtes Japonaises Pacifique en faisant des milliers de morts et d'importants dommages matériels 653 L'accident nucléaire de Fukushima Suite au tsunami du 11 mars, trois des six réacteurs de la centrale nucléaire de Fukushima Daiichi ont subi des fusions partielles de cœur, causant d'importants rejets radioactifs et engendrant la catastrophe nucléaire la plus importante de l'histoire à égalité avec celle de Tchernobyl 654 Linux a 20 ans En 1991, Linus Torvald créé Linux 20 ans plus tard, Linux est le système d'exploitation utilisé par la majorité des superordinateurs, des systèmes boursier, des téléphones, des distributeurs de billets, des serveurs web et la liste est encore longue 655 Sony piraté Le 22 avril 2011, le Playstation Network de Sony se fait pirater et les hackers volent plus de 70 millions de données personnelles, incluant adresses, numéros de téléphone, mots de passe et numéros de carte de crédit 656 La mort de Ben Laden 10 ans après les attentats du 11 septembre, le 1er mai 2011, les États-Unis annoncent la mort d'oussama Ben Laden, le terroriste le plus recherché de la planète 36

37 657 Arrestation de DSK Le 15 mai, Dominique Strauss-Kahn, patron du Fonds Monétaire International et futur candidat à la présidence française se fait arrêter pour tentative de viol par la police dans son hôtel new-yorkais 658 IPv6 day Le 8 juin, le web mondial a testé durant 24h le protocole IPv6 Plusieurs centaines d entreprises, services en ligne, opérateurs et constructeurs d équipements réseau, ont participé à cette journée IPv6 Rappellns qu'au milieu du mois de mai, l'apnic a déclaré être à court d'adresse IPv4 37

38 L'équipe de développement du Professeur Selvakumar Manickam De gauche à droite: Vincent Chalnot Nanthan Palakarnim Christopher Ooi La femme de Professeur Selvakumar Professeur Selvakumar Manickam et son fils Soo Ling Lingeswari V Chandra Fiona Lim Malligadevi Neelamegan 38

39 Vincent Chalnot Étudiant en licence professionnelle systèmes informatiques et logicielles à l'ufr ST de Besançon, promotion 2011 Rapport de stage de fin d'étude dans l'entreprise inetmon située au sein de l'usm de Penang, Malaisie Développement d'un moteur de capture de paquets en langage C avec une base de donnée MySQL dont la destination est d'être intégré à inetmon 2, la nouvelle version de l'outil de surveillance et d'administration de réseaux informatiques développé par inetmon inetmon : Intelligent Network Monitoring Yoursecurityisourconcern Professionnal bachelor degree student in computer sciences from the UFR ST University of Besançon, 2011 promotion Trainingship report for the company inetmon, located inside de USM of Penang, Malaysia Development of a packet capture engine in C using MySQL destinated to be integrated to inetmon 2, the last version of the network monitoring tool developped of inetmon

Tutoriel d'utilisation de Wireshark

Tutoriel d'utilisation de Wireshark Tutoriel d'utilisation de Wireshark Ce tutoriel présente les principales fonctions de Wireshark nécessaires à une utilisation basique et se destine principalement à un public néophyte. Nous invitons le

Plus en détail

Travaux pratiques Utilisation de Wireshark pour examiner une capture DNS UDP

Travaux pratiques Utilisation de Wireshark pour examiner une capture DNS UDP Travaux pratiques Utilisation de Wireshark pour examiner une capture DNS UDP Topologie Objectifs 1re partie : Enregistrer les informations de configuration IP d un ordinateur 2e partie : Utiliser Wireshark

Plus en détail

TP Wireshark. Première approche de Wireshark. 1 ) Lancer Wireshark (double clic sur l icône sur le bureau). La fenêtre

TP Wireshark. Première approche de Wireshark. 1 ) Lancer Wireshark (double clic sur l icône sur le bureau). La fenêtre TP Wireshark Wireshark est un analyseur de protocole réseau. Il permet de visualiser et de capturer les trames, les paquets de différents protocoles réseau, filaire ou pas. Le site originel est à http://www.wireshark.org/.

Plus en détail

Gestion du compte AWS et des utilisateurs

Gestion du compte AWS et des utilisateurs Chapitre 2 Gestion du compte AWS et des utilisateurs 1. Création d'un compte Gestion du compte AWS et des utilisateurs Avant de pouvoir profiter des services web Amazon, vous devez tout d'abord créer un

Plus en détail

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

Master d'informatique 1ère année. Réseaux et protocoles. Architecture : les bases Master d'informatique 1ère année Réseaux et protocoles Architecture : les bases Bureau S3-203 Mailto : alexis.lechervy@unicaen.fr D'après un cours de Jean Saquet Réseaux physiques LAN : Local Area Network

Plus en détail

Online Help StruxureWare Data Center Expert

Online Help StruxureWare Data Center Expert Online Help StruxureWare Data Center Expert Version 7.2.7 Système virtuel StruxureWare Data Center Expert Le serveur StruxureWare Data Center Expert 7.2 est disponible comme système virtuel pris en charge

Plus en détail

L3 ASR Projet 1: DNS. Rapport de Projet

L3 ASR Projet 1: DNS. Rapport de Projet L3 ASR Projet 1: DNS Rapport de Projet Table des matières I. Maquette de travail...1 II. Configuration des machines...2 III. Type de zone...3 IV. Délégation de zone...3 V. Suffixes DNS...4 VI. Mise en

Plus en détail

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 186 Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 L'utilisation des fonctionnalités de haute disponibilité intégrées aux applications, L'ajout de solutions tierces. 1.1 Windows Server

Plus en détail

Projet de cryptographie. Algorithme de cryptage de type Bluetooth

Projet de cryptographie. Algorithme de cryptage de type Bluetooth Projet de cryptographie Algorithme de cryptage de type Bluetooth Le but de ce projet est de créer une application qui crypte et décrypte des fichiers en utilisant le principe de cryptage du Bluetooth.

Plus en détail

RÉSUMÉ DU TRAVAIL DE DIPLÔME

RÉSUMÉ DU TRAVAIL DE DIPLÔME Filière d'informatique de gestion Travail de diplôme ÉTUDE ORACLE XE & APEX RÉSUMÉ DU TRAVAIL DE DIPLÔME AUTEUR: BRUNO DA COSTA RESPONSABLE DU PROJET: FABRICE CAMUS MANDANT: LABORATOIRE DE GÉNIE LOGICIEL

Plus en détail

Le service FTP. M.BOUABID, 04-2015 Page 1 sur 5

Le service FTP. M.BOUABID, 04-2015 Page 1 sur 5 Le service FTP 1) Présentation du protocole FTP Le File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un protocole de communication destiné à l échange informatique de fichiers sur

Plus en détail

1) problématique. 2) Objectif. Je devais donc réaliser un programme informatique qui au terme de 1 mois de travail résoudrait cette problématique.

1) problématique. 2) Objectif. Je devais donc réaliser un programme informatique qui au terme de 1 mois de travail résoudrait cette problématique. Etude de cas. 1) problématique. Comme on peut le voir sur le schéma du réseau si dessus France3 via Stella n utilise pas de routeur mais des switches de niveau 3 qui font office de tête de réseau. Avec

Plus en détail

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau. Firewall I- Définition Un firewall ou mur pare-feu est un équipement spécialisé dans la sécurité réseau. Il filtre les entrées et sorties d'un nœud réseau. Cet équipement travaille habituellement aux niveaux

Plus en détail

Compte rendu TP No3 : «Analyse dynamique de programme»

Compte rendu TP No3 : «Analyse dynamique de programme» LO20 : Vérification, validation et sûreté de fonctionnement http://www.genie logiciel.utc.fr/lo20/ Compte rendu TP No3 : «Analyse dynamique de programme» Le second TP concerne l'analyse dynamique de programme.

Plus en détail

Median SR04 - Automne 2007 Les documents ne sont pas autorisés

Median SR04 - Automne 2007 Les documents ne sont pas autorisés Median SR04 - Automne 2007 Les documents ne sont pas autorisés - Utiliser le verso en cas de besoin Exercice 1 (1,5pts) : soit le réseau suivant dont l'adresse réseau est 130.252.0.0 : Segment 1.10.34.10.35.10.36

Plus en détail

Chapitre 3 : Les échanges dans le monde TCP-IP. Support des Services et Serveurs

Chapitre 3 : Les échanges dans le monde TCP-IP. Support des Services et Serveurs SI 5 BTS Services Informatiques aux Organisations 1 ère année Chapitre 3 : Support des Services et Serveurs Objectifs : Les échanges dans le monde TCP-IP Maîtriser le modèle TCP/IP, l'ensemble de ses protocoles,

Plus en détail

Prise de contrôle à distance de PC

Prise de contrôle à distance de PC Prise de contrôle à distance de PC VNC = Virtual Network Computing Il sagit de prendre très facilement le contrôle d'un PC à distance en utilisant un programme performant. Par exemple, si vous souhaitez

Plus en détail

1 Certificats - 3 points

1 Certificats - 3 points Université de CAEN Année 2008-2009 U.F.R. de Sciences le 23 mars 2009 Master professionnel RADIS UE4 - module réseaux - Spécialisation Durée : 2h. - Tous documents autorisés 1 Certificats - 3 points Lors

Plus en détail

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL

Plus en détail

Administration via l'explorateur WebSphere MQ

Administration via l'explorateur WebSphere MQ Ce document présente l utilisation de l Explorateur WebSphere MQ, et en particulier sa capacité à administrer des Queue Manager distants. Il aborde également les problèmes de sécurité liés à l administration

Plus en détail

Livret du Stagiaire en Informatique

Livret du Stagiaire en Informatique Université François-Rabelais de Tours Campus de Blois UFR Sciences et Techniques Département Informatique Livret du Stagiaire en Informatique Licence 3ème année Master 2ème année Année 2006-2007 Responsable

Plus en détail

Yohan 2014-2015 GESTION DE PROJET. Objectif : Création d'un site internet commercial pour l'entreprise LIS Santé

Yohan 2014-2015 GESTION DE PROJET. Objectif : Création d'un site internet commercial pour l'entreprise LIS Santé CARPENTIER BTS SIO Yohan 2014-2015 GESTION DE PROJET Objectif : Création d'un site internet commercial pour l'entreprise LIS Santé Phase de définition du projet liée à une définition de la mission La mission

Plus en détail

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

Plus en détail

BAAN IVc. Guide de l'utilisateur BAAN Data Navigator

BAAN IVc. Guide de l'utilisateur BAAN Data Navigator BAAN IVc Guide de l'utilisateur BAAN Data Navigator A publication of: Baan Development B.V. B.P. 143 3770 AC Barneveld Pays-Bas Imprimé aux Pays-Bas Baan Development B.V. 1997 Tous droits réservés. Toute

Plus en détail

Projet Personnalisé Encadré PPE 2

Projet Personnalisé Encadré PPE 2 BTS Services Informatiques aux Organisations Session 2014 Projet Personnalisé Encadré PPE 2. GESTION D'UTILISATEURS SYSTÈMES ET BASE DE DONNÉES, INSTALLATION ET CONFIGURATION D'OUTILS DE SUPERVISION ET

Plus en détail

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP Université de Strasbourg Licence Pro ARS UFR de Mathématiques et Informatique Année 2009/2010 1 Adressage IP 1.1 Limites du nombre d adresses IP 1.1.1 Adresses de réseaux valides Réseaux Locaux TP 04 :

Plus en détail

Application Note AN-157. Imprimantes MTH, MRSi & MRTi avec protocole Modbus sur TCP/IP

Application Note AN-157. Imprimantes MTH, MRSi & MRTi avec protocole Modbus sur TCP/IP Application Note Rev 4.0 Imprimantes MTH, MRSi & MRTi avec protocole Modbus sur TCP/IP Les gammes d'imprimantes MTH-2500, MTH-3500, MRSi et MRTi peuvent être livrées en option Modbus sur support physique

Plus en détail

Description du datagramme IP :

Description du datagramme IP : Université KASDI MERBAH OUARGLA Faculté des Nouvelles Technologies de l information et de la Communication Département Informatique et Technologies de les Information 1 er Année Master académique informatique

Plus en détail

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage. TD réseau - Réseau : interconnexion de réseau Réseau : Interconnexion de réseaux, routage et application de règles de filtrage. Un réseau de grande importance ne peut pas seulement reposer sur du matériel

Plus en détail

Trier les ventes (sales order) avec Vtiger CRM

Trier les ventes (sales order) avec Vtiger CRM Trier les ventes (sales order) avec Vtiger CRM Dans l'activité d'une entreprise, on peut avoir besoin d'un outil pour trier les ventes, ce afin de réaliser un certain nombre de statistiques sur ces ventes,

Plus en détail

Clément MILVILLE / Edouard SIMON. Projet CodeWar. Enseignant tuteur: Michaël Hauspie 1/17

Clément MILVILLE / Edouard SIMON. Projet CodeWar. Enseignant tuteur: Michaël Hauspie 1/17 Projet CodeWar Enseignant tuteur: Michaël Hauspie 1/17 2/17 Remerciements: Nous tenons à remercier tout particulièrement notre tuteur M. Michaël HAUSPIE pour son aide, ses conseils, ses avis et sa disponibilité

Plus en détail

LANDPARK ACTIVE DIRECTORY OPEN/LDAP

LANDPARK ACTIVE DIRECTORY OPEN/LDAP LANDPARK ACTIVE DIRECTORY OPEN/LDAP Solutions complètes d'inventaire, de gestion de parc et de helpdesk ITIL Avril 2014 LANDPARK ACTIVE DIRECTORY /OPENLDAP INDISPENSABLE POUR INTÉGRER AUTOMATIQUEMENT TOUS

Plus en détail

Ch4 Interconnexion des postes dans un Lan Ethernet : protocoles des couches 3 à 7 du modèle OSI Dernière maj : lundi 2 avril 2007

Ch4 Interconnexion des postes dans un Lan Ethernet : protocoles des couches 3 à 7 du modèle OSI Dernière maj : lundi 2 avril 2007 Ch4 Interconnexion des postes dans un Lan Ethernet : protocoles des couches 3 à 7 du modèle OSI Dernière maj : lundi 2 avril 2007 I. RAPPEL : ADRESSAGE PHYSIQUE : (OSI 2)... 1 A. L ADRESSAGE DANS UN RESEAU

Plus en détail

Contrôle à distance. Logiciels existants:

Contrôle à distance. Logiciels existants: Contrôle à distance Logiciels existants: CrossLoop, dont l édition gratuite est limitée à une seule machine. Est un utilitaire permettant de contrôler un ordinateur à distance s'inscrivant directement

Plus en détail

STATISTICA - Version 10

STATISTICA - Version 10 STATISTICA - Version 10 Instructions d'installation STATISTICA en Réseau Classique avec Validation du Nom de Domaine Remarques : 1. L'installation de la version réseau de STATISTICA s'effectue en deux

Plus en détail

Windows sur Kimsufi avec ESXi

Windows sur Kimsufi avec ESXi Introduction Depuis fin 2013 les serveurs Kimsufi sont livrés avec une seule adresse IPv4 et une seule adresse IPv6. De même les distributions Windows ne sont plus disponibles à l'installation Il est cependant

Plus en détail

La Solution Crypto et les accès distants

La Solution Crypto et les accès distants La Solution Crypto et les accès distants Introduction L'objectif de ce document est de présenter les possibilités d'accès distants à La Solution Crypto. Cette étude s'appuie sur l'exemple d'un groupement

Plus en détail

Travaux pratiques 8.3.2 Capture d un réseau à l aide de Wireshark

Travaux pratiques 8.3.2 Capture d un réseau à l aide de Wireshark Travaux pratiques 8.3.2 Capture d un réseau à l aide de Wireshark Objectifs Réaliser la capture du trafic d un réseau à l aide de Wireshark pour se familiariser avec l interface et l environnement Wireshark

Plus en détail

GENERALITES. COURS TCP/IP Niveau 1

GENERALITES. COURS TCP/IP Niveau 1 GENERALITES TCP/IP est un protocole inventé par les créateurs d Unix. (Transfer Control Protocol / Internet Protocole). TCP/IP est basé sur le repérage de chaque ordinateur par une adresse appelée adresse

Plus en détail

Chapitre 2. Classes et objets

Chapitre 2. Classes et objets Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons

Plus en détail

Notions sur les réseaux TCP/IP, avec et sans fil

Notions sur les réseaux TCP/IP, avec et sans fil 5 Notions sur les réseaux TCP/IP, avec et sans fil Chapitre Au sommaire de ce chapitre Principe du réseau Internet Termes basiques du paramétrage de TCP/IP Principe des ports TCP et UDP Et les VPN? Dans

Plus en détail

TP 1 - Wireshark et Ethernet

TP 1 - Wireshark et Ethernet TP 1 - Wireshark et Ethernet Nommage des cartes réseaux Sous Linux, tous les périphériques (disques durs, cartes réseau, imprimantes,... ) sont nommés et ce nommage respecte certaines règles. Par exemple,

Plus en détail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Manuel du Desktop Sharing

Manuel du Desktop Sharing Brad Hards Traduction française : Ludovic Grossard Traduction française : Damien Raude-Morvan Traduction française : Joseph Richard 2 Table des matières 1 Introduction 5 2 Le protocole de mémoire de trame

Plus en détail

Installation des caméras IP

Installation des caméras IP Installation des caméras IP 1 Configurer la caméra La première étape consiste à connecter votre caméra sur votre réseau local. Branchez l'alimentation sur le secteur, puis branchez le connecteur sur la

Plus en détail

Cisco Certified Network Associate

Cisco Certified Network Associate Cisco Certified Network Associate Version 4 Notions de base sur les réseaux Chapitre 4 1 D après l en-tête de la couche transport illustré, quelles affirmations parmi les suivantes définissent la session

Plus en détail

Manuel utilisateur du site www.cg-corsedusud.fr. 1. L Interface Typo 3 (version 4.4.x)

Manuel utilisateur du site www.cg-corsedusud.fr. 1. L Interface Typo 3 (version 4.4.x) Manuel utilisateur du site www.cg-corsedusud.fr 1. L Interface Typo 3 (version 4.4.x) Version 1 Le contenu de ces pages est relatif à TYPO3, CMS/Framework sous licence GNU/GPL disponible sur www.typo3.com

Plus en détail

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET Projet OpNet Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET 1Présentation...3 1.1Le besoin de mobilité...3 1.2Le protocole IP Mobile...4 1.3Opnet...5 1.4Le projet...6 2La réalisation du

Plus en détail

Introduction à l Informatique

Introduction à l Informatique Introduction à l Informatique. Généralités : Etymologiquement, le mot informatique veut dire «traitement d information». Ceci signifie que l ordinateur n est capable de fonctionner que s il y a apport

Plus en détail

Correspondance entre Modèle OSI et Modèle TCP/IP. 6 octets 6 octets 2 octets 46 à 1500 octets 4 octets

Correspondance entre Modèle OSI et Modèle TCP/IP. 6 octets 6 octets 2 octets 46 à 1500 octets 4 octets RES2 Savoirs associés : Réseaux locaux industriels Les réseaux informatiques : Encapsulation G.COLIN Objectifs : Analyser une trame ETHERNET Utilisation du logiciel WIRESHARK 1) Présentation Le modèle

Plus en détail

LAN GUIDE D'INSTALLATION 4148996V/A 03/06/2010 ORIG0424-1

LAN GUIDE D'INSTALLATION 4148996V/A 03/06/2010 ORIG0424-1 LAN GUIDE D'INSTALLATION 4148996V/A 03/06/2010 ORIG0424-1 4148996V/A - 03/06/2010 4148996V/A 03/06/2010 ORIG0424-4 Procédure d'installation du LAN Les systèmes d affranchissement de la série IS ont la

Plus en détail

Le «thread local storage» et son utilisation

Le «thread local storage» et son utilisation Résumé Les allocations mémoire sont généralement plus coûteuses que d ordinaire en environnement multi-thread. En effet, la majorité des algorithmes d allocation en usage dans les systèmes d exploitation

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Guide d'utilisation du CFEnet Local, version 2 1 / 8

Guide d'utilisation du CFEnet Local, version 2 1 / 8 Livrable Automate de Transmission des Fichiers CFEnet, version 2 : Guide d'utilisation Version Auteur Validation Date de diffusion Destinataires Version de travail Thierry Mallard Thierry

Plus en détail

Windows 2008 server -Introduction-

Windows 2008 server -Introduction- Windows 2008 server -Introduction- Rappel sur les systèmes d exploitation Un système d exploitation (Operating System) est un ensemble de programmes responsables de la liaison entre les ressources matérielles

Plus en détail

Travaux Pratiques n 1 Principes et Normes des réseaux.

Travaux Pratiques n 1 Principes et Normes des réseaux. Travaux Pratiques n 1 Principes et Normes des réseaux. Objectifs Connaitre le matériel de base (switch, hub et routeur) Savoir configurer une machine windows et linux en statique et dynamique. Connaitre

Plus en détail

Chapitre 4 : Le routage. Support des services et serveurs

Chapitre 4 : Le routage. Support des services et serveurs SI 5 BTS Services Informatiques aux Organisations 1 ère année Chapitre 4 : Support des services et serveurs Objectifs : Le routage Comprendre les mécanismes complexes de routage statique et dynamique.

Plus en détail

Rapport du projet Qualité de Service

Rapport du projet Qualité de Service Tim Autin Master 2 TI Rapport du projet Qualité de Service UE Réseaux Haut Débit et Qualité de Service Enseignant : Congduc Pham Sommaire Introduction... 3 Scénario... 3 Présentation... 3 Problématique...

Plus en détail

BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4

BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4 MIETLICKI Pascal 3 MIC C2 BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4 1. Mode Console... 2 2. Mode Graphique... 2 3. Architecture de notre logiciel... 3 4. Manuel d utilisation... 5 5. Aide au joueur...

Plus en détail

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014 École Supérieure d Économie Électronique Chap 9: Composants et systèmes de sécurité 1 Rhouma Rhouma 21 Juillet 2014 2 tagging et port trunk Création des via les commandes sur switch cisco 1 / 48 2 / 48

Plus en détail

Plus De Cartouches 2013/2014

Plus De Cartouches 2013/2014 Plus De Cartouches 2013/2014 Page 1 SOMMAIRE INTRODUCTION ET PRESENTATION...3 MISSIONS...4 LE CONTEXTE DES MISSIONS...4 LES OBJECTIFS...4 LES CONTRAINTES...5 REALISATIONS...6 CHOIX EFFECTUÉS...6 RÉSULTATS...10

Plus en détail

Exemple : Lecture d un registre, à l offset 4, sur l équipement d ID 9, qui renvoie la valeur 5 :

Exemple : Lecture d un registre, à l offset 4, sur l équipement d ID 9, qui renvoie la valeur 5 : 1 Ethernet TCP/IP Protocole Modbus TCP 2 Ethernet TCP/IP - Protocole Modbus TCP Codage des Données Type de représentation des adresse et données utilisé par Modbus : big-endian, soit :lorsqu une quantité

Plus en détail

LOSLIER Mathieu IR1 31 Mai 2011. Rapport TP Firewall

LOSLIER Mathieu IR1 31 Mai 2011. Rapport TP Firewall Rapport TP Firewall 1 Table des matières Rapport TP Firewall... 1 Introduction... 3 1. Plate-forme de sécurité étudiée... 3 2. Routage classique... 3 2.1 Mise en œuvre du routage classique... 4 2.2 Configuration

Plus en détail

RAPPORT DE STAGE GENERATION DE TESTS POUR AMELIORER DES OUTILS DE CALCUL DE TEMPS D'EXECUTION PIRE CAS

RAPPORT DE STAGE GENERATION DE TESTS POUR AMELIORER DES OUTILS DE CALCUL DE TEMPS D'EXECUTION PIRE CAS Université Joseph Fourier Département Licence Sciences & Technologie RAPPORT DE STAGE GENERATION DE TESTS POUR AMELIORER DES OUTILS DE CALCUL DE TEMPS D'EXECUTION PIRE CAS Laboratoire d'accueil : Verimag

Plus en détail

Les protocoles UDP et TCP

Les protocoles UDP et TCP 3 Les protocoles UDP et TCP TCP comme UDP s exécute au-dessus d IP et se fonde sur les services fournis par ce dernier. TCP (Transport Control Protocol) assure un service de transmission de données fiable

Plus en détail

Chapitre 5 : Protocole TCP/IP

Chapitre 5 : Protocole TCP/IP Chapitre 5 : Protocole TCP/IP 1- IP (Internet Protocol) : Il permet de à des réseaux hétérogène de coopérer. Il gère l adressage logique, le routage, la fragmentation et le réassemblage des paquets. Il

Plus en détail

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13 ACCUEIL...2 LA COMMANDE...3 ONGLET "NATURE DES TRAVAUX"...3 ONGLET INFORMATIONS...8 ONGLET RECAPITULATIF...9 LA COMMANDE SIMPLE A VALIDER PAR LES ACHETEURS...10 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12

Plus en détail

De l ordinateur au processus : rôle d un système

De l ordinateur au processus : rôle d un système De l ordinateur au processus : rôle d un système Introduction aux systèmes d exploitation Gaël Thomas Présentation du cours Contexte du cours : Introduire notre objet d étude : les systèmes d exploitation

Plus en détail

Cisco Certified Network Associate

Cisco Certified Network Associate Cisco Certified Network Associate Version 4 Notions de base sur les réseaux Chapitre 9 01 Convertissez le nombre binaire 10111010 en son équivalent hexadécimal. Sélectionnez la réponse correcte dans la

Plus en détail

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

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP Résolution d adresses et autoconfiguration Les protocoles ARP, RARP, TFTP, BOOTP, DHCP Le protocole ARP (Address Resolution Protocol) Se trouve au niveau de la couche réseau (à côté du protocole ) Routage

Plus en détail

Les Protocoles de Transport Introduction à l analyse de trames

Les Protocoles de Transport Introduction à l analyse de trames Les Protocoles de Transport Introduction à l analyse de trames telnet localhost 80 telnet localhost 80 Trying ::1 connected to localhost. Escape character is ^]. Demande de connexion du client Ouverture

Plus en détail

0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage. 3- Organisation du cours

0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage. 3- Organisation du cours 0- Le langage C++ 1- Du langage C au langage C++ 2- Quelques éléments sur le langage 3- Organisation du cours Le présent cours constitue une introduction pour situer le langage C++, beaucoup des concepts

Plus en détail

Mise à jour de BlackBerry Device Software via le réseau sans fil

Mise à jour de BlackBerry Device Software via le réseau sans fil Préambule : Ce document présente comment mettre à jour la version logicielle de l OS déployé et contrôlé depuis le serveur BES. Cette procédure est tirée du Guide de Mise à jour du BlackBerry Device Software

Plus en détail

Travaux pratiques. Protocoles de la couche transport et de la couche applications

Travaux pratiques. Protocoles de la couche transport et de la couche applications Travaux pratiques Protocoles de la couche transport et de la couche applications Objectif Ce laboratoire se veut une introduction aux protocoles de la couche transport et de la couche application du modèle

Plus en détail

LE RPV DE NIVEAU RÉSEAU AVEC TINC

LE RPV DE NIVEAU RÉSEAU AVEC TINC LE RPV DE NIVEAU RÉSEAU AVEC TINC L entreprise Ilog est une petite entreprise de services informatiques située à La Défense. Les chefs de projet de l entreprise sont souvent en déplacement à travers toute

Plus en détail

Guide d installation. Serveur TeamAgenda STS. Version Windows

Guide d installation. Serveur TeamAgenda STS. Version Windows Installation/Configuration TeamAgenda STS Guide d installation Serveur TeamAgenda STS Version Windows 1 Installation/Configuration TeamAgenda STS Objectifs Installer le Serveur TeamAgenda STS Configuration

Plus en détail

1 sur 5 10/06/14 13:10

1 sur 5 10/06/14 13:10 Time Machine est un outil proposé par Mac OS depuis sa version 10.5 (Leopard) et qui permet d'effectuer des sauvegardes de votre disque dur de manière régulière. Mais au-delà de la simple sauvegarde périodique,

Plus en détail

I. Plusieurs types de VLAN

I. Plusieurs types de VLAN Type de la séance : Courrss Série : Commutation Les réseaux locaux virtuels VLAN Virtual LAN NOM : NOTE : Le :. Classe : Durée :.. Les réseaux virtuels (VLAN : Virtual Local Area Network) permettent de

Plus en détail

Initiation à la sécurité avec Malwarebytes 1/ 6. Installation. Télécharger Malwarebytes anti-malware

Initiation à la sécurité avec Malwarebytes 1/ 6. Installation. Télécharger Malwarebytes anti-malware Initiation à la sécurité avec Malwarebytes 1/ 6 Malwarebytes Anti-malware est un logiciel anti-spywares proposé par le même éditeur que le logiciel RogueRemover qui aujourd'hui n'existe plus et est inclu

Plus en détail

Bind, le serveur de noms sous Linux

Bind, le serveur de noms sous Linux Bind, le serveur de noms sous Linux 1. Principes de fonctionnement d'un serveur de noms La résolution des noms d'hôtes sur les réseaux tcp/ip est fondée sur le principe d'une répartition de la base des

Plus en détail

RESEAUX ARCHITECTURES EN COUCHES. J.L Damoiseaux ; Dpt R&T 1

RESEAUX ARCHITECTURES EN COUCHES. J.L Damoiseaux ; Dpt R&T 1 RESEAUX ARCHITECTURES EN COUCHES J.L Damoiseaux ; Dpt R&T 1 Plan Notions sur les réseaux Couche/Service/Protocole Le modèle OSI Le modèle TCP/IP J.L Damoiseaux ; Dpt R&T 2 Problématique J.L Damoiseaux

Plus en détail

Configurer ma Livebox Pro pour utiliser un serveur VPN

Configurer ma Livebox Pro pour utiliser un serveur VPN Solution à la mise en place d un vpn Configurer ma Livebox Pro pour utiliser un serveur VPN Introduction : Le VPN, de l'anglais Virtual Private Network, est une technologie de Réseau Privé Virtuel. Elle

Plus en détail

Objectifs. Maîtriser. Pratiquer

Objectifs. Maîtriser. Pratiquer 1 Bases de Données Objectifs Maîtriser les concepts d un SGBD relationnel Les modèles de représentations de données Les modèles de représentations de données La conception d une base de données Pratiquer

Plus en détail

TD séance n 12 Réseau Linux

TD séance n 12 Réseau Linux 1 Introduction Avant de nous lancer dans la compréhension des réseaux informatiques, nous allons essayer de prendre un peu de recul quant à la notion même de réseau. En effet, les réseaux sont omniprésents

Plus en détail

Cours réseaux Modèle OSI

Cours réseaux Modèle OSI Cours réseaux Modèle OSI IUT 1 Université de Lyon Introduction: le modèle OSI Un modèle théorique : le modèle OSI (Open System Interconnection) A quoi ça sert: Nécessité de découper/classifier l ensemble

Plus en détail

Raspberry pi : Développer une petite application web sur Raspberry

Raspberry pi : Développer une petite application web sur Raspberry Raspberry pi : Développer une petite application web sur Raspberry Introduction Le Raspberry Pi est un nano-ordinateur basé sur une architecture ARM (conçu par David Braden) qui permet l'exécution de plusieurs

Plus en détail

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic Algorithmique et programmation Cours d'algorithmique illustré par des exemples pour le picbasic Même s'il est possible d'écrire un programme petit à petit par touches successives, le résultat est souvent

Plus en détail

[ Sécurisation des canaux de communication

[ Sécurisation des canaux de communication 2014 ISTA HAY RIAD FORMATRICE BENSAJJAY FATIHA OFPPT [ Sécurisation des canaux de communication Protocole IPsec] Table des matières 1. Utilisation du protocole IPsec... 2 2. Modes IPsec... 3 3. Stratégies

Plus en détail

Le module Clonage des stations

Le module Clonage des stations Le module Clonage des stations Présentation Le module clonage des stations s'appuie sur l'outil libre udpcast ainsi que sur la possibilité pour les machines modernes de "booter" sur la carte réseau. On

Plus en détail

AR-DRONE RESSOURCES. Modèle OSI

AR-DRONE RESSOURCES. Modèle OSI AR-DRONE RESSOURCES Modèle OSI Lycée J. Desfontaines, section Sciences de l Ingénieur ar-drone-communication-ressources.docx Page 1 Infos issues du we, des documents STI2D académie de Poitiers et de la

Plus en détail

INSTALLATION ET CONFIGURATION DE HYPER V3

INSTALLATION ET CONFIGURATION DE HYPER V3 INSTALLATION ET CONFIGURATION DE HYPER V3 I. Installation de HyperV3 sous Windows serveur 2012 HyperV3 est le successeur de HyperV2 apparu sous les versions de Windows serveur 2008 R2, c est puissant Hyper

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

Manuel d administration

Manuel d administration Gestion et sécurité de l accueil visiteurs Manuel d administration Version 1.35 Sommaire 1- Introduction... 3 2- L outil d administration WiSecure... 4 2.1 Lancement de l interface d administration...

Plus en détail

La hiérarchie du système DNS

La hiérarchie du système DNS LA RÉSOLUTION DE NOMS 1. PRÉSENTATION DU SYSTÈME DNS 1.1 INTRODUCTION À LA RÉSOLUTION DE NOMS Pour pouvoir communiquer, chaque machine présente sur un réseau doit avoir un identifiant unique. Avec le protocole

Plus en détail

et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion

et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion Copyright 2009 Alt-N Technologies. 3 allée de la Crabette Sommaire Résumé... 3 MDaemon

Plus en détail

Installation du client OpenNX sur Mac OS X Lion ou +

Installation du client OpenNX sur Mac OS X Lion ou + Nature du document : Installation du client OpenNX DotRiver sur MacOS X Lion Date : 30/07/12 Version : 1.1 Statut : Diffusion Référence du document : DotRiver-doc-opennx-mac-121015 Code Projet : Documentation

Plus en détail

MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE

MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE [Prénom Nom] Rapport sur le stage effectué du [date] au [date] Dans la Société : [NOM DE LA SOCIETE : Logo de la société] à [Ville] [Intitulé du

Plus en détail

Installation Windows 2000 Serveur

Installation Windows 2000 Serveur Installation Windows 2000 Serveur Stage personnes ressources réseau en établissement janvier 2004 Formateur : Franck DUBOIS Médiapôle de Guyancourt Lycée de Villaroy 2 rue Eugène Viollet Le Duc BP31 78041

Plus en détail