在本文中我將會介紹在幾種在 Linux 終端中查看你的公有 IP 地址的方法签夭。這對普通用戶來說并無意義怨喘,但 Linux 服務(wù)器(無GUI或者作為只能使用基本工具的用戶登錄時)會很有用谢揪。無論如何懦傍,從 Linux 終端中獲取公有 IP 在各種方面都很意義鱼蝉,說不定某一天就能用得著。
公有地址由 InterNIC 分配并由基于類的網(wǎng)絡(luò) ID 或基于 CIDR 的地址塊構(gòu)成(被稱為 CIDR 塊)院尔,并保證了在全球互聯(lián)網(wǎng)中的唯一性蜻展。當(dāng)公有地址被分配時喉誊,其路由將會被記錄到互聯(lián)網(wǎng)中的路由器中,這樣訪問公有地址的流量就能順利到達纵顾。訪問目標(biāo)公有地址的流量可經(jīng)由互聯(lián)網(wǎng)抵達伍茄。比如,當(dāng)一個 CIDR 塊被以網(wǎng)絡(luò) ID 和子網(wǎng)掩碼的形式分配給一個組織時施逾,對應(yīng)的 [網(wǎng)絡(luò) ID敷矫,子網(wǎng)掩碼] 也會同時作為路由儲存在互聯(lián)網(wǎng)中的路由器中。目標(biāo)是 CIDR 塊中的地址的 IP 封包會被導(dǎo)向?qū)?yīng)的位置汉额。
以下是我們主要使用的兩個命令曹仗,curl 和 wget。你可以換著用蠕搜。
Curl 純文本格式輸出:
curl icanhazip.comcurl ifconfig.mecurl curlmyip.comcurl ip.appspot.comcurl ipinfo.io/ipcurl ipecho.net/plaincurl www.trackip.net/i
curl JSON格式輸出:
curl ipinfo.io/jsoncurl ifconfig.me/all.jsoncurl www.trackip.net/ip?json
curl XML格式輸出:
curl ifconfig.me/all.xmlcurl 得到所有IP細節(jié) (挖掘機)curl ifconfig.me/all
使用 DYDNS (當(dāng)你使用 DYDNS 服務(wù)時有用)
curl -s 'http://checkip.dyndns.org' | sed 's/.*Current IP Address: \([0-9\.]*\).*/\1/g'curl -s http://checkip.dyndns.org/ | grep -o "[[:digit:].]\+"
使用 Wget 代替 Curl
wget http://ipecho.net/plain -O - -q ; echowget http://observebox.com/ip -O - -q ; echo
bash 腳本示例:
#!/bin/bashPUBLIC_IP=`wget http://ipecho.net/plain -O - -q ; echo`echo $PUBLIC_IP