IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau C Discussion :

Machine sur un réseau


Sujet :

Réseau C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Machine sur un réseau
    Bonjour,
    Je voudrais savoir comment obtenir toutes les machines d'un réseau (LAN en l'occurrence) comment faire ? j'avais entendu parler d'une table utilisé par le routeur qui liste toutes les machines ayant déjà communiqué entre elles, ou faire un scan réseau ?
    Sera t-il possible d'obtenir les machines d'un sous réseau ?

    Merci d'avance.

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Salut
    Ici c'est un forum C et non un forum réseau ni un forum système. Donc les solutions seront basées sur le C.

    Donc en C, si je voulais lister toutes les machines, je ferais une boucle sur x, y, z et t variant de 1 à 254 et tenterais une ouverture de socket sur l'adresse X.Y.Z.T (bref refaire le ping quoi)...

    Un scan réseau ne scannera que ce qui transite par ta machine. Quand à taper dans les tables routeur éventuellement mais faut interroger alors le routeur via des commandes spécifiques et le C n'a rien à voir là dedans...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut,
    Sa fait un sacré nombre de machine a pinger ça non ?
    Et avec l'api windows il n' y a rien ?

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par yohann2008 Voir le message
    Sa fait un sacré nombre de machine a pinger ça non ?
    A la base 255^4. Maintenant si t'es sur un réseau tu dois avoir une adresse réseau définie par le netmask. Donc l'adresse réseau étant invariante, cela réduit d'autant la plage des machines possibles...

    Citation Envoyé par yohann2008 Voir le message
    Et avec l'api windows il n' y a rien ?
    Donc ici c'est un forum C. De plus, le C étant fortement lié à Unix (probablement parce qu'Unix a été écrit en C), la majorité des intervenants de cette rubrique est généralement plus orientée vers cet OS au détriment de l'autre...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Invité
    Invité(e)
    Par défaut
    La technique de scan que tu vas utiliser est en fonction de tes objectifs:
    arp : scan très rapide, pas de filtrage (ou uniquement dans des réseaux très sécurisés) mais limité uniquement au réseau local, nécessite de créer les packets au niveau 2
    icmp : scan standard, filtrage possible par les machines ou les routeurs, scan rapide, nécessite de créer les packets au niveau 3
    TCP : scan rapide à lent, filtrage possible par les machines ou les routeurs, scan rapide, peu d'effort à fournir pour le développement (interface socket)
    http://www.developpez.net/forums/d59...chines-reseau/

    (Maintenant c'est plus clair pour moi)
    Je pense que le plus fiable reste le scan TCP, mais pourquoi dit-il que le scan TCP peut être rapide a lent ?

  6. #6
    Membre Expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Par défaut
    ICMP et TCP seront aussi lents tous les 2 il me semble (il est même + probable qu'ICMP soit + lent que TCP vu que "par défaut" les firewalls vont ignorer les ICMP (CAD qu'ils ne répondront ni "oui", ni "non")).

    Normalement les scans ICMP servent à pinger "seulement" les machines, les TCP servent à pinger un service :
    ICMP contrôle la pile IP (couche 3), donc l'adresse/1 machine...
    Tandis que TCP (couche 4) est censé être lié à 1 service/1 port (et il y a 65535 ports par machine).

    Bref : TCP ne sert "normalement" pas à vérifier une machine, mais "un service sur une machine".

    Win32/Windows API

    Et la liste des fonctions dispos en C :
    http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

    Attention, ça nécessite Visual Studio évidemment...
    Si tu fais du MinGW, c'est sur des socket/bind/listen/read/close qu'il faut bosser...


    Niveau réseau je vois ces catégories qui "pourraient" t'orienter...
    Windows Networking Functions
    Network Management Functions (moins sûr étant donné que ça "manage" le réseau plus qu'autre chose...
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

Discussions similaires

  1. Lister les processus d'une machine sur un réseau local
    Par Grosbenji dans le forum Windows
    Réponses: 2
    Dernier message: 29/11/2007, 17h59
  2. Comment lister les machines sur le réseau ?
    Par ALT dans le forum Réseau
    Réponses: 11
    Dernier message: 29/06/2007, 14h46
  3. Modifier l'heure et la date d'une machine sur le réseau -VB6
    Par GEGER dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 25/11/2005, 19h41
  4. Précense d'une machine sur le réseau
    Par ArkAng3 dans le forum MFC
    Réponses: 11
    Dernier message: 09/05/2005, 10h07
  5. probleme d'acces a une machine sur un réseau
    Par zorian dans le forum Développement
    Réponses: 3
    Dernier message: 09/06/2004, 13h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo