Sortie de geoip 0.1.0, implémentation de l'API REST pour la localisation par IP

La premiĂšre version du projet geoip a Ă©tĂ© publiĂ©e, mettant en Ɠuvre un service pour obtenir des informations sur la localisation des adresses IP via une API REST. Le projet vise Ă  simplifier l'intĂ©gration des fonctionnalitĂ©s GeoIP dans diverses applications, libĂ©rant ainsi les dĂ©veloppeurs de la nĂ©cessitĂ© de gĂ©rer les mises Ă  jour des bases de donnĂ©es et de travailler avec le format MMDB. Le code est Ă©crit en Rust et est distribuĂ© sous licence MIT. Il est pris en charge sur Linux, macOS et d'autres systĂšmes de type UNIX.

Fonctionnalités principales du service :

  • Haute performance et faible consommation de mĂ©moire, grĂące Ă  l'utilisation d'un langage compilĂ© en code machine sans ramasse-miettes.
  • Fourniture d'informations sur l'adresse IP (pays, ville, code postal, coordonnĂ©es, opĂ©rateur de tĂ©lĂ©communication, etc.) via l'API REST basĂ©e sur les donnĂ©es MaxMind GeoLite2 (gratuit) et MaxMind GeoIP2 (payant).
  • DĂ©termination de l'actuel adresses IP utilisateur (disponible via un point de terminaison sĂ©parĂ© ; le paramĂštre ip du point de terminaison principal est facultatif).
  • Mise Ă  jour automatique configurable des bases de donnĂ©es (Ă  partir des ressources officielles de MaxMind en utilisant l'ID de compte et la clĂ© de licence, ou Ă  partir d'une URL utilisateur avec prise en charge de l'authentification ; il est possible de spĂ©cifier l'intervalle de vĂ©rification des mises Ă  jour).
  • Interface web pour l'envoi manuel de requĂȘtes, y compris un support optionnel pour l'affichage sur OpenStreetMap.
    Sortie de geoip 0.1.0, implémentation de l'API REST pour la localisation par IP
  • Pour tous les rĂ©sultats contenant le champ timezone, un champ supplĂ©mentaire posix_timezone est automatiquement gĂ©nĂ©rĂ© (par exemple, Europe/Paris se transforme en CET-1CEST,M3.5.0,M10.5.0/3). Cela assure la configuration automatique du fuseau horaire sur les dispositifs embarquĂ©s (par exemple, ESP32 et d'autres cibles newlib sans tzdata intĂ©grĂ©). Cette fonctionnalitĂ© est unique et absente dans des solutions similaires.
  • Mise Ă  jour automatique de la base de donnĂ©es des fuseaux horaires (l'intervalle, la source et l'authentification sont configurables ; par dĂ©faut, le site officiel de l'IANA est utilisĂ©). En cas de dĂ©sactivation des mises Ă  jour, la base de donnĂ©es systĂšme est appliquĂ©e.
  • PossibilitĂ© de tĂ©lĂ©charger les archives actuelles des bases de donnĂ©es via HTTP directement depuis le service (ce qui permet d'utiliser une instance comme source proxy pour d'autres et de rĂ©duire la consommation de quota MaxMind).
  • Support de la protection des points de terminaison via une clĂ© API optionnelle.
  • DisponibilitĂ© d'une spĂ©cification OpenAPI et d'une interface Swagger UI intĂ©grĂ©e pour faciliter l'intĂ©gration avec vos projets.
  • Fourniture d'une image Docker prĂȘte Ă  l'emploi pour un dĂ©ploiement rapide : docker run \ -e MAXMIND_ACCOUNT_ID=XXXX \ -e MAXMIND_LICENCE_KEY=YYYY \ -e OSM_TILES_URL="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" \ # optionnel -v geoip_data:/data \ -p 8080:8080 \ ghcr.io/quoi-dev/geoip:latest

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster