TP4 : Réseaux locaux - transmission et analyse des trames Ethernet (sur architectures x86 et ARM)
|
|
- Thérèse Carignan
- il y a 8 ans
- Total affichages :
Transcription
1 TP4 : Réseaux locaux - transmission et analyse des trames Ethernet (sur architectures x86 et ARM) Dans ce TP nous allons écrire/utiliser des applications de transfert des messages et des fichiers directemment au niveau de la couche physique Ethernet. La configuration du TP est basée sur 6 ordinateurs PC traditionnels (architecture x86) et 6 cartes Raspberry-Pi conçus sur l'architecture ARM. Le système d'exploitation est Ubuntu (Debian) pour les PC et Raspbian (Debian) pour les Raspberry PI. L'ensemble est connecté en réseau local avec les adresses IP distribuées dynamiquement par le protocole DHCP. Le développement de 2 applications : 1. Emission/diffusion et réception des fichiers 2. Sniffing des trames Ethernet avec les paquets IP doit être réalisé en mode root. Seulement l'utilisateur root a les droits d'exploitation de l'interface Ethernet par le biais de la programmation avec raw-sockets. Nous allons donc contourner la pile de protocoles (Ethernet/IP/TCP-UDP) pour s'attaquer directemment à la couche physique. En plus nous allons communiquer entre les systèmes basés sur les architectures matérielles différentes : x86 et ARM. Avant de se lancer dans la programmation nous proposons de lire le texte suivant concernant l'interface de programmation raw-sockets.
2 Introduction à la programmation avec l'api Raw-Sockets Dans les TP précédants nous avons dévellopé un certain nombre d'applications s'appuyant sur les primitives socket fonctionnant au niveau de la couche de transport en mode datagramme (protocole UDP) et en mode connecté (protocole TCP). Un programmeur avec les droits de root peut ếgalement accéder aux niveaux inférieurs de la pile TCP- UDP/IP/Ethernet par le biais des mécanismes raw-socket. On commence par la création d'un socket en mode raw: int s; s = socket(pf_packet, SOCK_RAW, htons(eth_p_all)); Le socket s peut fonctionner directement au niveau des paquets envoyés/réçus par le protocole Ethernet. Dans une trame Ethernet on peut insérer un paquet IP et un segment TCP ou un datagramme UDP. Dans ce contexte on peut, soit suivre les standards Internet et reproduire le fonctionnement des protocoles IP/TCP-UDP soit développer sa propre pile de protocoles. Envoi d'une trame Ethernet L'envoi d'une trame Ethernet nécessite la préparation de l'adresse source (6 octets), l'adresse de destination (6 octets), le type de protocole utilisateur (2 octets) plus les données utilisateur à transmettre par la trame. Fig.1. Trame Ethernet
3 Rappelons qu'une trame Ethernet est composée: de 2 adresses (source et destination) de 6 octets, d'un champs de contrôle de 2 octets, d'un champs de données de min 46 et max 1500 octets, et de la somme de test sur 4 octet qui est générée automatiquement par le l'interface. La structure ci-dessous doit être préparée avant son utilisation dans la fonction sendto(). struct sockaddr_ll destaddr; // addresse d'un socket au niveau de lien Les adresses Ethernet peuvent être préparées/initialisées comme suit: MacAddress localmac = 0x00,0x00,0x00,0x00,0x00,0x00; //MacAddress localmac = 0x00,0x17,0xB3,0x00,0xa0,0x20; MacAddress destmac = 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF; //MacAddress destmac= 0x00,0xB0,0xD0,0x4C,0xD5,0xC6; La trame avec ses données est préparée dans un tampon: char buffer[buffer_len]; avant son utilisation la structure destaddr et le buffer doivent être initialisés par: memset(&destaddr, 0, sizeof(struct sockaddr_ll)); memset(buffer, 0, BUFFER_LEN); Puis la structure destaddr doit être remplie par: destaddr.sll_family = PF_PACKET; destaddr.sll_protocol = htons(eth_p_all); destaddr.sll_halen = 6; destaddr.sll_ifindex = 2; memcpy(&(destaddr.sll_addr),destmac,mac_addr_len); Ensuite nous préparons l'en-tête de la trame: short int ethertypet = htons(0x8200); // champs de controle memcpy(buffer,destmac,mac_addr_len); memcpy((buffer+mac_addr_len),localmac,mac_addr_len); memcpy((buffer+(2*mac_addr_len)),&(ethertypet),sizeof(ethertypet)); Pour finir la création de la trame nous y ajoutons nos données (mes_data): memcpy((buffer+ethertype_len+(2*mac_addr_len)),mes_data,len); Enfin la trame est envoyée par la fonction sendto(): int tl= 14+len; int ssockll = sizeof(struct sockaddr_ll); sendto(sockfd,buffer,tlen,0,(struct sockaddr *)&(destaddr),ssockll);
4 Réception d'une trame Ethernet La réception d'une trame Ethernet nécessite la préparation de l'interface qui doit capter les trames. Cet interface peut fonctionner en mode normal ou mode de promiscuité. Dans le mode normal seulement les trames destinées à cette interface serons captées par la station (les trames en diffusion inclues). Dans le mode de promiscuité une interface peut capter/sniffer toutes les trames. Dans chaque cas il faut identifier (bind) l'interface à utiliser par la captage des trames. Voici les éléménts d'un programme permettant de capter les trames envoyées sur l'interface donnée avec l'adressage UNICAST et l'adressage BROADCAST. Réception en mode normal La fonction de la création d'un socket en mode raw: int CreateRawSocket(int protocol) int rs; if((rs = socket(pf_packet,sock_raw,htons(protocol)))== 1) printf("error creating raw socket: "); exit( 1); return rs; La fonction de la réception d'une trame dans le buffer: unsigned char* ReceiveRawEth(int sd) unsigned char* buffer = (unsigned char*)malloc(eth_frame_len); memset(buffer, '\0', ETH_FRAME_LEN); // frame buffer reset int l = 0; // frame buffer length l=recvfrom(sd,buffer,eth_frame_len,0,(struct sockaddr *)0,(int*)0); return buffer;
5 Réception en mode de promiscuité Pour effectuer la lecture de toutes les trames nous avons besoin de mettre l'interface Ethernet en mode de fonctionnement en promiscuité. L'interface doit être explicitement liée au socket avant l'application du mode en promiscuité. Ci-dessous la fonction qui crée et lie le socket à l'interface Ethernet spécifiée (bind) et qui ajoute le mode de promiscuité. La fonction possède 1 argument: nom de l'interface à sniffer. int CreatePromiscuousSocket(char *name) int sd; struct ifreq ifr; struct sockaddr_ll interfaceaddr; struct packet_mreq mreq; if ((sd = socket(pf_packet,sock_raw,htons(eth_p_all))) < 0) return 1; // clearing the interfaceaddr link layer socket address memset(&interfaceaddr,0,sizeof(interfaceaddr)); // clearing the ifr interface control registers memset(&ifr,0,sizeof(ifr)); // clearing mreq packet control registers memset(&mreq,0,sizeof(mreq)); // preparing the interface name memcpy(&ifr.ifr_name,name,ifnamsiz); // setting the interface name to find the interface index ioctl(sd,siocgifindex,&ifr); // setting the interface index interfaceaddr.sll_ifindex = ifr.ifr_ifindex; // setting the address family for interface interfaceaddr.sll_family = AF_PACKET; // binding the socket to the identified interface if (bind(sd, (struct sockaddr *)&interfaceaddr,sizeof(interfaceaddr)) < 0) return 2; // preparing the interface index in packet control mreq.mr_ifindex = ifr.ifr_ifindex; // preparing the promiscuous mode for packet sniffing mreq.mr_type = PACKET_MR_PROMISC; // setting the MAC address size mreq.mr_alen = 6; // setting the promiscuous mode to the interface for packet sniffing if (setsockopt(sd,sol_packet,packet_add_membership, (void*)&mreq,(socklen_t)sizeof(mreq)) < 0) return 3; return sd;
6 Dans la fonction principale main() nous pouvons lire/capter les paquets Ethernet par la fonction recvfrom(): int len; unsigned char buffer[2000]; struct sockaddr_ll paddr; int spaddr = sizeof(packet_info); len = recvfrom(raw,buffer,2000,0,(struct sockaddr*)&paddr,&spaddr); Le paquet est reçu dans le buffer, la taille de la trame réçue est enregistrée dans la varaible len. La fonction suivante permet de visualiser/imprimer le contenu de la trame en caractères héxadécimaux: void PrintPacketInHex(unsigned char *packet, int len, int com) unsigned char *p = packet; int beg,end,num; int ip=0; int udp=0,tcp=0; static int count=0; count++; beg=0;end=0; ip=(*(packet+12)==0x08 && *(packet+13)==0x00); //IP protocol in ETH frame udp= ip && (*(packet+23)==0x11); // UDP protocol in IP packet tcp= ip && (*(packet+23)==0x06); // TCP protocol in IP packet switch (com) case 0: beg=0;end=len;break; // print all packet case 1: beg=0;end=13;break; // print header case 2: beg=0;end=5;break; // print destination address case 3: beg=6;end=11;break; // print source address case 4: beg=14;end=len 14;break; // print data only case 5: if(ip)beg=14;end=33;;break; // print IP header 8 bytes case 6: if(udp)beg=34;end=41;;break; // print UDP header 8 bytes case 7: if(tcp)beg=34;end=53;;break; // print TCP header 20 bytes // Exercise: here you put your modes: // 5 IP header // 6 IP/UDP header // 7 IP/TCP header default: beg=0;end=len; // print all packet printf("\n\n Packet nr %d size %d \n\n",count,len); if(end)num=end beg+1; else num=0; while(num ) printf("%.2x ", *(p+beg)); p++; printf("\n\n Packet ends \n"); Remarque Après cette introduction générale à l'utilisation de l'interface raw-socket dans le réseau Ethernet nous proposons 2 sujets de développement à partir du code préparé. Le premier sujet est une application qui permet de diffuser et de récevoir les fichiers transmis directement dans les trames Ethernet. Cette application ne peut fonctionner que sur un réseau local. Le deuxième sujet est préparé pour l'analyse des trames Ethernet portant les protocoles de plus haut niveau: le protocole IP, puis le protocoles UDP et TCP.
7 Sujet 1: Ecrire une application qui permet de diffuser/émettre et récevoir sur le réseau local les fichiers transmis directemment dans les trames Ethernet. L'émetteur doit fonctionner en mode de diffusion (BROADCAST) et en mode simple (UNICAST). Eléments de l'application faire des modifications/versions du programme fourni dans l'annexe: 1. programme/processus émetteur qui envoie les trames en diffusion ou en unicast 2. programme récépteur qui réçoit les trames lui destinées (BROADCAST ou UNICAST) Nous avons besoin de déterminer la valeur du champ ethertypefname pour pouvoir différencier notre protocole des protocoles existants sur le réseau et de différencier les types de données à envoyer dans les trames. Par exemple nous pouvons proposer: x0201 : pour la trame qui porte le nom du fichier à lire sur le poste distant x0202: pour la trame qui porte le contenu/fragment du fichier envoyé par le poste distant Le protocoles standard tels que IP ou ARP utilisent des valeurs spécifiques: IP 0x0800, ARP - 0x0806 Rappelons que la longueur d'un segment doit être limitée à 1500 octets ou moins selon la taille du tampon de réception. int CreateRawSocket(int protocol) int rs; if((rs = socket(pf_packet,sock_raw,htons(protocol)))== 1) printf("error creating raw socket: "); exit( 1); return rs; Le programme de l'émmeteur doit pouvoir fonctionner avec une adresse simple ou une adresse de diffusion: MacAddress localmac = 0x00,0x00,0x00,0x00,0x00,0x00; //MacAddress localmac = 0x00,0x17,0xB3,0x00,0xa0,0x20; MacAddress destmacbrd = 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF; //MacAddress destmacuni= 0x00,0xB0,0xD0,0x4C,0xD5,0xC6; Le programme du serveur/émetteur doit créer et envoyer une trame avec le type (x0201) et le nom du fichier à créer sur le poste du client puis envoyer le fichier, segment par segment, vers le client/récepteur avec le type Ethernet égal à x0202. Attention: L'ensemble peut fonctionner seulement avec un seul serveur/émetteur et un fiichier transmis à l'instant donné. Imaginez une amelioration qui permet d'identifier les séquences de trames (sessions) de
8 transmission appartennant au même fichier envoyé par un ou plusieurs serveurs. Annexe: Voici le programme complet du transfert des fichiers ( émetteur et récepteur ) à comprendre et à re-utiliser pour la création/intégration de votre application. Emetteur/diffuseur des fichiers #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <string.h> #include <sys/types.h> #include <sys/socket.h> #include <linux/if_ether.h> #include <netpacket/packet.h> extern int errno; #define ETHERTYPE_LEN 2 #define MAC_ADDR_LEN 6 #define BUFFER_LEN 320 #include <net/ethernet.h> #include <netinet/ether.h> typedef unsigned char MacAddress[MAC_ADDR_LEN]; // frame buffer // data:for data =304 //MacAddress localmac = 0x00, 0x00, 0x00, 0x00, 0x00, 0x00; // unknown MacAddress localmac = 0x00, 0xB0, 0xD0, 0x4C, 0xD5, 0xC6; //MacAddress destmac= 0x00, 0xB0, 0xD0, 0x4C, 0xD5, 0xC6; MacAddress destmac = 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF; // broadcast int main(int c, char *a[]) int sd = 0, retvalue = 0, len=0; int fd = 0; unsigned short nb=1; char buffer[buffer_len]; struct sockaddr_ll destaddr; short int ethertypet = htons(0x8200); short int ethertypefname = htons(0x0201); // send name short int ethertypefdata = htons(0x0202); // send data short int dlen; // data length if(getuid()) printf("you must be root (uid=0) to run this program!\n"); exit(0); memset(&destaddr, 0, sizeof(struct sockaddr_ll)); memset(buffer, 0, BUFFER_LEN); if((sd = socket(pf_packet, SOCK_RAW, htons(eth_p_all))) < 0) printf("socket() error\n"); exit(1); printf("socket creation success.\n"); fd=open(a[1],0); // local file to open and send if(fd<0) printf("no such file: %s\n",a[1]); exit(2); destaddr.sll_family =PF_PACKET; destaddr.sll_protocol = htons(eth_p_all);
9 destaddr.sll_halen = 6; destaddr.sll_ifindex = 2; memcpy(&(destaddr.sll_addr), destmac, MAC_ADDR_LEN); // Ethernet Header Construction: addresses 2*6 bytes memcpy(buffer, destmac, MAC_ADDR_LEN); memcpy((buffer+mac_addr_len), localmac, MAC_ADDR_LEN); // Ethernet Header Construction: type 2 bytes memcpy((buffer+(2*mac_addr_len)), &(ethertypefname), 2); // protocol type field: file name or file data memcpy((buffer+(2*mac_addr_len)+ethertype_len), &dlen, 2); // protocol data field length dlen=htons(strlen(a[2])+1); // file name memcpy((buffer+(2*mac_addr_len)+ethertype_len)+2, a[2], strlen(a[2])+1); len = 2*6+2+2+strlen(a[2])+1; // total frame length // sending the frame with the file name to be created at receiver side retvalue = sendto(sd, buffer, len, 0, (struct sockaddr *)&(destaddr), sizeof(struct sockaddr_ll)); while(nb) // reading the local file into frame buffer nb = read(fd,buffer+16,sizeof(buffer) 16); // preparing the frame header memcpy((buffer+(2*mac_addr_len)), &(ethertypefdata), 2); dlen=htons(nb); // convert short value in network format memcpy((buffer+(2*mac_addr_len)+ethertype_len), &dlen, 2); // sending the file data frame if((retvalue = sendto(sd, buffer, nb+16, 0, (struct sockaddr *)&(destaddr), sizeof(struct sockaddr_ll))) < 0) printf("sendto()) error \n"); exit(3); printf("send success (%d).\n", retvalue); // waiting for 200 microseconds before sending next frame usleep(200); return(0);
10 Récepteur des fichiers #include <stdio.h> #include <stdlib.h> #include <sys/socket.h> #include <linux/if_packet.h> #include <linux/if_ether.h> #include <linux/if_arp.h> #include <string.h> #define ETHERTYPE_LEN 2 #define MAC_ADDR_LEN 6 #define ETH_FRAME_LEN 320 int main(int c, char **a) int nb=1, fd; unsigned short count=1; int sd; // socket descriptor if(geteuid()) printf("you must be root (uid=0) to run this program! %d\n",geteuid()); exit(0); sd = socket(af_packet, SOCK_RAW, ntohs(eth_p_all)); if (sd == 1) printf("socket() error\n"); exit(1); // prepare the frame buffer unsigned char* buffer = (unsigned char*)malloc(eth_frame_len); memset(buffer, '\0', ETH_FRAME_LEN); // frame buffer reset int len = 0; // frame buffer length while(count) len = recvfrom(sd,buffer,eth_frame_len,0,(struct sockaddr *) 0,(int *) 0); printf("len:%d\n",len); if (len == 1) printf("error while receiving ethernet frame...\n"); exit(2); else printf("frame type %4.4x\n",*(buffer+12)); // frame type on 12th and 13th byte memcpy(&count,buffer+14,2); printf("counter %.4x\n",ntohs(count)); // print number of data bytes in frame : convert to host format if(*(buffer+12)==0x02 && *(buffer+13)==0x01) printf("name: %s\n",buffer+16); fd=creat(buffer+16,0777); // frame with file name : create the file if(*(buffer+12)==0x02 && *(buffer+13)==0x02) write(fd,buffer+16,ntohs(count)); // frame with file data : write to the file memset(buffer, '\0', ETH_FRAME_LEN); close(sd); close(fd);
11 Sujet 2: Ecrire une application qui permet de récevoir les trames en mode de promiscuité et d'afficher le contenu formaté des trames captées. 1. Afficher les en-têtes de trames Ethernet. 2. Afficher les en-têtes de trames Ethernet et des paquets IP et segments TCP/UDP portés dans les trames. Elements de l'application: int CreatePromiscuousSocket(char *name) int sd; struct ifreq ifr; struct sockaddr_ll interfaceaddr; struct packet_mreq mreq; if ((sd = socket(pf_packet,sock_raw,htons(eth_p_all))) < 0) return 1; // clearing the interfaceaddr link layer socket address memset(&interfaceaddr,0,sizeof(interfaceaddr)); // clearing the ifr interface control registers memset(&ifr,0,sizeof(ifr)); // clearing mreq packet control registers memset(&mreq,0,sizeof(mreq)); // preparing the interface name memcpy(&ifr.ifr_name,name,ifnamsiz); // setting the interface name to find the iterface index ioctl(sd,siocgifindex,&ifr); // setting the interface index interfaceaddr.sll_ifindex = ifr.ifr_ifindex; // setting the address family for interface interfaceaddr.sll_family = AF_PACKET; // binding the socket to the identified interface if (bind(sd, (struct sockaddr *)&interfaceaddr,sizeof(interfaceaddr)) < 0) return 2; // preparing the interface index in packet control mreq.mr_ifindex = ifr.ifr_ifindex; // preparing the promiscuous mode for packet sniffing mreq.mr_type = PACKET_MR_PROMISC; // setting the MAC address size mreq.mr_alen = 6; // setting the promiscuous mode to the interface for packet sniffing if (setsockopt(sd,sol_packet,packet_add_membership, (void*)&mreq,(socklen_t)sizeof(mreq)) < 0) return 3; return sd;
12 unsigned char* ReceiveRawEth(int sd) unsigned char* buffer = (unsigned char*)malloc(eth_frame_len); memset(buffer, '\0', ETH_FRAME_LEN); // frame buffer reset int l = 0; // frame buffer length l=recvfrom(sd,buffer,eth_frame_len,0,(struct sockaddr *)0,(int*)0); return buffer; void PrintPacketInHex(unsigned char *packet, int len, int com) unsigned char *p = packet; int beg,end,num; int ip=0; int udp=0,tcp=0; static int count=0; count++; beg=0;end=0; ip=(*(packet+12)==0x08 && *(packet+13)==0x00); //IP protocol in ETH frame udp= ip && (*(packet+23)==0x11); // UDP protocol in IP packet tcp= ip && (*(packet+23)==0x06); // TCP protocol in IP packet switch (com) case 0: beg=0;end=len;break; // print all packet case 1: beg=0;end=13;break; // print header case 2: beg=0;end=5;break; // print destination address case 3: beg=6;end=11;break; // print source address case 4: beg=14;end=len 14;break; // print data only case 5: if(ip)beg=14;end=33;;break; // print IP header 8 bytes case 6: if(udp)beg=34;end=41;;break; // print UDP header 8 bytes case 7: if(tcp)beg=34;end=53;;break; // print TCP header 20 bytes // Exercise: here you put your modes: // 5 IP header // 6 IP/UDP header // 7 IP/TCP header default: beg=0;end=len; // print all packet printf("\n\n Packet nr %d size %d \n\n",count,len); if(end)num=end beg+1; else num=0; while(num ) printf("%.2x ", *(p+beg)); p++; printf("\n\n Packet ends \n"); Attention: Cette fonction doit être completée afin de pouvoir imprimer/afficher les en-têtes du protocole IP et des protocoles TCP/UDP.
13 Le format d'un en-tête de protocole IP de base est donné ci-dessous (sans options 20 octets): La valeur du champ Protocol est 6 (0x06) pour TCP et 17 (0x11) pour UDP Le format d'un en-tête UDP est illustré ci-dessous (8 octets): Le format d'u en-tête TCP est donné ci-dessous (20 octets sans options):
14 Annexe: #include<stdio.h> #include<stdlib.h> #include<sys/socket.h> #include<features.h> #include<linux/if_packet.h> #include<linux/if_ether.h> #include<errno.h> #include<sys/ioctl.h> #include<net/if.h> int CreatePromiscuousSocket(char *name) int sd; struct ifreq ifr; struct sockaddr_ll interfaceaddr; struct packet_mreq mreq; if ((sd = socket(pf_packet,sock_raw,htons(eth_p_all))) < 0) return 1; // clearing the interfaceaddr link layer socket address memset(&interfaceaddr,0,sizeof(interfaceaddr)); // clearing the ifr interface control registers memset(&ifr,0,sizeof(ifr)); // clearing mreq packet control registers memset(&mreq,0,sizeof(mreq)); // preparing the interface name memcpy(&ifr.ifr_name,name,ifnamsiz); // setting the interface name to find the iterface index ioctl(sd,siocgifindex,&ifr); // setting the interface index interfaceaddr.sll_ifindex = ifr.ifr_ifindex; // setting the address family for interface interfaceaddr.sll_family = AF_PACKET; // binding the socket to the identified interface if (bind(sd, (struct sockaddr *)&interfaceaddr,sizeof(interfaceaddr)) < 0) return 2; // preparing the interface index in packet control mreq.mr_ifindex = ifr.ifr_ifindex; // preparing the promiscuous mode for packet sniffing mreq.mr_type = PACKET_MR_PROMISC; // setting the MAC address size mreq.mr_alen = 6; // setting the promiscuous mode to the interface for packet sniffing if (setsockopt(sd,sol_packet,packet_add_membership, (void*)&mreq,(socklen_t)sizeof(mreq)) < 0) return 3; return sd;
15 void PrintPacketInHex(unsigned char *packet, int len, int com) unsigned char *p = packet; int beg,end,num; int ip=0; int udp=0,tcp=0; static int count=0; count++; beg=0;end=0; ip=(*(packet+12)==0x08 && *(packet+13)==0x00); //IP protocol in ETH frame udp= ip && (*(packet+23)==0x11); // UDP protocol in IP packet tcp= ip && (*(packet+23)==0x06); // TCP protocol in IP packet switch (com) case 0: beg=0;end=len;break; // print all packet case 1: beg=0;end=13;break; // print header case 2: beg=0;end=5;break; // print destination address case 3: beg=6;end=11;break; // print source address case 4: beg=14;end=len 14;break; // print data only case 5: if(ip)beg=14;end=33;;break; // print IP header 8 bytes case 6: if(udp)beg=34;end=41;;break; // print UDP header 8 bytes case 7: if(tcp)beg=34;end=53;;break; // print TCP header 20 bytes // Exercise: here you put your modes: // 5 IP header // 6 IP/UDP header // 7 IP/TCP header default: beg=0;end=len; // print all packet printf("\n\n Packet nr %d size %d \n\n",count,len); if(end)num=end beg+1; else num=0; while(num ) printf("%.2x ", *(p+beg)); p++; printf("\n\n Packet ends \n");
16 main(int c,char **a) int sd; unsigned char buf[1500]; struct sockaddr_ll addr; socklen_t addr_len = sizeof(addr); int n; int com; if(getuid()) printf("you must be root (uid=0) to run this program!\n"); exit(0); if(c!=3) printf("usage: s2.sniffall interface_name protocol_to_sniff\n"); printf("0 all packet\n"); printf("1 ETH header\n"); printf("2 ETH dest address\n"); printf("3 ETH source address\n"); printf("4 ETH data\n"); printf("5 IP header\n"); printf("6 UDP header\n"); printf("7 TCP header\n"); exit(1); sd=createpromiscuoussocket(a[1]); // a[1] interface name com = atoi(a[2]); // protocol to sniff while(1) n = recvfrom(sd, buf, 2000, 0, (struct sockaddr*)&addr, &addr_len); if (n <= 0) printf("error reading\n"); else PrintPacketInHex(buf,n,com);
1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau
1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau Fonctionnement de l Internet Fonctionnement de l Internet Basé sur une architecture TCP/IP du nom des deux principaux protocoles
Plus en détailProgrammation système de commandes en C
Programmation système de commandes en C Cours de Programmation système Tuyêt Trâm DANG NGOC Université de Cergy-Pontoise 2012 2013 Tuyêt Trâm DANG NGOC Programmation système de commandes
Plus en détailCahier des charges. driver WIFI pour chipset Ralink RT2571W. sur hardware ARM7
Cahier des charges driver WIFI pour chipset Ralink RT2571W sur hardware ARM7 RevA 13/03/2006 Création du document Sylvain Huet RevB 16/03/2006 Fusion des fonctions ARP et IP. SH Modification des milestones
Plus en détail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailTravaux Pratiques Introduction aux réseaux IP
Université de Savoie Initiation aux réseaux IP Travaux Pratiques Introduction aux réseaux IP Sylvain MONTAGNY sylvain.montagny@univ-savoie.fr Bâtiment chablais, bureau 13 04 79 75 86 86 TP1 : Analyse la
Plus en détailDNS Server RPC Interface buffer overflow. Céline COLLUMEAU Nicolas BODIN
Mémoire DNS Server RPC Interface buffer overflow Céline COLLUMEAU Nicolas BODIN 3 janvier 2009 Table des matières 1 Introduction 2 2 Présentation de la faille 3 3 Exemple d exploitation 5 4 Solutions 10
Plus en détailCouche application. La couche application est la plus élevée du modèle de référence.
Couche application La couche application est la plus élevée du modèle de référence. Elle est la source et la destination finale de toutes les données à transporter. Couche application La couche application
Plus en détailApplications client/serveur TCP/IP - Sockets Rappels. C.Crochepeyre Applications CS 1
Applications client/serveur TCP/IP - Sockets Rappels C.Crochepeyre Applications CS 1 PLAN Modèle client/serveur Modèle ISO et protocole TCP/IP Comment ça marche? La programmation: les sockets Exemples
Plus en détailSkype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN http://www.oklabs.net
Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN http://www.oklabs.net : Champ Encodé SKWRITTEN() : Champ Variable défini Précédemment & définissant l état des champs à suivre ECT
Plus en détailII/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)
II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection) II.2/ Description des couches 1&2 La couche physique s'occupe de la transmission des bits de façon brute sur un canal de
Plus en détailPrésentation du modèle OSI(Open Systems Interconnection)
Présentation du modèle OSI(Open Systems Interconnection) Les couches hautes: Responsables du traitement de l'information relative à la gestion des échanges entre systèmes informatiques. Couches basses:
Plus en détailArchivage Messagerie Evolution pour usage HTML en utilisant Hypermail
Finalités Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail Réalisé par sa modestie Arnaud de VILLEDON de NAIDE, le 9 mars 2013 Document sous licence GPL. Vous avez le droit d'en faire
Plus en détailETHEREAL. Introduction. 1. Qu'est-ce qu'ethereal. 1.1. Historique. 1.2. Le statut d'ethereal
ETHEREAL Introduction Ethereal fait partie des logiciels les plus utilisés dans le milieu de l'administration d'un réseau physique. En effet cet outil "open source" très pratique, donc sous une license
Plus en détailOS Réseaux et Programmation Système - C5
OS Réseaux et Programmation Système - C5 Rabie Ben Atitallah rabie.benatitallah@univ-valenciennes.fr RPC - XDR Rappel RPC: Remote Procedure Call Besoin d un environnement de haut niveau pour le développement
Plus en détailExercice sur les Dockers
Exercice sur les Dockers Les parties composant les Dockers: 1 docker daemon: est un démon qui gère les dockers (les conteneurs LXC) qui tournent sur la machine hôte 2 docker CLI: une série de commandes
Plus en détailIntroduction. Adresses
Architecture TCP/IP Introduction ITC7-2: Cours IP ESIREM Infotronique Olivier Togni, LE2I (038039)3887 olivier.togni@u-bourgogne.fr 27 février 2008 L Internet est basé sur l architecture TCP/IP du nom
Plus en détailCommunication par sockets
Rappel : le réseau vu de l!utilisateur (1) Communication par sockets Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/~krakowia (demande un service)
Plus en détailOutils d'analyse de la sécurité des réseaux. HADJALI Anis VESA Vlad
Outils d'analyse de la sécurité des réseaux HADJALI Anis VESA Vlad Plan Introduction Scanneurs de port Les systèmes de détection d'intrusion (SDI) Les renifleurs (sniffer) Exemples d'utilisation Conclusions
Plus en détailProtocoles réseaux. Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1).
Chapitre 5 Protocoles réseaux Durée : 4 Heures Type : Théorique I. Rappel 1. Le bit Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1). 2. L'octet C'est un ensemble de 8 bits.
Plus en détailPlan. É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étailL3 informatique Réseaux : Configuration d une interface réseau
L3 informatique Réseaux : Configuration d une interface réseau Sovanna Tan Septembre 2009 Révision septembre 2012 1/23 Sovanna Tan Configuration d une interface réseau Plan 1 Introduction aux réseaux 2
Plus en détailLe prototype de la fonction main()
Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme
Plus en détailFirewall. 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étailTP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname
Département d'informatique Architecture des réseaux TP2 - Conguration réseau et commandes utiles L'objectif de ce TP est d'une part de vous présenter la conguration réseau d'une machine dans l'environnement
Plus en détailIntroduction à la Programmation Parallèle: MPI
Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4
Plus en détailInternet Protocol. «La couche IP du réseau Internet»
Internet Protocol «La couche IP du réseau Internet» Rôle de la couche IP Emission d un paquet sur le réseau Réception d un paquet depuis le réseau Configuration IP par l administrateur Noyau IP Performance
Plus en détailSTS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module
François SCHNEIDER Lycée Victor-Hugo BESANÇON. STS SE FreeRTOS Programmation réseau WIFI Programmation réseau Socket Tcp FlyPort smart Wi-Fi 802.11 module Prérequis : langage C, connaissance réseau : Ip,
Plus en détailTP 1 : LES COMMANDES RESEAUX Matière: RESEAUX LOCAUX
TP 1 : LES COMMANDES RESEAUX Matière: RESEAUX LOCAUX Enseignant: Ramzi BELLAZREG 1 La commande PING Cette commande permet de vérifier si un hôte est joignable ou non. Cette commande est basée sur le protocole
Plus en détailDHCP et NAT. Cyril Rabat cyril.rabat@univ-reims.fr. Master 2 ASR - Info09115 - Architecture des réseaux d entreprise 2012-2013
DHCP et NAT Cyril Rabat cyril.rabat@univ-reims.fr Master 2 ASR - Info09115 - Architecture des réseaux d entreprise 22-23 Cours n 9 Présentation des protocoles BOOTP et DHCP Présentation du NAT Version
Plus en détailMaster 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étailConfiguration réseau Basique
Configuration réseau Basique 1. Configuration réseau bas niveau Les outils de configuration réseau bas niveau traditionnels des systèmes GNU/Linux sont les programmes ifconfig et route qui viennent dans
Plus en détailChapitre 6 -TP : Support Réseau des Accès Utilisateurs
SI 2 BTS Services Informatiques aux Organisations 1 ère année Chapitre 6 -TP : Support Réseau des Accès Utilisateurs Acquisition automatique de configuration par requêtes DHCP Objectifs : Comprendre les
Plus en détailSystèmes et Réseaux (ASR 2) - Notes de cours Cours 14
Systèmes et Réseaux (ASR ) - Notes de cours Cours Anne Benoit May, 0 PARTIE : Systèmes PARTIE : Réseaux Architecture des réseaux de communication La couche -liaison La couche -réseau Algorithmes de routage
Plus en détailChapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet
Chapitre I La couche réseau 1. Couche réseau 1 Historique de l Internet Né 1969 comme projet (D)ARPA (Defense) Advanced Research Projects Agency; US Commutation de paquets Interconnexion des universités
Plus en détailCommunication sous UNIX les sockets
Communication sous UNIX les sockets Chaput Emmanuel Version 1.04 Résumé Ce but de ce petit document est de décrire la programmation des sockets sous Unix afin d aider le programmeur à développer des applications
Plus en détailCapture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark
Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark Wireshark est un programme informatique libre de droit, qui permet de capturer et d analyser les trames d information qui transitent
Plus en détailRéseaux IUP2 / 2005 IPv6
Réseaux IUP2 / 2005 IPv6 1 IP v6 : Objectifs Résoudre la pénurie d'adresses IP v4 Délai grâce à CIDR et NAT Milliards d'hôtes même avec allocation inefficace des adresses Réduire la taille des tables de
Plus en détailInternet Le service de noms - DNS
Internet Le service de noms - DNS P. Bakowski bako@ieee.org Domaines Internet DNS - Domain Name System hostname : nom symbolique adresse IP : un nombre/valeur logique hostname : www.polytech2go.fr IP address
Plus en détailTéléphonie Cisco. - CME Manager Express = Logiciel dans un routeur, version simplifiée du call manager.
Téléphonie Cisco I) Généralités Serveur de téléphonie: Call Manager CM et Call Manager Express ( CME ) - CM Call Manager = Logiciel sur un PC externe - CME Manager Express = Logiciel dans un routeur, version
Plus en détailAnnée Universitaire 2010-2011 session 1 d automne Parcours : CSB5 Licence 3 STS Informatique
Année Universitaire 2010-2011 session 1 d automne Parcours : CSB5 Licence 3 STS Informatique UE : INF157 Épreuve : Examen Utilisation des réseaux Date : 13 décembre 2010 Heure : 8h30 Durée : 1h30 Modalités
Plus en détailCouche Transport TCP et UDP
Partie 7: Couche Transport TCP et UDP Ahmed Mehaoua - 1 Le Modèle OSI Application Présentation Session Transport Réseau Liaison Physique Application Présentation Session Transport Réseau Liaison Physique
Plus en détailRéseau - VirtualBox. Sommaire
Réseau - VirtualBox 2015 tv - v.1.0 - produit le 10 mars 2015 Sommaire Le réseau virtuel 2 Introduction.............................................. 2 Modes réseaux............................................
Plus en détailDIFF AVANCÉE. Samy. samy@via.ecp.fr
DIFF AVANCÉE Samy samy@via.ecp.fr I. RETOUR SUR QUELQUES PROTOCOLES COUCHE FONCTIONS Protocoles 7 Application 6 Présentation 5 Session 4 Transport 3 Réseau 2 Liaison 1 Physique Interface entre l utilisateur
Plus en détailProgrammation client-serveur sockets - RPC
Master Informatique M Plan de la suite Programmation client-serveur sockets - RPC Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/people/krakowia
Plus en détailCours 6 : Tubes anonymes et nommés
Cours 6 : Tubes anonymes et nommés Mécanisme de communications du système de fichiers I-node associé. Type de fichier: S_IFIFO. Accès au travers des primitives read et write. Les tubes sont unidirectionnels
Plus en détailCommunication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle
F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Communication inter-processus (IPC) : tubes & sockets exemples en C et en Java F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Java : implémentation
Plus en détailL annuaire et le Service DNS
L annuaire et le Service DNS Rappel concernant la solution des noms Un nom d hôte est un alias assigné à un ordinateur. Pour l identifier dans un réseau TCP/IP, ce nom peut être différent du nom NETBIOS.
Plus en détailI>~I.J 4j1.bJ1UlJ ~..;W:i 1U
~I ~~I ~ ~WI~I ~WI ~~'~.M ~ o~wj' js'~' ~ ~JA1ol..;l.:w I>~I.J 4j1.bJ1UlJ ~..;W:i 1U Exercice 1: Le modele TCP/IP est traditionnellement considere comme une pile de 5 couches. Pour chaque couche, expliquer
Plus en détailLes possibilités de paramétrage réseau des logiciels de virtualisation sont les suivantes quant à la connexion réseau :
DHCP TP Le protocole DHCP (Dynamic Host Configuration Protocol) est un standard TCP/IP conçu pour simplifier la gestion de la configuration d'ip hôte. DHCP permet d'utiliser des serveurs pour affecter
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailSécuriser son réseau. Sécuriser son réseau Philippe Weill (IPSL/LATMOS) Frédéric Bongat (SSI/GOUV/FR)
Sécuriser son réseau Sécuriser son réseau Philippe Weill (IPSL/LATMOS) Frédéric Bongat (SSI/GOUV/FR) Plan Rappel IP Techniques et outils Réseaux Outils réseaux ( sniffer,scanner ) Translation d adresse
Plus en détailSYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM
SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM Copyright TECH 2012 Technext - 8, avenue Saint Jean - 06400 CANNES Société - TECHNEXT France - Tel : (+ 33) 6 09 87 62 92 - Fax :
Plus en détailLe Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr
Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables
Plus en détailDHCPD v3 Installation et configuration
DHCPD v3 Installation et configuration Table des matières 1. Préambule... 2 2. Pré-requis... 2 3. Récupération du paquet... 2 4. Configuration du serveur... 3 4.1. Configuration de la carte réseau du serveur...
Plus en détailRappels réseaux TCP/IP
Rappels réseaux TCP/IP Premier Maître Jean Baptiste FAVRE DCSIM / SDE / SIC / Audit SSI jean-baptiste.favre@marine.defense.gouv.fr CFI Juin 2005: Firewall (1) 15 mai 2005 Diapositive N 1 /27 Au menu Modèle
Plus en détailI. Adresse IP et nom DNS
Le système GNU/Linux Réseau et configuration IP By ShareVB Table des matières I.Adresse IP et nom DNS...1 II.Nom de la machine locale sous Debian...2 III.Nom de la machine locale sous Fedora...2 IV.Résolution
Plus en détailConfiguration automatique
Configuration automatique (/home/terre/d01/adp/bcousin/polys/internet:gestion_reseau/6.dhcp.fm- 29 Septembre 1999 12:07) PLAN Introduction Les principes de DHCP Le protocole DHCP Conclusion Bibliographie
Plus en détail3IS - Système d'exploitation linux - Programmation système
3IS - Système d'exploitation linux - Programmation système 2010 David Picard Contributions de : Arnaud Revel, Mickaël Maillard picard@ensea.fr Environnement Les programmes peuvent être exécutés dans des
Plus en détailProtocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier
Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier Plan 1. ARP 2. DHCP 3. ICMP et ping 4. DNS 5.Paquet IPv4 1.
Plus en détailRappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:
Administration d un Intranet Rappel: Le routage dans Internet La décision dans IP du routage: - Table de routage: Adresse destination (partie réseau), netmask, adresse routeur voisin Déterminer un plan
Plus en détailLa qualité de service (QoS)
La qualité de service (QoS) Le domaine de prédilection de la QoS est la voix sur IP (VoIP). Afin de nous familiariser avec les principales commandes, nous allons monter l architecture de test suivante
Plus en détailSECURIDAY 2012 Pro Edition
SECURINETS CLUB DE LA SECURITE INFORMATIQUE INSAT SECURIDAY 2012 Pro Edition [Application de notification en cas d incident] Roua TOUIHRI (RT3) Nesrine DRIWECH (RT3) Amira ABID(GL3) Chef Atelier : Aymen
Plus en détailNOTICE INSTALLATION. ARCHANGE Email Simplex Office N&B/Couleur KONICA MINOLTA BUSINESS SOLUTIONS FRANCE
NOTICE INSTALLATION ARCHANGE Email Simplex Office N&B/Couleur KONICA MINOLTA BUSINESS SOLUTIONS FRANCE Date Version Marque de révision Rédaction 31/07/2012 1 - Nicolas AUBLIN 1) PRINCIPE DE FONCTIONNEMENT...
Plus en détailLes Réseaux Privés Virtuels (VPN) Définition d'un VPN
Les Réseaux Privés Virtuels (VPN) 1 Définition d'un VPN Un VPN est un réseau privé qui utilise un réseau publique comme backbone Seuls les utilisateurs ou les groupes qui sont enregistrés dans ce vpn peuvent
Plus en détailMr. B. Benaissa. Centre universitaire Nâama LOGO
Mr. B. Benaissa Centre universitaire Nâama Dans ce chapitre, nous allons examiner le rôle de la couche application. Nous découvrirons également comment les applications, les services et les protocoles
Plus en détailCONVERTISSEUR RS 232/485 NOTICE
CONVERTISSEUR RS 232/485 068745 068745 NOTICE Ce convertisseur TCP/IP permet de convertir tous équipements à liaison série et de les superviser sur un réseau LAN. Sommaire 1 Description du produit...2
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailPlan. Programmation Internet Cours 3. Organismes de standardisation
Plan Programmation Internet Cours 3 Kim Nguy ên http://www.lri.fr/~kn 1. Système d exploitation 2. Réseau et Internet 2.1 Principes des réseaux 2.2 TCP/IP 2.3 Adresses, routage, DNS 30 septembre 2013 1
Plus en détailIntroduction à l'analyse réseau Philippe Latu philippe.latu(at)linux-france.org
Philippe Latu philippe.latu(at)linux-france.org http://www.linux-france.org/prj/inetdoc/ Historique des versions $Revision: 12 $ $Date: 2004/12/09 16:24:42 $ PL Année universitaire 2004-2005 Table des
Plus en détailLes Virtual LAN. F. Nolot. Master 1 STIC-Informatique 1
Les Virtual LAN Master 1 STIC-Informatique 1 Les Virtual LAN Introduction Master 1 STIC-Informatique 2 Les Réseaux Locaux Virtuels (VLAN) Avantages des LAN Communication rapide, broadcasts Problèmes des
Plus en détailPlan. Rappels sur Netflow v1 v8. Netflow v9. Collecteur UTC «IPFlow» Cisco IOS : Implémentation de Netflow IPv6
Netflow-IPv6 Plan Qu est-ce qu un flux principes de Netflow Rappels sur Netflow v1 v8 Netflow v9 Collecteur UTC «IPFlow» Cisco IOS : Implémentation de Netflow IPv6 2 Qu est-ce qu un flux principes de Netflow
Plus en détailRé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étailCours de C. Petits secrets du C & programmation avancée. Sébastien Paumier
Cours de C Petits secrets du C & programmation avancée Sébastien Paumier paumier@univ-mlv.fr Illustrations provenant du site http://tux.crystalxp.net/ 1 Affectations étendues a+=expression a=a+expression
Plus en détailAdministration du WG302 en SSH par Magicsam
Administration du WG302 en SSH par Magicsam Le Point d'accès WG302 comprend une interface sécurisée de commande en ligne Telnet. Deux possibilités pour administrer le WG302 en SSH : via le port série situé
Plus en détailChapitre 2 Machines virtuelles et services
Chapitre 2 Machines virtuelles et services 1. Introduction Machines virtuelles et services Le Proxmox étant installé, nous allons nous atteler à créer différentes machines virtuelles telles que présentées
Plus en détailPlaying with ptrace() for fun and profit
sous GNU/Linux nicolas.bareil@eads.net EADS Corporate Research Center - DCR/STI/C SSI Lab SSTIC 2006 Il était une fois... Sous UNIX, ptrace() est le seul moyen de debuggage. User-space, Interface rigide
Plus en détailInternet Group Management Protocol (IGMP) Multicast Listener Discovery ( MLD ) RFC 2710 (MLD version 1) RFC 3810 (MLD version 2)
Internet Group Management Protocol (IGMP) Multicast Listener Discovery ( MLD ) RFC 2710 (MLD version 1) RFC 3810 (MLD version 2) multicast applications Site NREN MLD / IGMP IGMP v2 : generality Interaction
Plus en détailMise en place d un cluster NLB (v1.12)
Mise en place d un cluster NLB (v1.12) Tutorial conçu et rédigé par Michel de CREVOISIER Avril 2013 SOURCES Présentation du NLB : http://technet.microsoft.com/en-us/library/bb742455.aspx Installation :
Plus en détailRéseaux et protocoles Damien Nouvel
Réseaux et protocoles Plan Les couches du réseau Suite de protocoles TCP/IP Protocoles applicatifs pour les sites web Requêtes HTTP 2 / 35 Plan Les couches du réseau Suite de protocoles TCP/IP Protocoles
Plus en détailLe protocole TCP. Services de TCP
Le protocole TCP TCP (Transmission Control Procedure) est un protocole de transport bout-en-bout (Host-To- Host) Ajoute les fonctions que le réseau ne peut offrir et qui sont demandées par les applications
Plus en détailDynamic Host Configuration Protocol
Dynamic Host Configuration Protocol 1 2 problèmes de gestion avec IP La Gestion des adresses IP Les adresses IP doivent être unique Nécessité d une liste d ordinateurs avec leurs adresses IP respectives
Plus en détailCOMMANDES RÉSEAUX TCP/IP WINDOWS. frati@unice.fr
COMMANDES RÉSEAUX TCP/IP WINDOWS frati@unice.fr COMMANDES RÉSEAUX TCP/IP WINDOWS Ipconfig Ping Tracert Route Netstat Arp Nslookup Hostname Finger Netmon Telnet / ssh Ftp / scp Net Netsh Nbtstat PING :
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailAdministration Réseau sous Ubuntu SERVER 12.10 Serveur DHCP
Installation d un serveur DHCP (Dynamic Host Configuration Protocol) sous Ubuntu Server 12.10 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières 1. Comment le protocole DHCP alloue
Plus en détailSurveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition
Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution
Plus en détailContrôleur de communications réseau. Guide de configuration rapide DN1657-0606
K T - N C C Contrôleur de communications réseau Guide de configuration rapide DN1657-0606 Objectif de ce document Ce Guide de configuration rapide s adresse aux installateurs qui sont déjà familiers avec
Plus en détailTP : STATION BLANI 2000 SIMULATION DU RESEAU INFORMATIQUE
SIN STI2D - Système d'information et Numérique TD TP Cours Synthèse Devoir Evaluation Projet Document ressource TP : STATION BLANI 2000 SIMULATION DU RESEAU INFORMATIQUE 1 MISE EN SITUATION Le plan réseau
Plus en détailFILTRAGE de PAQUETS NetFilter
TP RESEAUX MMI Semestre 3 FILTRAGE de PAQUETS NetFilter OBJECTIF : Introduction à Netfilter. Configuration d'un firewall. MATERIELS : (Machines Virtuelles) 1 Serveur Debian avec apache d'installé, 1 Poste
Plus en détail2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant. http://robert.cireddu.free.
2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES 2.2 Architecture fonctionnelle d un système communicant Page:1/11 http://robert.cireddu.free.fr/sin LES DÉFENSES Objectifs du COURS : Ce cours traitera essentiellement
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailDéveloppement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée)
Développement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée) Propriétés Description Intitulé long Formation concernée Matière Présentation Développement d un logiciel de messagerie
Plus en détailLe Multicast. A Guyancourt le 16-08-2012
Le Multicast A Guyancourt le 16-08-2012 Le MULTICAST Définition: On entend par Multicast le fait de communiquer simultanément avec un groupe d ordinateurs identifiés par une adresse spécifique (adresse
Plus en détailTélécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS
Télécommunications IV - &6, ARP, DHCP, 1 32 bits => 2 32 adresses => 4'294'967'296 C'était largement suffisant dans les années 80 (Internet n'était constitué que de plusieurs centaines de noeuds) Clairement
Plus en détailTechnique de défense dans un réseau
Technique de défense dans un réseau Projet présenté dans le cadre des Bourses d'excellence ASIQ 2011-2012 Présenté par : Frédérik Paradis fredy_14@live.fr Gregory Eric Sanderson gzou2000@gmail.com Louis-Étienne
Plus en détailLes ACL Cisco. F. Nolot Master 2 Professionnel STIC-Informatique 1
Les ACL Cisco Master 2 Professionnel STIC-Informatique 1 Les ACL Cisco Présentation Master 2 Professionnel STIC-Informatique 2 Les ACL Cisco? Les ACL (Access Control Lists) permettent de filtrer des packets
Plus en détailNanoSense. Protocole Modbus de la sonde Particules P4000. (Version 01F)
NanoSense 123 rue de Bellevue, 92100 Boulogne Billancourt France Tél : 33-(0) 1 41 41 00 02, fax : 33-(0) 1 41 41 06 72 Protocole Modbus de la sonde Particules P4000 (Version 01F) Ver V01A V01B V01C V01D
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailDHCP. Dynamic Host Configuration Protocol
DHCP Dynamic Host Configuration Protocol DHCP : Dynamic Host Configuration Protocol Permet la configuration des paramètres IP d une machine: adresse IP masque de sous-réseau l adresse de la passerelle
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détail