Vérification de l’adresse IP d’un robot d’exploration

L'équipe Citead, mis à jour le

En bref. La vérification de l’adresse IP d’un robot d’exploration teste si l’adresse source d’une requête appartient aux plages publiées pour le robot déclaré.

Définition : La vérification de l’adresse IP d’un robot d’exploration (crawler) consiste à contrôler si l’adresse Internet Protocol (IP) à l’origine d’une requête web appartient à une plage d’adresses publiée par l’opérateur du robot. Elle apporte un élément de preuve sur l’origine réseau de la requête pour évaluer l’identité de robot déclarée.

Points clés

Quel fichier d’adresses d’OpenAI utiliser ?

L’agent utilisateur (user-agent) est l’identifiant qu’un client envoie avec une requête. Le document Overview of OpenAI Crawlers d’OpenAI associe OAI-SearchBot à la recherche et ChatGPT-User à certaines actions des utilisateurs dans ChatGPT et les Custom GPTs. Il fournit les liens suivants vers les fichiers d’adresses publiés :

  • OAI-SearchBot utilise https://openai.com/searchbot.json.
  • GPTBot utilise https://openai.com/gptbot.json.
  • ChatGPT-User utilise https://openai.com/chatgpt-user.json.

La procédure de vérification commence par l’agent déclaré et le fichier qui lui correspond. Consigner cette association dans le dossier d’audit permet d’interpréter le résultat : une correspondance avec une plage de searchbot répond à une vérification différente d’une correspondance avec une plage de GPTBot. Pour un audit, l’URL demandée, l’agent déclaré et l’adresse observée doivent accompagner le résultat de la comparaison.

Comment vérifier qu’une adresse appartient à une plage publiée ?

La notation CIDR (Classless Inter-Domain Routing) représente une adresse réseau et une longueur de préfixe séparées par une barre oblique. La longueur du préfixe précise les bits de début de l’adresse qui définissent le réseau. Le fichier searchbot.json d’OpenAI contient cette entrée de plage :

{
  "ipv4Prefix": "104.210.140.128/28"
}

La comparaison vérifie l’appartenance à la plage. Comparer l’adresse de la requête au texte littéral 104.210.140.128/28 omettrait l’opération réseau représentée par le préfixe.

La documentation du module ipaddress de Python décrit les objets réseau comme des conteneurs d’adresses. L’implémentation suivante applique ce test d’appartenance à un fichier searchbot.json téléchargé. Elle prend l’adresse observée de la requête comme argument de ligne de commande :

import ipaddress
import json
import sys

with open("searchbot.json") as source:
    published = json.load(source)
address = ipaddress.ip_address(sys.argv[1])
networks = (
    ipaddress.ip_network(prefix)
    for item in published["prefixes"]
    for key, prefix in item.items()
    if key in ("ipv4Prefix", "ipv6Prefix")
)
print(any(address in network for network in networks))

Un résultat True indique que l’adresse appartient à une plage de la liste téléchargée. Un résultat False indique qu’aucune correspondance ne figure dans cette copie. Pour rendre la vérification reproductible, le dossier d’audit doit conserver le fichier téléchargé, sa valeur creationTime et la date de récupération avec le résultat.

Comment Google documente-t-il cette vérification ?

Le guide de vérification de Google distingue les robots d’exploration courants, les robots d’exploration à usage spécifique et les outils de récupération déclenchés par les utilisateurs. Il renvoie vers common-crawlers.json pour les robots courants comme Googlebot et fournit des listes distinctes pour les autres catégories.

Le même guide propose une méthode manuelle : une résolution inverse du système de noms de domaine (Domain Name System, DNS) trouve le nom d’hôte associé à une adresse, puis une résolution directe vérifie que ce nom d’hôte correspond à l’adresse initiale. Le choix de la méthode documentée par l’opérateur et de la catégorie de robot concernée permet de rattacher la vérification à la requête examinée.

Termes associés

Questions fréquentes

Quel fichier utiliser pour une requête d’OAI-SearchBot ?

Utilisez searchbot.json, le fichier d’adresses associé à OAI-SearchBot dans la documentation sur les robots d’OpenAI. Conservez le fichier utilisé pour la vérification avec le résultat.

Puis-je comparer directement une adresse à une chaîne CIDR ?

Utilisez une opération de test d’appartenance à un réseau. Le module ipaddress de Python convertit un préfixe en objet réseau et permet de vérifier si une adresse lui appartient.

Comment vérifier Googlebot ?

Utilisez les plages que Google publie pour Googlebot. Le guide de vérification de Google renvoie vers sa liste de robots courants et documente les vérifications DNS inverse et directe comme méthode manuelle alternative.

Sources

  1. OpenAI, « Overview of OpenAI Crawlers », consulté le 17 octobre 2026
  2. OpenAI, « OAI-SearchBot published IP addresses », consulté le 17 octobre 2026
  3. Python Software Foundation, « ipaddress: IPv4/IPv6 manipulation library », consulté le 17 octobre 2026
  4. Google, « Verify requests from Google crawlers and fetchers », 20 mars 2026

Vérifiez comment une page se lit pour les moteurs de réponse. Ouvrir l’analyseur de score GEO

Testez une page et voyez quoi corriger en premier

L'analyse prend en général moins de 10 secondes et ne demande pas de compte.

400 000+ pages notées dans le benchmark public