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

ASP Discussion :

adresses ip privées


Sujet :

ASP

  1. #1
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut adresses ip privées


    Je cherche à vérifier si dans ma table (access) mes adresses appartiennent aux plages d'adresses privées ou non.
    Connaîtriez-vous une fonction permettant cela ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 73
    Points : 84
    Points
    84
    Par défaut
    A ma connaissance non.
    Tu n'as plus qu'à tester les adresses sur les plages privées...

  3. #3
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Citation Envoyé par vever88
    aux plages d'adresses privées
    Que veux-tu dire?

    A+

  4. #4
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    Bonjour,
    Citation Envoyé par Immobilis
    Que veux-tu dire?
    Concrètement: les plages d'adresses ip privées sont 10.0.0.0 à 10.255.255.255, 172.16.0.0 à 172.31.255.255 et 192.168.0.0 à 192.168.255.255 .
    J'ai une table dans laquelle j'ai des adresses ip. Et je souhaiterais, par exemple, les ecrire en rouge si ce sont des adresses privées et en vert si elles ne le sont pas.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    868
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 868
    Points : 1 022
    Points
    1 022
    Par défaut
    Avec la base de donnée, ça me parait difficile, avec le langage de présentation par dessus, je pense que c'est faisable non ? Genre tu casses la chaîne en 4 en prenant les points comme séparateurs puis tu fais les tests sur les différents nombres pour déterminer s'il s'agit d'adresses privées ou non...

  6. #6
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    de ta proposition, l'idée est bonne
    Mais comment cassée la chaine et comparer chaque "morceaux"

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    868
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 868
    Points : 1 022
    Points
    1 022
    Par défaut
    Ha zut, on est sur le forum ASP, là en PHP, ça serait assez simple avec explode(), mais en ASP aucune idée. J'ai vu le message en passant sur les forums et je l'avais regardé par curiosité. Désolé de ne pas pouvoir t'aider plus avant.

  8. #8
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    Merci tout de même dans ton aide, je vais chercher si je ne trouve pas quelque chose de semblable.

    ++

  9. #9
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    apparemment il y a une correspondance entre explode() [php] et split() [asp]

  10. #10
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut
    la fonction split sert en effet à découper une chaine de caractères selon un caractère spécifié et de stocker le résultat dans un tableau.

    Cela devrait te permettre de faire ce que tu veux.

  11. #11
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    D'accord,

    Je commence donc par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tbaddr=split(adresse,".")
    Et mes adresses sont en IPv4 donc mon tableau à 4 colonnes.
    Comment je fais pour selectionner le 1ère colonne puis la 2ème ... ?

  12. #12
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tbadr(0) ' pour la première case
    tbadr(1) ' pour la seconde case
    ...

  13. #13
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    ok

  14. #14
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    Je viens de taper le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    '_________________________________________________________________________________________________________________________
    '
    Private Function fncPrivateAddr(strAddr)
     
    		dim tbaddr
    		dim prvaddr
    		prvaddr=false
    			tbaddr=split(strAddr,".")
    				If tbaddr(0)=10 Then
    					prvaddr=true
    				ElseIf tbaddr(0)=172 Then
    					If 16<tbaddr(1)<31 Then
    					       prvaddr=true
    					End If
    				ElseIf tbaddr(0)=192 and tbaddr(1)=168 Then
    					prvaddr=true
    				Else
    					prvaddr=false
    				End IF
     
    		fncPrivateAddr=prvaddr
     
    End function
    '_________________________________________________________________________________________________________________________
    ' 
    		DO UNTIL RS.EOF
    			strAddr=RS("adresse")
    					If instr(fncPrivateAddr(strAddr),"false") = 0 Then
    						Response.Write("<font color=#FF33FF>"&RS(0)&"</font><BR>")
    					Else
    						Response.Write("<font color=#3300FF>"&RS(0)&"</font><BR>")
    					End IF
    			RS.MoveNext
    		LOOP
    Il ne marche pas tout à fait, il me sort que toutes mes adresses sont privées alors que ce n'est pas le cas.
    Pouriez-vous critiquer mon code pour me dire ce qu'il y a de trop, ce qui manque, et si vous le voyez, ce qui pose problème.

  15. #15
    Membre confirmé Avatar de Phiss
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2005
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2005
    Messages : 676
    Points : 616
    Points
    616
    Par défaut
    essaie dans ton code de faire seulement ceci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    DO UNTIL RS.EOF
    	strAddr=RS("adresse")
    	If fncPrivateAddr(strAddr) = false Then
    		Response.Write("<font color=#FF33FF>"&RS(0)&"</font><BR>")
    	Else
    		Response.Write("<font color=#3300FF>"&RS(0)&"</font><BR>")
    	End IF
    	RS.MoveNext
    LOOP

  16. #16
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    C'était ça le problème



    ++

  17. #17
    J1
    J1 est déconnecté
    Membre averti Avatar de J1
    Inscrit en
    Mai 2004
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 321
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    si tu testes ton code, tu vas te rendre compte que toutes les adresses commençant par 172 sont considérées comme privées. En effet, ta condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If 16<tbaddr(1)<31 Then
    renvoie toujours True.
    Je m'explique : tu demandes au langage d'évaluer la condition 16<tbaddr(1). Celle-ci va renvoyer True (donc -1) ou False (donc 0) en fonction de la valeur de tbaddr(1). Ensuite, ce -1 ou ce 0 va être comparé à 31. Comme -1 et 0 sont tous deux inférieurs à 31, ta condition
    va toujours renvoyer True.

    Tu devrais plutôt écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If 16<tbaddr(1) And tbaddr(1)<31 Then
    D'ailleurs, d'après ton premier message, ce serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If 16<=tbaddr(1) And tbaddr(1)<=31 Then
    si j'ai bien compris ce que tu veux faire.

    A tester bien sûr.

  18. #18
    Membre du Club Avatar de vever88
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 114
    Points : 68
    Points
    68
    Par défaut
    pour la remarque.
    En effet c'est plus juste.
    Merci d'avoir jeté un coup d'oeil

    ++

Discussions similaires

  1. Adresse privée dans un traceroute
    Par Franckito dans le forum Réseau
    Réponses: 3
    Dernier message: 21/03/2010, 20h31
  2. ssh et adresses privees
    Par Balbuzard dans le forum Debian
    Réponses: 2
    Dernier message: 04/04/2009, 14h03
  3. Définition: adresse ip privée et publique ?
    Par amira2006 dans le forum Internet
    Réponses: 4
    Dernier message: 09/11/2007, 10h04
  4. Adresse privé serveur DMZ
    Par soony dans le forum Réseau
    Réponses: 3
    Dernier message: 17/05/2006, 16h03
  5. Réponses: 2
    Dernier message: 15/05/2006, 22h22

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