Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1559 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Récupérer Adresse IP Réseau [inet_ntoa]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récupérer Adresse IP Réseau [inet_ntoa]

n°1242674
tetsuo20
Posté le 09-11-2005 à 21:07:57  profilanswer
 

Voila, je cherche a récupérer mon adresse IP du point de vue  de mon réseau....  
Je voudrais obtenir, par exemple, 192.168.0.x et non 127.0.0.1  
 

Code :
  1. #include <sys/types.h>
  2. #include <sys/socket.h>
  3. #include <netinet/in.h>
  4. #include <arpa/inet.h>
  5. #include <stdio.h>
  6. #include <unistd.h>
  7. #include <netdb.h>
  8. void view_ip()
  9. {
  10.   char s[256];
  11.   struct hostent *host;
  12.   struct in_addr **adr;
  13.   if (!gethostname(s, 256))
  14.     if ((host = gethostbyname(s)) != NULL)
  15.       for (adr = (struct in_addr **)host->h_addr_list; *adr; adr++)
  16.           printf("IP : %s\n", inet_ntoa(**adr));
  17. }

 
 
voila..... :)
 
Merci de votre aide !   :jap:

mood
Publicité
Posté le 09-11-2005 à 21:07:57  profilanswer
 

n°1242729
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-11-2005 à 21:48:11  profilanswer
 

tetsuo20 a écrit :

Voila, je cherche a récupérer mon adresse IP du point de vue  de mon réseau....  
Je voudrais obtenir, par exemple, 192.168.0.x et non 127.0.0.1  

 char s[256];  
  if (!gethostname(s, 256))



En tout cas, chez moi (Win/XP), ça roule :  


#include <ce qu'il faut pout ta machine>
int main(void)
{
    char s[256];
     
    if (!gethostname(s, sizeof s))
    {
        printf ("Machine: %s\n", s);
        {
            struct hostent *host= gethostbyname(s);
             
            if (host  != NULL)
            {
                struct in_addr **adr;
                 
                for (adr = (struct in_addr **)host->h_addr_list; *adr; adr++)
                {
                    printf("IP : %s\n", inet_ntoa(**adr));
                }
            }
        }
    }
    return 0;
}


Nota, je n'ai pas reporté les particularités de Windows...


Machine: PAPOU3
IP : 192.168.0.5


Message édité par Emmanuel Delahaye le 09-11-2005 à 21:58:44

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1242761
tetsuo20
Posté le 09-11-2005 à 22:43:52  profilanswer
 

gethostname place le nom de la machine dans mon tableau s et il se trouve que MAXHOSTNAMELEN est égal a 256, je ne vois pas ou est le problème...
 
Justement, j'automatise une installation serveur et j'ai besoin de l'ip réseau pour named (serveur de noms)... il doit y avoir un moyen...
Comment fait ifoncig récupérer cette ip, il n'y aucune demande au routeur ?

n°1242766
tetsuo20
Posté le 09-11-2005 à 22:47:31  profilanswer
 

que je définisse le nom de ma machine en dur ou que je le récupère via gethostname, c la meme chose.... sous openbsd

n°1242775
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-11-2005 à 22:55:02  profilanswer
 

tetsuo20 a écrit :

que je définisse le nom de ma machine en dur ou que je le récupère via gethostname, c la meme chose.... sous openbsd


Vire moi ça et installe XP, ;) ;) ;)

Message cité 1 fois
Message édité par Emmanuel Delahaye le 09-11-2005 à 22:55:35

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1242788
tetsuo20
Posté le 09-11-2005 à 23:13:54  profilanswer
 

Emmanuel Delahaye a écrit :

Vire moi ça et installe XP, ;) ;) ;)


 
Ceci est votre dernier diagnostic ? ^^
 
 :pfff: C'est beaucoup plus attractif de monter sa solution serveur sous openbsd que d'acheter 200EUR un Windows Server 2003 ; bon, cela dit Terminal Server c'est marrant...
 
Non mais, polémique à part, ou est le problème docteur ?

n°1242793
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-11-2005 à 23:22:52  profilanswer
 

tetsuo20 a écrit :

Ceci est votre dernier diagnostic ? ^^
 
 :pfff: C'est beaucoup plus attractif de monter sa solution serveur sous openbsd que d'acheter 200EUR un Windows Server 2003 ; bon, cela dit Terminal Server c'est marrant...
 
Non mais, polémique à part, ou est le problème docteur ?


Bon visiblement, tu n'as aucun humour... Bonsoir..
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1242798
chrisbk
-
Posté le 09-11-2005 à 23:28:04  profilanswer
 

attention Manu, sur l'echel de l'intégrisme informatique un gus utilisant BSD met une mine a un linuxien de base (qui pourtant place deja la barre tres haut), donc faut vraiment marcher sur des oeufs

n°1247452
tuxbleu
renie ses origines
Posté le 17-11-2005 à 11:39:04  profilanswer
 

Ca m'interesse aussi.
 
Je viens de recompiler un jeu réseaux en openjl qu'on avait dévellopé en projet.
 
Il se trouve qu'à l'époque, ce fonctionnait (adresse 192.168.XXX.XXX), mais là came donne 127.0.0.1.
 
C'est peut-etre du à une nouvelle version de gcc ?

n°1359922
frankie_fl​owers
Posté le 04-05-2006 à 18:34:43  profilanswer
 

UP, même problème sous linux, c'est quand même la base de toute appli réseau, personne sait faire  :??:

mood
Publicité
Posté le 04-05-2006 à 18:34:43  profilanswer
 

n°1359935
Taz
bisounours-codeur
Posté le 04-05-2006 à 18:56:39  profilanswer
 

ben pareil tu récupères tes adresses IP et t'en choisi une. si tu ne sais pas laquelle, et bien ouvre une connexion vers une machine distante et récupère l'adresse locale à laquelle est bindée ta socket.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Récupérer Adresse IP Réseau [inet_ntoa]

 

Sujets relatifs
[bash] recuperer le resultat d'une commande SQL dans une variable bashRécuperer une varible Javascript en php dans un formulaire
Adresse mail comme nom de domaineéchanger des fichiers par le réseau
Récupérer la taille d'un tableau associatifRécupérer les valeurs boursières...
recuperer une adresse mailUn lien vers un fichier sur mon reseau
récupérer le chemin du repertoire utilisateur [résolu] 
Plus de sujets relatifs à : Récupérer Adresse IP Réseau [inet_ntoa]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR