Salut tout le monde,
En ce moment, je suis en train de bricoler un petit programme en PureBasic qui me permettrait de suivre les changements de connexion réseau sur mon PC portable. Comme je bouge souvent, je passe de temps en temps du Wi-Fi au partage de connexion mobile, et récemment j'ai aussi testé une eSIM pour être connecté plus facilement lors de déplacements. Pour ces essais, j’avais pris quelques informations sur https://esimdeals.io/ afin de comparer les différentes solutions de connectivité.
Je me demandais donc quelle était la meilleure façon de détecter sou sPureBasic quand une adresse IP change ou qu'une autre interface réseaudevient active. Mon but est surtout de consigner ces événements dans un fichier log afin de les analyser ensuite. Si quelques uns ont déjà fait quelque chose de similaire ou connaissent des API Windows adaptées à ce besoin, je serais ravi d'avoir vos conseils. Merci à l'avance !
Monitoring réseau en PureBasic
Re: Monitoring réseau en PureBasic
Tu as plusieurs solutions.
Soit tu check l'IP en boucle via ipconfig dans ton terminal et tu la récupère, soit tu te places un fichier php si tu as de quoi l'héberger qui check ton ip distante. Avec un timer tu fais ça toute les x sec ou minutes. Si ancienne ip différe de nouvelle ip alors log.
Soit tu check l'IP en boucle via ipconfig dans ton terminal et tu la récupère, soit tu te places un fichier php si tu as de quoi l'héberger qui check ton ip distante. Avec un timer tu fais ça toute les x sec ou minutes. Si ancienne ip différe de nouvelle ip alors log.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
- TazNormand
- Messages : 1302
- Inscription : ven. 27/oct./2006 12:19
- Localisation : Calvados (14)
Re: Monitoring réseau en PureBasic
Salut,
Tu parles des adresses IP locales (LAN) ou bien de ton adresse IP publique visible sur internet ?
Si c'est ton/tes adresses LAN, regarde du côté de ExamineIPAddresses()
Si c'est ton adresse ip publique, tu peux utiliser le site api.ipify.org, voici un petit code basé sur l'exemple de la commande HTTPInfo() :
A toi de faire le code pour checker régulièrement que la valeur de retour de ipify.org n'a pas changé
Tu peux enlever le "?format=json" dans le HTTPRequest() si tu veux l'ip publique en format brut
Tu parles des adresses IP locales (LAN) ou bien de ton adresse IP publique visible sur internet ?
Si c'est ton/tes adresses LAN, regarde du côté de ExamineIPAddresses()
Si c'est ton adresse ip publique, tu peux utiliser le site api.ipify.org, voici un petit code basé sur l'exemple de la commande HTTPInfo() :
Code : Tout sélectionner
HttpRequest=HTTPRequest(#PB_HTTP_Get,"https://api.ipify.org?format=json")
If HttpRequest
Debug "Réponse: " + HTTPInfo(HTTPRequest, #PB_HTTP_Response)
Debug "Status : " + HTTPInfo(HTTPRequest, #PB_HTTP_StatusCode)
FinishHTTP(HTTPRequest)
Else
Debug "La requête a échoué"
EndIfTu peux enlever le "?format=json" dans le HTTPRequest() si tu veux l'ip publique en format brut
Re: Monitoring réseau en PureBasic
Hello, merci pour vos réponses !
`ExamineIPAddresses()` semble bien adapté pour les IP locales, et je vais aussi tester `api.ipify.org` pour l'IP publique.
Je me demande juste s'il existe une solution basée sur les notifications de l'API Windows, afin d'éviter un contrôle en boucle. Si quelqu'un a déjà fait ça en PureBasic, je suis preneur de retours.
`ExamineIPAddresses()` semble bien adapté pour les IP locales, et je vais aussi tester `api.ipify.org` pour l'IP publique.
Je me demande juste s'il existe une solution basée sur les notifications de l'API Windows, afin d'éviter un contrôle en boucle. Si quelqu'un a déjà fait ça en PureBasic, je suis preneur de retours.