NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
Validateur Regex d'adresses IP en JavaScript

Validateur Regex d'adresses IP en JavaScript

Validez les patterns IPv4 et IPv6 sans effort avec le Validateur Regex d'adresses IP en JavaScript de Qodex. Que vous travailliez avec des données soumises par des utilisateurs ou des API backend, cet outil garantit que vos adresses IP respectent les formats standard. Vous pouvez également tester des patterns complexes avec le Testeur Regex JavaScript, ou vérifier d'autres saisies comme les adresses MAC avec le Validateur Regex adresse MAC JavaScript et les formats d'email avec le Validateur Regex Email JavaScript. Parfait pour les développeurs construisant une logique de validation de données sécurisée et précise.

Validateur Regex d'adresses IP en JavaScript - Documentation

Validateur Regex d'adresses IP en JavaScript

Qu'est-ce qu'un regex d'adresse IP ?

Une adresse IP est une chaîne unique qui identifie un appareil sur un réseau. Elle se présente sous deux formes : IPv4 et IPv6. La validation des adresses IP à l'aide d'expressions régulières (regex) en JavaScript garantit des saisies précises et sécurisées pour les formulaires, les API et les paramètres de configuration.

Le regex est particulièrement utile pour la validation côté client, où la prévention des entrées IP malformées peut réduire les erreurs backend et les problèmes de sécurité.

Quelle est la taille en bits d'une adresse IPv4 ?

Une adresse IPv4 est composée de 32 bits. Ces bits sont généralement affichés sous forme de quatre nombres décimaux (de 0 à 255) séparés par des points, par exemple 192.168.0.1. Chaque nombre correspond à 8 bits, souvent appelé un "octet". Cette structure 32 bits permet environ 4,3 milliards d'adresses uniques, principale raison du passage progressif vers IPv6 avec l'expansion d'Internet.

Patterns regex pour la validation d'adresses IP

1. Adresse IPv4

IPv4 se compose de quatre groupes de 1 à 3 chiffres (0-255), séparés par des points.

Aide-mémoire sur la syntaxe regex
Les crochets [] correspondent à tout caractère qu'ils contiennent. \d correspond à un chiffre. + signifie un ou plusieurs, * zéro ou plus, et ? indique que l'élément précédent est optionnel. Le caret ^ représente le début, $ la fin. Utilisez \. pour correspondre à un point littéral.

Pattern regex (IPv4) :

^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)$

Valide : 192.168.1.1, 127.0.0.1, 255.255.255.255

Invalide : 300.168.1.1, 192.168.1, abcd.123.0.1

2. Adresse IPv6

IPv6 est un format hexadécimal plus long, généralement écrit en 8 groupes séparés par des deux-points.

Pattern regex (IPv6 - simplifié) :

^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$

Valide : 2001:0db8:85a3:0000:0000:8a2e:0370:7334

Invalide : 2001:db8:85a3::8a2e:370g:7334

Note : il existe des patterns plus avancés pour les formes abrégées IPv6 ; celui ci-dessus fonctionne pour le format complet et développé.

Comment valider une adresse IP en JavaScript avec regex

function isValidIPv4(ip) {
  const ipv4Regex = /^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)$/;
  return ipv4Regex.test(ip);
}

function isValidIPv6(ip) { const ipv6Regex = /^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$/; return ipv6Regex.test(ip); }

// Example usage console.log(isValidIPv4("192.168.0.1")); // true console.log(isValidIPv6("2001:0db8:85a3:0000:0000:8a2e:0370:7334")); // true

Cas d'utilisation

  • Formulaires web : validez les saisies d'adresses IP avant la soumission.

  • Applications de surveillance réseau : faites correspondre les IP valides des appareils avec le Testeur Regex JavaScript.

  • API et panneaux d'administration : assurez un routage backend sécurisé avec des IP validées.

  • Analyse de journaux : extrayez des adresses IP depuis des journaux serveur.

Conseils pratiques

  • Utilisez toujours des ancres (^ et $) pour s'assurer que la chaîne entière correspond au pattern.

  • IPv6 possède de nombreuses notations abrégées valides ; si vous devez les supporter, utilisez des bibliothèques ou des regex avancés.

  • Utilisez trim() sur les entrées avant le test pour éviter les erreurs dues aux espaces.

  • Pour la validation en masse ou le test de plusieurs formats, combinez cet outil avec le Testeur Regex JavaScript.

Frequently Asked Questions

Ce regex peut-il détecter les plages IP privées invalides ?

Non, il valide uniquement le format, pas la plage d'IP. Le filtrage basé sur la logique doit être utilisé séparément.

Quelle est la différence entre les patterns regex IPv4 et IPv6 ?

IPv4 correspond à des groupes numériques séparés par des points, IPv6 à des groupes hexadécimaux séparés par des deux-points.

Dois-je utiliser regex ou une bibliothèque pour la validation IP ?

Pour des vérifications de format basiques, le regex suffit. Pour une validation plus approfondie (CIDR, plages réservées), utilisez des bibliothèques.

Puis-je modifier le pattern pour autoriser les numéros de port ?

Oui. Vous pouvez ajouter (:\d{1,5})? au regex pour autoriser la validation de port optionnelle.

Ce validateur est-il sensible à la casse ?

Non. Le regex IP pour IPv6 n'est pas sensible à la casse car il accepte les lettres hexadécimales en majuscules et minuscules.

Testez vos API dès aujourd'hui !

Rédigez en langage naturel, Qodex génère des tests sécurisés et prêts à l'emploi.