Il tuo indirizzo IP è come il tuo indirizzo di casa ed è il modo in cui Internet sa dove inviare i dati che hai richiesto. Conoscere il tuo indirizzo IP è utile in molti modi, come la gestione remota del tuo server. Ma come si ottiene un indirizzo IP su Linux?
In questo tutorial imparerai molti modi per trovare il tuo indirizzo IP su Linux, sia usando la riga di comando che controllando le impostazioni di sistema.
Continua a leggere e scegli come desideri ottenere il tuo indirizzo IP!
Prerequisiti
Questo tutorial sarà una dimostrazione pratica. Se desideri continuare, assicurati di avere quanto segue:
- Una macchina Linux – Puoi usare una macchina virtuale, un server dedicato o anche il tuo computer Windows 10 locale con Windows Subsystem for Linux (WSL) – Questo tutorial usa Ubuntu 20.04 LTS, ma altre distribuzioni Linux funzioneranno.
- Toolkit di rete NET-3 installato.
- Questo tutorial presuppone che tu abbia già effettuato l'accesso/SSH al sistema come utente con privilegi sudo:questo tutorial utilizza l'utente root per eseguire tutti i comandi.
Se non hai effettuato l'accesso come utente root, anteponi sudo ai comandi di questo tutorial.
Ottieni un indirizzo IP su Linux con il curl
Comando
Uno strumento popolare chiamato cURL ti consente di trasferire i dati specificati con la sintassi dell'URL. Questo strumento supporta protocolli come DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, ecc.
Ma la domanda importante è:puoi ottenere il tuo indirizzo IP pubblico con il comando curl? Sì! Ottenere il tuo indirizzo IP pubblico è solo una delle potenti funzionalità di cURL.
Correlati:segnaposto di questo
Esegui il comando seguente per trovare il tuo indirizzo IP pubblico:
curl
– Utilizza l'API di ricerca di Google per recuperare il primo risultato della query "what is my ip address
."- Il
-s
l'opzione dice acurl
per eseguire una richiesta silenziosa. L'output viene quindi reindirizzato agrep
, che estrae solo l'indirizzo IP dalla risposta utilizzando un'espressione regolare. - Il
-oE
parte delgrep
comando sta per "solo corrispondenza", che restituisce solo l'indirizzo IP corrispondente e non l'intera risposta. - Gli
-m1
l'opzione dice agrep
fermarsi dopo la prima partita. Come mai? L'API di ricerca di Google restituisce un mucchio di codice HTML insieme all'indirizzo IP; non ne hai bisogno.
curl -s | grep -oE "\\b([0-9]{1,3}.){3}[0-9]{1,3}\\b" -m1
Di seguito puoi vedere il tuo indirizzo IP pubblico stampato.
Ottieni un indirizzo IP su Linux con il wget
Comando
Come cURL, Wget è un'utilità gratuita che ti consente di recuperare file utilizzando i protocolli Internet più utilizzati (HTTP, HTTPS e FTP).
Wget ti consente di scaricare singoli file, interi siti Web o persino eseguire il mirroring di un intero sito Web e, naturalmente, trovare il tuo indirizzo IP.
Esegui il seguente wget
comando per trovare e visualizzare il tuo indirizzo IP pubblico sul terminale con quanto segue:
- Il
wget
comando invia una richiesta HTTP ahttps://ipecho.net/plain
e recupera il contenuto di quella pagina. - Il
-qO
l'opzione dice awget
per essere silenzioso e stampare il minor numero possibile di copie sul terminale. - L'output del
wget
il comando viene inviato tramite pipe alxargs echo
comando per visualizzare l'output in un'unica riga.
wget -qO- []() | xargs echo
Ora puoi condividere l'indirizzo IP con i tuoi utenti in modo che possano connettersi al server tramite SSH.
Annotazione del tuo indirizzo IP pubblico con il dig
Comando
The Domain Information Groper (dig
) viene utilizzato per interrogare i server DNS, ma puoi anche utilizzare questo comando per trovare il tuo indirizzo IP pubblico.
Correlati:segnaposto
Supponiamo che tu abbia inviato una richiesta ping all'indirizzo IP pubblico del tuo server web. Se hai ricevuto la risposta ping, sai che il tuo server web è in esecuzione e accessibile dal mondo esterno. In caso contrario, potrebbe essere necessario risolvere il problema per identificare il problema e il primo passo è trovare il tuo indirizzo IP pubblico.
Esegui il dig
di seguito comando per interrogare l'indirizzo IP pubblico del tuo server web.
- Il comando seguente utilizza i server dei nomi OpenDNS (
resolver1.opendns.com
) per trovare il tuo indirizzo IP pubblico. I server OpenDNS sono una buona idea in quanto sono affidabili e offrono migliori funzionalità di sicurezza, come la protezione dal phishing e il filtro dei contenuti. - Il
+short
l'opzione indicadig
per stampare l'output in un formato breve, mentremyip.opendns.com
è il nome host che restituisce il tuo indirizzo IP pubblico.
dig +short myip.opendns.com @resolver1.opendns.com
Ora esegui il ping
comando seguente per inviare una richiesta ping ogni 10
secondi. Sostituisci IP_address
con l'indirizzo IP pubblico effettivo del tuo server web.
ping -i 10 IP_address
Trovare il tuo indirizzo IP privato usando il ifconfig
Comando
A questo punto sai già come trovare il tuo indirizzo IP pubblico. Ma in alcuni casi, potresti dover conoscere l'indirizzo IP privato del tuo server Linux per connetterti ad esso da un altro dispositivo sulla stessa rete.
Come ottenere il tuo indirizzo IP privato? Il comando ifconfig farà il trucco.
Esegui ifconfig
comando qui sotto per visualizzare tutto (-a
) schede di rete sul tuo sistema e relativa configurazione, incluso il tuo indirizzo IP privato.
ifconfig -a
Come puoi vedere di seguito, un sistema può avere più di una scheda di rete. Ciascun adattatore può avere un indirizzo IP diverso.
Cerca inet voce sotto ethh0 o wlan0 adattatore per trovare il tuo indirizzo IPv4 privato, come mostrato di seguito.
Scrivere uno script Bash per trovare il tuo indirizzo IP
Forse hai bisogno di un modo per trovare automaticamente il tuo indirizzo IP. Se è così, scrivere uno script Bash è una scelta eccellente per trovare i tuoi indirizzi IP pubblici e privati.
Perché usare uno script? Puoi utilizzare lo stesso script su più sistemi, risparmiandoti il fastidio di eseguire i comandi su ciascun sistema.
1. Apri un nuovo find_ip.sh file nel tuo editor di testo preferito.
nano find_ip.sh
2. Aggiungi il codice seguente a find_ip.sh file, salva il file e chiudi l'editor.
Il codice seguente trova e memorizza i tuoi indirizzi IP privati e pubblici sulle variabili lanIp e wanIp e li stampa sul terminale.
#!/bin/bash
# Find your private IP address and store the value to the lanIp variable
lanIp="$(ip -4 -o -br addr|awk '$0 ~ /^[we]\w+\s+UP\s+/ {str = gsub("/[1-9][0-9]*", "", $0); print $3}')";
# Find your public IP address and store the value to the wanIp variable
wanIp="$(curl https://ipinfo.io/ip 2>/dev/null)";
# Print the values of the lanIp and wanIp variables
echo "Your private ip is: ${lanIp}";
echo "Your public ip is: ${wanIp}";
La memorizzazione dell'indirizzo IP pubblico del server in una variabile di ambiente è utile per uno strumento CD/CI, come Jenkins o TravisCI.
3. Infine, esegui il comando sh seguente per eseguire lo script find_ip.sh per trovare i tuoi indirizzi IP.
sh find_ip.sh
Vedrai un output simile al seguente, che mostra i tuoi indirizzi IP pubblici e privati.
Conclusione
In questo tutorial, hai imparato come trovare/ottenere il tuo indirizzo IP su Linux utilizzando alcuni comandi diversi, come il curl
e ifconfig
. Hai anche scritto uno script per automatizzare la ricerca di indirizzi IP su più sistemi.
Ora che sai come trovare il tuo indirizzo IP su Linux, puoi utilizzare queste informazioni per diverse attività. Forse per configurare un DNS dinamico Cloudflare per la tua rete domestica?