Comment obtenir votre IP publique dans un script Linux Bash

Nov 9, 2024
Linux

Vous aurez besoin de votre adresse IP externe si vous souhaitez vous connecter à distance à votre ordinateur. Le trouver manuellement est facile, mais voici comment le trouver à partir d'un script Linux.

Adresses IP internes et externes

Adresses de protocole Internet sont utilisés pour identifier les appareils sur un réseau. Ils sont une étiquette unique sur le réseau, affecté à un seul appareil. Si un autre appareil souhaite envoyer des données à cet appareil, il peut le faire en utilisant son adresse IP.

Votre modem à large bande a un routeur de réseau intégré qui dirige le trafic réseau autour du réseau de l'appareil à un appareil. C'est également l'autorité locale qui alloue les adresses IP aux appareils lorsqu'ils rejoignent le réseau. Il conserve également un tableau des noms de réseau et des adresses IP. Cela vous permet de donner des noms significatifs aux ordinateurs de votre réseau, car - pour les humains - les noms sont plus faciles à travailler que les listes de nombres.

Dispositifs sur le l'Internet ont également une adresse IP. Certains d'entre eux ont également des noms, tels que des sites Web. Service de noms de domaine Les fournisseurs recherchent automatiquement les noms de domaine du site Web et échangent des adresses IP.

Votre modem à large bande reçoit son propre externe Adresse IP par votre Fournisseur de services Internet (ISP). Quel que soit le nombre d'appareils que vous pourriez avoir dans votre maison qui sont connectés à Internet, leur trafic combiné sort tous par cette seule adresse IP.

Si vous êtes hors de la ville et que vous souhaitez vous connecter à un service que vous avez exécuté sur l'un des ordinateurs de votre maison, vous devrez utiliser votre adresse IP externe pour le faire. Ton routeur devra être configuré pour acheminer votre demande de connexion vers l'appareil approprié à l'intérieur de votre maison, bien sûr.

À moins que vous ne payiez un peu plus à votre FAI chaque mois pour un statique adresse IP Votre adresse IP externe peut changer de temps à autre. Le redémarrage de votre modem haut débit pourrait bien vous entraîner une adresse IP externe différente. Donc, si vous avez besoin de connaître votre adresse IP externe, vous ne pouvez pas simplement la vérifier une fois et la stocker. Vous devrez déterminer périodiquement ce que c'est.

Trouver votre adresse IP externe

Découvrir votre adresse IP externe signifie parler à quelque chose qui est en dehors de votre réseau. En d'autres termes, accéder à quelque chose sur Internet qui peut nous donner les informations que nous voulons. Nous devons regarder dans le vide et voir ce qui nous regarde. Puis demandez-lui notre adresse externe.

Il y a deux façons de le faire. Une façon implique des sites Web. Il y a beaucoup de sites Web qui vous montreront quelle sera votre adresse IP externe, et un tas d'autres informations également. Vous pouvez y accéder dans votre navigateur ou utiliser un outil de ligne de commande comme boucle qui peut faire Https demandes.

L'autre moyen est d'utiliser une commande dédiée comme creuser . Le creuser La commande interroge les serveurs DNS pour récupérer des informations.

Utilisation d'un navigateur

Bien sûr, l'utilisation d'un navigateur n'est pas un moyen convivial pour obtenir votre adresse IP externe. Mais regarder un site Web qui fournit ce service peut nous donner des informations utiles. Nous avons l'habitude de recommander ip4.me Mais le site n'a pas été mis à jour sur HTTPS. Il utilise toujours l'ancien et l'insécurité Http . Le site fonctionne toujours, mais il existe de meilleures alternatives maintenant.

Cela rapporte notre IP externe comme 178.238.11.140. En parcourant la page Web, vous trouverez une liste de commandes que vous pouvez utiliser pour récupérer des informations du site.

Les exemples qu'ils utilisent tous boucle pour interroger le site. Alors jetons un coup d'œil en utilisant boucle .

Utilisation de Curl

Sur nos machines d'essai, Fedora 37 déjà eu boucle installée. Nous devions l'installer sur nos ordinateurs Ubuntu et Manjaro.

Nous pouvons l'essayer avec la première commande répertoriée sur le ifconfig.me page web.

Notre adresse IP externe est récupérée et affichée dans la fenêtre du terminal. La sortie est nue. Il n'y a même pas de personnage Newline imprimé après la chaîne. L'invite de commande est restée directement contre l'adresse IP.

Cette commande fonctionne parce que le retour de l'adresse IP est l'action par défaut du site Web. Si l'action par défaut change jamais, nous pourrions obtenir un résultat différent qui nous a été renvoyé. Pour répondre à cela, nous pouvons spécifier que nous demandons notre adresse IP en ajoutant l'identifiant «IP» à l'URL.

Cela illustre le problème avec l'utilisation d'un site Web comme source de votre adresse IP. Les sites Web peuvent fermer ou ils peuvent modifier leur façon de fonctionner, ou le format des informations retournées. Ces changements apporteront scripts qui dépendent de ces sites pour échouer ou se comporter de manière imprévisible.

En utilisant une ressource réputée et fiable comme un DNS Le serveur est un moyen plus robuste d'obtenir votre IP externe. Pour interroger un serveur DNS, nous devons utiliser la commande Dig.

EN RAPPORT: Qu'est-ce que DNS et dois-je utiliser un autre serveur DNS?

Utilisation de la commande Dig

Ce temps, creuser a été installé sur Fedora et Ubuntu, et nous n'avons eu qu'à l'installer sur Manjaro.

La commande est l'habitude Pac-Man Commande, donc pas de surprise là-bas, mais le nom du package n'est pas ce à quoi vous pourriez vous attendre.

Pour utiliser creuser Pour découvrir notre adresse IP externe, nous devons le pointer vers un serveur DNS. Nous utilisons le OpenDNS Server, qui est fourni par Cisco .

Nous devons spécifier le nom du serveur DNS que nous souhaitons utiliser, précédé d'un signe AT «@». Nous devons également nommer le type d'enregistrement que nous souhaitons récupérer. Dans ce cas, c'est «MYIP». Le + court L'option garantit que nous obtenons une réponse laconique et non verbeuse.

Cette fois, notre adresse IP a un caractère Newline imprimé après. Comme nous le verrons, cela est imprimé après la chaîne d'adresse IP, il ne fait pas partie intégrante de la chaîne elle-même.

Utiliser ceux-ci dans un script

Il existe de nombreuses raisons pour lesquelles vous voudrez peut-être connaître votre adresse IP externe à l'intérieur d'un script. Peut-être avez-vous un script qui surveille si votre adresse IP externe a changé, et cela vous informe lorsque cela se produit. Ou peut-être qu'un serveur informe ses clients lorsque son adresse change. Quelles que soient vos raisons, nous pouvons implémenter les commandes que nous avons utilisées sur la ligne de commande dans un script assez facilement.

Pour récupérer notre adresse IP externe et l'attribuer à un variable , nous n'avons qu'à envelopper la commande dans une substitution de commande, $ (...) , et attribuez-le à une variable, comme ceci:

La commande à l'intérieur des parenthèses est exécutée et la valeur de retour est remplacée par l'expression. Dans cet exemple, la commande est simplifiée à «variable = valeur de retour».

Le voici dans un script. Nous avons ajouté le -s (silencieuse) option au boucle commande pour l'empêcher de signaler les progrès de la récupération des données.

Copiez ce script dans un éditeur et enregistrez-le comme «getEx1.sh», et faites-le exécutable avec le chod commande .

Pour faire de même avec l'option la plus robuste d'utiliser un serveur DNS plutôt qu'un site Web, tout ce que nous devons faire est de remplacer le boucle commande avec le creuser un.

Enregistrez ceci en tant que script «getEx2.sh» et rendez-le exécutable avec chod .

Nous pouvons voir à partir de la sortie des deux scripts qui malgré la commande creuser Impression d'un caractère Newline sur la ligne de commande, dans le script, il n'y a pas de nouvelle ligne ajoutée au extensible variable.

Optez pour la fiabilité

Il est toujours plus sûr d'utiliser un service reconnu qui est réputé et a un format de sortie prévisible que d'utiliser un site Web «non officiel». Comme tout le reste sur Internet, regardez bien de qui vous obtenez vos informations. »

EN RAPPORT: Comment laisser les scripts Linux détecter qu'ils s'exécutent dans des machines virtuelles

  • Comment trouver votre adresse IP à partir de CMD (invite de commande)
  • Wyze est en panne, ce n'est pas seulement toi
  • Microsoft Edge obtient un chat IA et un nouveau look sur Windows
  • Microsoft transforme Bing en un moteur de recherche AI
  • Comment bloquer ou débloquer quelqu'un sur tiktok
  • Le OnePlus 11 est là, mais avec un début difficile
  • Bose QuietComfort Earbuds 2 Revue: un pas en avant pour l'annulation de son audio

Linux - Most Popular Articles

Comment gérer les serveurs Linux avec l'interface Web du cockpit

Linux Dec 9, 2024

Fatmawati Achmad Zaenuri / Shutterstock [dix] Vous pouvez facilement surveiller et gérer plusieurs ordinateurs Linux avec cockpit, une administration basée..


Comment installer Signal Desktop sur Linux

Linux Jan 22, 2025

Eliseu Geisler / Shutterstock.com [dix] Signal est L'application de messagerie smartphone axée sur la vie privée Tout le monde semble uti..


Comment utiliser "ici Documents" à Bash sur Linux

Linux Mar 31, 2025

Fatmawati Achmad Zaenuri / Shutterstock [dix] Les "voici des documents" étrangement nommés vous permettent d'utiliser la redirection d'entrée / sortie à ..


Comment mettre à jour Ubuntu Linux

Linux Aug 27, 2025

tomeqs / shutterstock.com [dix] Besoin du dernier et de la plus grande du logiciel Ubuntu? Vous n'avez pas besoin d'être un pro Linux pro. Lisez-le pour ..


Quoi de neuf à Fedora 35

Linux Nov 2, 2024

Fedora 35, chapeau rouge GRATUITEMENT Distribution Linux (Distro), a été publié le 2 novembre 2021. À partir d'une expérience de bureau mis à jour aux modificat..


Comment télécharger et installer Steam sur Linux

Linux Oct 9, 2025

PostModern Studio / Shutterstock.com [dix] Donc, vous voulez essayer de jouer au jeu sur Linux ? Dans cet article, examinons comment installer..


Quoi de neuf à Ubuntu 21.10 'Impish Indri'

Linux Oct 14, 2025

Canonique [dix] Ubuntu 21.10 "Impish Indri" était publié Le 14 octobre 2021. Il dispose Gnome 40 , un nouveau noyau et des applications..


Pouvez-vous installer Linux sur un M1 d'Apple Silicon Mac?

Linux Nov 12, 2024

Tout le monde n'achète pas un Mac pour exécuter uniquement des macos. La mauvaise nouvelle est que, à compter du novembre 2021, le soutien de Linux natif sur Apple Silicon n'est pas e..


Catégories