la ligne de commande - Panoramic BASIC Language
Transcription
la ligne de commande - Panoramic BASIC Language
LA LIGNE DE COMMANDE 1-INTRODUCTION La ligne de commande n'est pas le DOS. Le DOS 16 bits est bel et bien mort. La ligne de commande possède beaucoup plus de possibilités et il n'y a plus aucune limitation 16 bits. Pour exécuter la ligne de commande, on fait appel à l'interpréteur de commandes qui est fourni sous le nom CMD.EXE. La fenêtre de l'invite de commande peut être ouverte en tapant CMD dans Démarrer → Exécuter ou via Démarrer → Tous les programmes → Accessoires. L'invite de commande reconnaît deux types de commandes: les commandes internes et les commandes externes. Vous trouvez sur le lien suivant un excellent article que vous pouvez télécharger en format PDF http://windows.developpez.com/cours/ligne-commande/ Ce même article se trouve sur mon Webdav http://www.mydrive.ch Username: panoramic@papydall Passworld: panoramic123 dossier: PDF Fichier: ligne-commande.pdf Je vous recommande vivement d'y jeter un œil. Rassurez-vous: bien que la langue française ne nous dise pas comment récupérer notre œil après l'avoir jeté, vous ne serez pas borgne pour autant! Au contraire, votre vision de la chose ne sera que meilleure. Voila vous êtes prévenus! 2-PANORAMIC ET LA LIGNE DE COMMANDE PANORAMIC dispose de la commande EXECUTE_WAIT F [p] qui permet d'exécuter le fichier F en lui transmettant un ou plusieurs paramètres éventuels et attend la fin. On peut donc appeler la ligne de commande à partir de PANORAMIC: Code EXECUTE_WAIT CMD.EXE En exécutant ce code, une fenêtre en noir et blanc s'ouvre alors sur l'invite de commande. A partir de là vous pouvez essayer quelques commandes, par exemple tapez DIR suivi de <Enter>.Vous obtiendrez une liste des fichiers et des sous-répertoires du répertoire en cours. HELP affiche une liste non exhaustive des commandes. Si HELP est suivi du nom d'une commande, vous obtiendrez la syntaxe complète de la commande avec les paramètres optionnels et leurs significations. Exemple: tapez pour voir: HELP DIR suivi de <ENTER>. Redirection de la sortie d'une commande Vous avez remarqué que la sortie se fait sur la fenêtre de l'invite de commande (la fenêtre en noir et blanc). On peut utiliser plusieurs symboles qui modifient ou combinent les actions des commandes. Par exemple: Le signe > permet d'envoyer la sortie de la commande vers un fichier texte. Si le fichier spécifié existe, il est écrasé. Le double signe >> permet d'envoyer la sortie de la commande vers un fichier texte. Si le fichier spécifié existe déjà, il sera complété et, s'il n'existe pas, il sera créé. Exemple: DIR > test.txt Cette commande redirige la sortie de DIR vers le fichier test.txt au lieu de l'afficher à l'écran. La syntaxe complète de la commande CMD est: cmd [[{/c|/k}] [/s] [/q] [/d] [{/a|/u}] [/t:fg] [/e:{on|off}] [/f: {on|off}] [/v:{on|off}] chaine] Le paramètre /c veut dire: exécuter la commande donnée par la chaîne de caractères puis terminer. Code: execute_wait "cmd.exe /c dir >c:\temp\test.txt" Cette commande PANORAMIC appelle l'invite de la ligne de commande cmd.exe qui exécutera la commande dir en redirigeant sa sortie vers c:\temp\test.txt puis se terminera. Utilisation d'un pipe On peut également utiliser un pipe (et non une pipe car, moi, j'ai cessé de fumer depuis une décennie). Un pipe (prononcez paillp à l'anglaise ça fait pro!) c'est un tuyau en Français et ça permet de passer le résultat d'une commande à une autre commande. Le pipe est introduit par le symbole | (la barre verticale qu'on obtient par les touches <Alt Gr> et <6> . Par exemple pour rediriger la sortie d'une commande vers le presse-papier (clipboard) on utilise le pipe | CLIP. Code: execute_wait "cmd.exe /c dir | clip" Cette commande PANORAMIC appelle l'invite de commande cmd.exe qui exécutera la commande dir en redirigeant sa sortie vers le presse-papier puis se terminera. Vous êtes libre, ensuite, de coller le contenu du presse-papier où vous désirez, PANORAMIC dispose d'une variable système qui retourne le texte qui est dans le presse-papier. Code: clipboard_string_paste$ REMARQUE: Le pipe CLIP est disponible sous Windows Vista, W7 et W8, mais il n'est pas disponible sous Windows XP. Si vous voulez l'utiliser sous Windows XP, vous pouvez télécharger sur Internet le fichier CLIP.EXE et l'enregistrer dans le dossier C:\WINDOWS\system32. Vous pouvez aussi le télécharger sur mon Webdav: http://www.mydrive.ch Username: panoramic@papydall Passworld: panoramic123 Fichier: clip.exe Copier et éditer directement le fichier texte avec le & d'enchaînement des commandes On peut envoyer la sortie d'une commande directement dans le bloc-notes notepad.exe Pour cela on utilise le symbole & (perluète ou « et commercial ») Code: execute_wait "cmd.exe /c dir >dir.txt ¬epad.exe dir.txt" Cette commande PANORAMIC appelle l'invite de commande cmd.exe qui exécutera la commande dir en redirigeant sa sortie vers le bloc-notes puis se terminera. L'inconvénient de toutes ces méthodes c'est que la fenêtre noire de l'invite de commande reste visible à l'écran, ce qui n'est pas esthétique! Heureusement, notre ami JL35 (que je salue) a trouvé une astuce pour éliminer cette fenêtre dont on n'a pas besoin. L'idée de JL35 est de lancer la commande EXECUTE_WAIT depuis un fichier batch, lui-même lancé depuis un script vbs. Vous pouvez trouver cette procédure sur ce lien: http://panoramic.free-boards.net/t2539-suppression-de-la-fenetre-noire?highlight=fen%EAtre+noire Nous allons coder en PANORAMIC cinq procédures (SUB) pour illustrer l'utilisation de la ligne de commande qui (je le répète) possède des possibilités insoupçonnées! La première procédure Info_Carte_Reseau() vous fournira votre adresse IP et la configuration de votre carte Ethernet. La seconde procédure Connexions_TCP_Actives() vous surprendra (probablement) ; elle vous indiquera quelles sont les adresses IP qui communiquent avec votre PC! La troisième procédure Connectivite(hote$) vérifie la connectivité vers un ordinateur, un routeur ou un site Internet. La quatrième procédure Table_Routage() affiche la table de routage. La cinquième procédure Trace_Route(site$) affiche chaque étape du chemin emprunté pour accéder à un site. J'utilise également la SUB de JL35 que j'ai adaptée à ma sauce pour confectionner le petit programme qui suit. Pour la sortie, j'opte pour le bloc-notes. On évite donc les fichiers sur disque, on évite aussi le presse-papier puisque non disponible sous XP, alors que notepad est disponible sur tous les systèmes. Aussi, on peut sauvegarder, éditer ou imprimer ces fichiers à partir du bloc-notes. Ce programme comporte donc en plus des 5 procédures ci-haut mentionnées: Les 5 appels aux 5 procédures. Une procédure SUB Init() pour les initialisations La procédure Exec_Prog(prog$) adaptée de celle de JL35. 3- LE PROGRAMME '****************************************************************************** 'Proc_Reseau.bas par Papydall 'Voici 5 procédures pour afficher la configuration de votre carte Ethernet 'pour savoir quelles sont les adresses IP qui communiquent avec votre PC et 'autres choses encore ... rem ================================================================== rem La sortie de chaque commande se fait sur le bloc-notes rem ================================================================== Init() 'EXEMPLES D'APPELS Info_Carte_Reseau() 'Connexions_TCP_Actives() 'Connectivite("panoramic_language.pagesperso-orange.fr") 'Table_Routage() 'Trace_Route("panoramic_language.pagesperso-orange.fr") end '****************************************************************************** SUB Init() top 0,100 : left 0,200 : width 0,1000 : height 0,100 caption 0, "Veuillez patienter !!! ça pourrait prendre une minute ou plus !!! " END_SUB '****************************************************************************** 'Exécution d'un programme externe sans la fenêtre noire de l'invite de commande 'Cette procédure est une adaptation de celle de JL35 que je remercie beaucoup. '====================================================================== ======== SUB Exec_Prog(prog$) DIM_LOCAL scr$, bat$, axp$ if dir_exists("c:\temp") <> 1 then dir_make "c:\temp" scr$ = "C:\temp\Vbscript.vbs": bat$ = "C:\temp\Bat.bat" '===== Création du fichier .bat FILE_OPEN_WRITE 9998, bat$: FILE_WRITELN 9998, prog$: FILE_CLOSE 9998 '===== Création du script .vbs axp$ = "CreateObject("+CHR$(34)+"Wscript.Shell"+CHR$(34)+").Run " axp$ = axp$ + CHR$(34) + bat$ + CHR$(34) + ", 0, True" FILE_OPEN_WRITE 9998, scr$: FILE_WRITELN 9998, axp$: FILE_CLOSE 9998 '===== Exécution du script EXECUTE_WAIT "WSCRIPT.exe "+ scr$ FILE_DELETE bat$: FILE_DELETE scr$ END_SUB '****************************************************************************** 'Pour connaître votre Adresse IP et la configuration de votre carte Ethernet et 'voir en détails les paramètres de votre/vos cartes(s) réseau(x). 'Le paramètre /all permet d'afficher toutes les infos de configuration SUB Info_Carte_Reseau() caption 0,caption$(0)+" Configuration de votre carte réseau" Exec_Prog("cmd.exe /c ipconfig /all >ipconfig.txt ¬epad.exe ipconfig.txt") END_SUB '****************************************************************************** 'Pour savoir quelles sont les adresses IP qui communiquent avec votre PC. 'Afficher les connexions TCP actives, les ports que l'ordinateur écoute, les 'statistiques Ethernet, la table de routage IP, les statistiques pour les 'protocoles IP,ICMP,TCP et UDP 'Le paramètre -a pour afficher toutes les connexions et les ports en écoute. 'Changez le paramètre -a par -b pour afficher l'exécutable impliqué dans la 'création de chaque connexion ou port d'écoute. Ceci permet de connaître le 'fichier exécutable qui a ouvert une connexion. C'est donc un moyen de découvrir 'si un fichier malveillant utilise votre ordinateur de manière incorrecte en 'accédant à Internet. '===================================================================== SUB Connexions_TCP_Actives() caption 0,caption$(0)+" Connexions TCP actives, ports d'écoute, statistiques Ethernet ..." Exec_Prog("cmd.exe /c netstat -a >Neststat.txt ¬epad.exe Neststat.txt") END_SUB '****************************************************************************** 'Vérifie la connectivité vers un ordinateur, un routeur ou un site Internet. 'Envoie un paquet à un hôte Internet spécifié ou à un ordinateur du réseau et 'mesure le temps de réponse. L'ordinateur cible renverra un signal. Cela permet 'de déterminer la qualité de la connexion. Vous obtiendrez également une 'adresse IP qui correspond à l'URL du hôte. SUB Connectivite(hote$) caption 0,caption$(0)+" Connectivité vers "+ chr$(34) + hote$ + chr$(34) Exec_Prog("cmd.exe /c ping "+ hote$ + ">Ping.txt ¬epad.exe Ping.txt") END_SUB '****************************************************************************** 'Affiche la table de routage. Cette table contient les champs suivants: 'Destination réseau, Masque réseau, Adr. passerelle, Adr. interface, Métrique 'La destination réseau veut dire où vont les paquets; 'le masque c'est l'étendue de la destination; 'la passerelle c'est vers où sont envoyés les paquets qui ont cette destination 'la métrique c'est la priorité : plus c'est petit plus c'est prioritaire. ' ===================================================================== SUB Table_Routage() caption 0,caption$(0)+"Table de routage" Exec_Prog("cmd.exe /c route print >route.txt ¬epad.exe route.txt") END_SUB '****************************************************************************** 'Le chemin entre 2 ordinateurs sur Internet n'est pas en ligne droite mais 'consiste en de nombreux segments ou "hops"d'un ordinateur intermédiaire à un 'autre. 'TRACERT affiche chaque étape du chemin emprunté. Le temps pour chaque "hop"et 'l'adresse IP de chaque ordinateur intermédiare sont affichés. 'TRACERT affiche jusqu'à 30 "hops" 'ATTENTION : l'exécution de cette commande peut prendre plus d'une minute !!! ' ===================================================================== SUB Trace_Route(site$) caption 0,caption$(0) + " Itinéraire pour atteindre "+ chr$(34) + site$ + chr$(34) Exec_Prog("cmd.exe /c tracert "+ site$ + ">tracert.txt ¬epad.exe tracert.txt") END_SUB '****************************************************************************** '================================ F I N =============================== 4-PREMIERE PROCEDURE: Info_Carte_Reseau() En exécutant cette procédure, vous obtiendrez quelque chose qui ressemble à ça (c'est la configuration de mon PC): Configuration IP de Windows Nom de l'hôte . . . . . . . . . . : micro-f87e245e7 Suffixe DNS principal . . . . . . : Type de nœud . . . . . . . . . . : Inconnu Routage IP activé . . . . . . . . : Non Proxy WINS activé . . . . . . . . : Non Carte Ethernet Connexion au réseau local: Suffixe DNS propre à la connexion : Description . . . . . . . . . . . : NVIDIA nForce Networking Controller Adresse physique . . . . . . . . .: 00-24-21-7C-04-A3 DHCP activé. . . . . . . . . . . : Oui Configuration automatique activée . . . . : Oui Adresse IP. . . . . . . . . . . . : 192.168.1.2 Masque de sous-réseau . . . . . . : 255.255.255.0 Passerelle par défaut . . . . . . : 192.168.1.1 Serveur DHCP. . . . . . . . . . . : 192.168.1.1 Serveurs DNS . . . . . . . . . . : 192.168.1.1 Bail obtenu . . . . . . . . . . . : jeudi 26 septembre 2013 18:01:42 Bail expirant . . . . . . . . . . : vendredi 27 septembre 2013 18:01:42 Hum! Tout ça c'est beau. Mais comment interpréter ces informations? Et que signifient-elles? Hé bien , attachez vos ceintures, nous allons décoller! Sachez qu'une carte réseau possède une adresse. Cette adresse s'appelle l'adresse MAC (Media Access Control). Elle est écrite en hexadécimal et codée sur 6 octets. Or 6 octets font 48 bits et avec 48 bits, on peut coder 2^48 soit 281 474 976 710 656 valeurs! Soit plus de 280 mille milliards d'adresses MAC possibles. Ça tombe bien, car chaque adresse MAC doit être unique au monde. L'adresse MAC de votre carte réseau est donnée sous le nom d'Adresse physique. La mienne est donc: 00-24-21-7C-04-A3. On voit aussi une autre adresse: l'Adresse IP. Une adresse IP est codée sur 32 bits soit 4 octets. Elle est écrite en décimal avec la notation pointée. Cela donne par exemple 192.168.1.2 L'adresse IP est en fait l'adresse du réseau et de la machine. Une partie de cette adresse représente l'adresse du réseau et l'autre partie celle de la machine. Alors comment savoir quelle partie représente quoi? Vous voyez sous Adresse IP le Masque de sous-réseau? C'est ce masque qui va indiquer quelle est la partie réseau de l'adresse, et quelle est la partie machine. Les bits à 1 dans le masque représentent la partie réseau de l'adresse IP et les bits à 0 représentent la partie machine de l'adresse. On associe l'adresse IP 192.168.1.2 au masque 255.255.255.0 Écrivons ces deux adresses en binaire: 255.255.255.0 → 11111111.11111111.11111111.00000000 192.168.1.2 → 11000000.10101000.00000001.00000010 Le masque nous indique que les bits à 1 représentent la partie réseau de l'adresse 255.255.255.0 → 11111111.11111111.11111111.00000000 192.168.1.2 → 11000000.10101000.00000001.00000010 Il nous indique aussi que les bits à 0 représentent la partie machine de l'adresse 255.255.255.0 → 11111111.11111111.11111111.00000000 192.168.1.2 → 11000000.10101000.00000001.00000010 Donc la partie réseau de l'adresse est 192.168.1 et la partie machine est 2. Exprimé d'une autre façon, on peut dire qu'une adresse IP (Internet Protocol) est un numéro à 4 chiffres (de 0 à 255) séparés par des points. En général les 3 premiers numéros sont identiques, seul le dernier numéro change. L'adresse IP permet aux éléments reliés en réseau de s'identifier et de communiquer ensemble. Exemple: Un ordinateur possède l'adresse IP :192.168.1.10 et une Livebox l'adresse IP :192.168.1.1 En réalité, on distingue deux adresses IP: L'adresse IP locale (LAN: Local Area Network ou réseau local): c'est celle qui est utilisée pour identifier l'ordinateur et la Box. L'ordinateur a une adresse IP et se connecte sur l'adresse IP de la Box. L'adresse IP Internet (WAN: Wide Area Network ou réseau étendu): c'est celle qui est attribuée par votre Fournisseur d'accès et qui sert à se connecter sur internet. C'est donc celle qui vous identifie sur Internet. Elle est dynamique, c'est-à-dire qu'elle change à chaque fois qu'on se déconnecte d'Internet. Votre adresse locale est celle qui figure sur la ligne Adresse IP donnée par ipconfig/all. Pour connaître votre adresse IP Internet, vous pouvez vous connecter sur: http://www.adresseip.com 5-SECONDE PROCEDURE: Connexions_TCP_Actives() En exécutant cette procédure, vous obtiendrez quelque chose qui ressemble à ça (c'est sur mon PC): Connexions actives Proto TCP TCP TCP TCP TCP TCP Adresse locale Adresse distante Etat micro-f87e245e7:http micro-f87e245e7:0 LISTENING micro-f87e245e7:epmap micro-f87e245e7:0 LISTENING micro-f87e245e7:https micro-f87e245e7:0 LISTENING micro-f87e245e7:microsoft-ds micro-f87e245e7:0 LISTENING micro-f87e245e7:51978 micro-f87e245e7:0 LISTENING micro-f87e245e7:1033 micro-f87e245e7:0 LISTENING TCP micro-f87e245e7:5152 micro-f87e245e7:0 LISTENING TCP micro-f87e245e7:netbios-ssn micro-f87e245e7:0 LISTENING TCP micro-f87e245e7:1040 xmpp-shv-04-frc3.facebook.com:5222 ESTABLISHED TCP micro-f87e245e7:1041 64.4.23.152:40020 ESTABLISHED TCP micro-f87e245e7:1043 78.141.179.12:12350 ESTABLISHED TCP micro-f87e245e7:1048 baymsg1010807.gateway.edge.messenger.live.com:https ESTABLISHED TCP micro-f87e245e7:1858 wb-in-f125.1e100.net:5222 ESTABLISHED TCP micro-f87e245e7:1926 193.95.12.20:https ESTABLISHED TCP micro-f87e245e7:1997 channel-ecmp-13-prn1.facebook.com:https ESTABLISHED TCP micro-f87e245e7:2077 baymsgr2012219.gateway.edge.messenger.live.com:https ESTABLISHED TCP micro-f87e245e7:2296 www.mydrive.ch:http TIME_WAIT TCP micro-f87e245e7:2297 www.mydrive.ch:http TIME_WAIT UDP micro-f87e245e7:https *:* UDP micro-f87e245e7:microsoft-ds *:* UDP micro-f87e245e7:isakmp *:* UDP micro-f87e245e7:4500 *:* UDP micro-f87e245e7:51978 *:* UDP micro-f87e245e7:ntp *:* UDP micro-f87e245e7:1025 *:* UDP micro-f87e245e7:1026 *:* UDP micro-f87e245e7:1492 *:* UDP micro-f87e245e7:1692 *:* UDP micro-f87e245e7:1900 *:* UDP micro-f87e245e7:2206 *:* UDP micro-f87e245e7:ntp *:* UDP micro-f87e245e7:netbios-ns *:* UDP micro-f87e245e7:netbios-dgm *:* UDP micro-f87e245e7:1900 *:* NETSTAT (pour NETwork STATistics) affiche des informations sur les connexions réseau, les tables de routage et un certain nombre de statistiques dont ceux des interfaces. Les paramètres utilisés avec cette commande sont préfixés par – (moins) plutôt qu'un / (slash). -a Affiche toutes les connexions TCP actives et les ports TCP et UDP sur lesquels l'ordinateur écoute. -b Affiche le nom du programme impliqué dans la création de chaque connexion et les ports ouverts. -e Affiche les statistiques Ethernet comme le nombre d'octets et de paquets envoyés et reçus. Ce paramètre peut être combiné avec -s. -n Affiche les connexions TCP actives; cependant les adresses et les ports sont affichés au format numérique, sans tentative de résolution de nom. -o Affiche les connexions TCP actives et inclut l'identifiant du processus (PID) pour chaque connexion. Ce paramètre peut être combiné avec -a et -n. -s Affiche les statistiques par protocole. Par défaut, les statistiques sont affichées pour IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP et UDPv6. /? Affiche l'aide. La commande NETSTAT affiche quatre champs: Proto, Adresse locale, Adresse distante et Etat. PROTO c'est le nom du protocole (TCP ou UDP) ADRESSE LOCALE c'est l'adresse IP de l'ordinateur local et le numéro du port utilisé. Le nom de l'ordinateur local qui correspond à l'adresse IP et le nom du port sont indiqués, sauf si le paramètre -n est spécifié. Si le port n'est pas encore établi, le numéro de port est présenté par un astérisque. ADRESSE DISTANTE: numéro de port et adresse IP de l'ordinateur distant auquel le socket (qu'on peut traduire par connecteur réseau) est connecté. Le nom qui correspond à l'adresse IP et le port sont affichés, sauf si le paramètre -n est spécifié. Si le port n'est pas encore établi, le numéro de port est présenté par un astérisque. ETAT indique l'état d'une connexion TCP. Les états possibles sont les suivants: ESTABLISHED Connexion établie. SYN_SENT Attend activement d'établir une connexion. SYN_RECV Une requête de connexion a été reçue du réseau. FIN_WAIT1 La connexion est en cours de terminaison. FIN_WAIT2 La connexion est fermée, attend une terminaison du distant. TIME_WAIT Attend le traitement de tous les paquets encore sur le réseau avant d'entreprendre la fermeture. CLOSED Le connecteur réseau n'est pas utilisé. CLOSE_WAIT Le distant a arrêté, attendant la fermeture du connecteur réseau. LAST_ACK Le distant termine et le connecteur réseau est fermé. Attente d'acquittement. LISTENING Le connecteur réseau est à l'écoute de connexions entrantes. CLOSING Les deux prises sont arrêtées, mais toutes les données locales n'ont pas encore été envoyées. UNKNOWN L'état de la prise est inconnu. 6-TROISIEME PROCEDURE: Connectivite("panoramic_language.pagesperso-orange.fr") En exécutant cette procédure, vous obtiendrez quelque chose qui ressemble à ça (c'est sur mon PC): Envoi d'une requˆte 'ping'sur panoramic_language.pagesperso-orange.fr [193.252.122.54] avec 32 octets de donn‚esÿ: R‚ponse de 193.252.122.54ÿ: octets=32 temps=102 ms TTL=48 R‚ponse de 193.252.122.54ÿ: octets=32 temps=103 ms TTL=48 R‚ponse de 193.252.122.54ÿ: octets=32 temps=106 ms TTL=48 R‚ponse de 193.252.122.54ÿ: octets=32 temps=107 ms TTL=48 Statistiques Ping pour 193.252.122.54: Paquetsÿ: envoy‚s = 4, re‡us = 4, perdus = 0 (perte 0%), Dur‚e approximative des boucles en millisecondes : Minimum = 102ms, Maximum = 107ms, Moyenne = 104ms PING (acronyme de Packet INternet Groper) est une commande utilisée pour diagnostiquer des problèmes réseau. Elle permet de tester la connectivité d'un ordinateur distant, en lui transmettant des paquets d'écho ICMP. Si l'ordinateur répond au PING, c'est qu'il est joignable et, par conséquent que votre réseau n'a physiquement aucun problème. La sortie de la commande PING permet de connaître: L'adresse IP correspondant au nom de la machine distante, Le numéro de séquence ICMP, La durée de vie du paquet (TTL, Time To Live). Le champ de durée de vie (TTL) permet de connaître le nombre de routeurs traversés par le paquet lors de l'échange entre les deux machines. Chaque paquet IP possède un champ TTL positionné à une valeur relativement grande. A chaque passage d'un routeur, le champ est décrémenté. S'il arrive que le champ arrive à zéro, le routeur interprétera que le paquet tourne en boucle et le détruira, Le temps de propagation en boucle (round-trip delay) correspond à la durée en millisecondes d'un aller-retour entre la machine source et la machine cible. Un paquet doit, en règle générale, posséder un temps de propagation inférieur à 200 ms, Le nombre de paquets perdus. 7-QUATRIEME PROCEDURE: SUB Table_Routage() En exécutant cette procédure, vous obtiendrez quelque chose qui ressemble à ça (c'est sur mon PC): ====================================================================== ===== Liste d'Interfaces 0x1 ........................... MS TCP Loopback interface 0x2 ...00 24 21 7c 04 a3 ...... NVIDIA nForce Networking Controller - Miniport d'ordonnancement de paquets ====================================================================== ===== ====================================================================== ===== Itin‚raires actifsÿ: Destination r‚seau Masque r‚seau Adr. passerelle Adr. interface M‚trique 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.2 20 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.1.0 255.255.255.0 192.168.1.2 192.168.1.2 20 192.168.1.2 255.255.255.255 127.0.0.1 127.0.0.1 20 192.168.1.255 255.255.255.255 192.168.1.2 192.168.1.2 20 224.0.0.0 240.0.0.0 192.168.1.2 192.168.1.2 20 255.255.255.255 255.255.255.255 192.168.1.2 192.168.1.2 1 Passerelle par d‚fautÿ: 192.168.1.1 ====================================================================== ===== Itin‚raires persistantsÿ: Aucun Liste d'interfaces c'est l'adresse MAC (Media Access Control) et le nom de la carte réseau. La destination réseau veut dire où vont les paquets. Le masque c'est l'étendue de la destination (ça permet de grouper une plage de destinations). La passerelle c'est vers où sont envoyés les paquets qui ont cette destination. L'adresse interface c'est l'adresse locale qui est reliée à la passerelle. La métrique c'est la priorité; plus c'est petit plus c'est prioritaire. Détaillons ce qui est sur la capture d'écran: 0.0.0.0 0.0.0.0. 192.168.1.1 192.168.1.2 20 représente la passerelle par défaut: tous les paquets ne trouvant pas d'autre routes sont envoyés vers 192.168.1.1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 c'est la boucle locale: toutes les adresses IP entre 127.0.0.0 et 127.0.0.255 sont redirigées vers 127.0.0.1 192.168.1.0 255.255.255.0 192.168.1.2 192.168.1.2 20 représente mon réseau local. Tous les paquets en direction d'une adresse IP entre 192.168.1.0 et 192.168.1.255 sont directement accessibles et donc n'ont pas besoin d'une destination particulière. Tous les paquets en direction de ce réseau doivent partir à partir de 192.168.1.2 8-CINQUIEME PROCEDURE: SUB Trace_Route("panoramic_language.pagespersoorange.fr") En exécutant cette procédure, vous obtiendrez quelque chose qui ressemble à ça ( c'est sur mon PC): D‚termination de l'itin‚raire vers panoramic_language.pagesperso-orange.fr [193.252.122.54] avec un maximum de 30 sautsÿ: 1 2 3 4 5 6 7 8 <1 ms <1 ms <1 ms 192.168.1.1 36 ms 34 ms 36 ms 193.95.79.227 32 ms 34 ms 36 ms 196.203.188.1 36 ms 34 ms 35 ms 193.95.19.1 35 ms 34 ms 36 ms 193.95.96.157 32 ms 36 ms 34 ms 193.95.1.222 69 ms 70 ms 70 ms pos5-0.palermo1.pal.seabone.net [195.22.197.213] 73 ms 72 ms 75 ms xe-10-3-3.franco31.fra.seabone.net [195.22.192.181] 9 94 ms 95 ms 91 ms tengige0-4-0-13.ffttr1.FrankfurtAmMain.opentransit.net [193.251.251.29] 10 98 ms 100 ms 99 ms tengige0-13-0-8.auvtr1.Aubervilliers.opentransit.net [193.251.132.77] 11 100 ms 100 ms 104 ms gigabitethernet12-0-0.auvcr2.Aubervilliers.opentransit.net [193.251.241.38] 12 139 ms 95 ms 102 ms te10-2.bagse1.Bagnolet.opentransit.net [193.251.128.218] 13 100 ms 100 ms 95 ms wanadooportails-1.GW.opentransit.net [193.251.251.58] 14 93 ms 93 ms 95 ms fw-bae01.phoenix-v182.net.b1.fti.net [193.252.121.157] 15 94 ms 97 ms 94 ms pagesperso-orange.fti.net [193.252.122.54] Itin‚raire d‚termin‚. Tracert (TRACEROUTE) permet de suivre les chemins pris par un paquet de données pour aller de la machine locale à une autre machine connectée au réseau IP. Les paquets IP sont acheminés vers la destination en passant d'un routeur à un autre. Chaque routeur examine sa table de routage afin de déterminer le routeur suivant. TRACERT va donc identifier les routeurs empruntés, indiquer le délai entre chacun des routeurs et les éventuelles pertes de paquets. Le chemin suivi par les paquets peut être asymétrique et TRACERT ne montre que l'aller. Le chemin suivi peut être radicalement différent depuis un autre point, même proche géographiquement. Sur l'exemple ci-dessus, on voit que pour aller à notre site favori "panoramic.pagesperso-orange.fr" j'ai dû emprunter le chemin qui passe par Palermo etc. Ne dit-on pas que tous les chemins mènent à Rome ( ou à PANORAMIC )? 9-RECAPITULONS La structure d'un réseau domestique comprend: La ligne ADSL Le routeur qui associe souvent la fonction de modem, permet d'accéder au réseau via votre FAI (Fournisseur d'Accès à Internet). Le Switch (ou répartiteur) qui permet d'orienter les trames vers les destinataires. Un ou plusieurs PC qui sont des clients du réseau et qui dialoguent avec le réseau extérieur via le routeur. Pour donner une idée imagée d'un réseau, on peut comparer un réseau à l'acheminement du courrier dans une ville. Alors, le routeur c'est la poste centrale; le switch constitue les diverses postes de quartiers; les PC sont les destinataires du courrier. Le fonctionnement est le suivant: Les PC déposent leur courrier (DATA) dans les postes de quartier (SWITCH) qui les envoie, sous forme de sacs postaux (PAQUETS) vers la poste centrale qui les achemine vers le centre de tri départemental. Le courrier entrant suit le même chemin en sens inverse. Pour que tout ce beau monde fonctionne correctement, il est primordial que chaque constituant de ce réseau soit identifié de manière individuelle. Pour cela, il a été mis en œuvre la technique des adresses IP. Souvent 192.168.0.1 est l'adresse donnée au routeur. Cette adresse donne l'indication du destinataire. Pour être sûr d'identifier de manière précise le destinataire, on lui donne un identifiant unique. Il s'agit de l'adresse MAC (Media Access Control) qui est constituée de 6 octets et est unique pour tous les périphériques réseau. 10-POUR TERMINER Il existe beaucoup d'autres commandes de l'invite de commandes à explorer dont certaines sont extrêmement puissantes comme XCOPY par exemple. RAPPEL: Vous trouvez sur le lien suivant un excellent article que vous pouvez télécharger en format PDF http://windows.developpez.com/cours/ligne-commande/ Ce même article se trouve sur mon Webdav http://www.mydrive.ch Username: panoramic@papydall Passworld: panoramic123 dossier: PDF Fichier: ligne-commande.pdf Egalement sur mon Webdav se trouve un fichier tcp-ip,pdf dans le même dossier et dont l'adresse du site est: http://fr.openclassrooms.com/informatique/exportPdf/apprenez-le-fonctionnement-des-reseaux-tcpip