Adresse ip locale et adresse ip publique

Soyez le premier à donner votre avis sur cette source.

Vue 11 266 fois - Téléchargée 991 fois

Description

Afficher l'adresse IP Locale et l'adresse IP Publique tout simplement en VBscript !
- pour afficher l'adresse locale on utilise l'objet Winsock
- pour afficher l'adresse Publique on utillise l'objet XMLDOM en chargeant l'url:http://xml.showmyip.com/

Source / Exemple :


'Main Program
'site web: http://hackoo.ifrance.com
'© Copyright Hackoo ©
ipconfig
Getip
'------------------------------GetTempFile(File)-----------------
Function GetTempFile(File)
Set WshShell=WScript.CreateObject("WScript.Shell")
GetTempFile=WshShell.ExpandEnvironmentStrings("%TEMP%") & "\" & File
End Function
'---------------------------------------------------------------
Function ipconfig
set wshshell=CreateObject("WScript.shell")
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
FileName=GetTempFile("ip.txt")
 Command = "%COMSPEC% /C ipconfig  > %TEMP%\ip.txt"
    Result = WshShell.Run(Command,0,True)
    Temp = fso.GetSpecialFolder(2).Path
    Set File = fso.OpenTextFile(FileName)
    Ping = file.ReadAll
    file.Close
ipconfig = Ping
MsgBox ipconfig,64," Adresse IP !" '
end Function
'*******************Getip*************************
Function Getip
on error resume next
const URL = "http://xml.showmyip.com/"
 Dim Hackoo
 Dim message
 Set Hackoo = CreateObject("MSWinsock.Winsock")
 set xmldoc = CreateObject("Microsoft.XMLDOM")
 xmldoc.async=false
 xmldoc.load(URL)
 for each x in xmldoc.documentElement.childNodes
 if x.NodeName = "ip" then
 myip = x.text
 end if
 if x.NodeName = "isp" then
 myhost = x.text
 end if
 if x.NodeName = "country" then
 mycountry = x.text
 end if
 next
 message = message & "Adresse IP Locale : "
 message = message & Hackoo.localip & vbcrlf & vbcrlf
 message = message &"Adresse IP Publique : "
 message = message & myip & vbCRLF & vbCRLF 
 message = message & "Provider internet :  " & myhost & vbCRLF & vbCRLF
 message = message & "Pays,Ville :  " & mycountry & vbCRLF & vbCRLF  
 Getip=message
 msgbox message ,vbinformation ,"IP Locale et IP Publique"
end function

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_arnaud31
Messages postés
5
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
15 mai 2009
-
Merci, fort pratique, le seul bémol c'est d'être sur que le site "http://xml.showmyip.com/" soit viable dans le temps ... mais je prends, au pire ce sera à adapter.

Mon projet : detourner mon manque d'ip fixe publique sur ma connexion internet Orange
Méthodologie envisagée : gérer mon propre serveur DNS en interne et mettre à jour régulierement les enregistrements en fonction de mon ip publique récupérée par le bias de ton script.

Merci
cs_leam19
Messages postés
10
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
30 juillet 2012
-
il est mort ^^'
cs_hackoo
Messages postés
94
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2013
-
@leam19
Voila un autre script pour obtenir l'adresse IP Publique:
Titre = "Adresse Ip Publique !"
URL = "http://autoitscript.fr/fai.php"
Set ie = CreateObject("InternetExplorer.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
ie.Navigate (URL)
ie.Visible=false
DO WHILE ie.busy
wscript.sleep 100
LOOP
Data = ie.document.documentElement.innertext
'MsgBox Data
Set objRegex = new RegExp
objRegex.Pattern = "(\d+.*)"
objRegex.Global = True
objRegex.IgnoreCase = True
Set Matches = objRegex.Execute(Data)
For Each Match in Matches
Result=objRegex.Replace(Match.Value,"$1")
MsgBox Result,64,Titre
Next

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.