それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

自分のグローバルIPをチェックする方法について

コマンドラインで自分のグローバルIPをチェックしたい。

コマンドライングローバルIPを取得して、今のIPを確認して保存したい。

必要なもの

  • xmllint または jq
  • curl

curl で取得して、xpath で切り出す感じ

グローバルIPの取得

curl -s http://www.myglobalip.com/ | xmllint --html --xpath  '//*[@id="default"]//text()' -

準備

curl がないって環境は存在しないだろうけど、xmllint はない場合はインストールする。

sudo apt install libxml2-utils

ubuntu/debian の場合はこれでxmllint という超絶便利なコマンドが入手できる。

alias

alias 化しておかないとふべん

alias xpath="xmllint --html --xpath"

取得するサイトを変えてあれこれ試す。

json で取得できるサイトを使う

xpath の場合

 curl https://www.cman.jp/network/support/go_access.cgi -s   | xpath '//*[@class="outIp"]/text()' -
curl -s http://www.displaymyip.com/   | xpath '//*[@class="ip"]/text()' -

jq の場合

 curl -s  http://httpbin.org/ip | jq -r  .origin
curl -s  'https://api.ipify.org?format=json' | jq -r  .ip

jq も xmllint も無いって人は

curl inet-ip.info

スクリプトから グローバルIPをチェックしたい時の注意事項

老舗を使え、HTMLのデザインが古い奴を選べ、ちゃんと10年以上安定化移動している証拠だ。

HTMLのデザインが古いのは、たぶんみんなスクレーピングしてるから。

最近のデザインのものは、すぐにサービス停止したり、気まぐれでドメインが失効したり。対応が面倒くさい。

企業は倒産するかもしれないので個人のものより寿命が短い傾向がある。

出来る限り長く稼働して居るものが安定です。

ドメイン名の有効期間を調べて長く使えるものが良いでしょう

特に注意するもの、ドコかの企業が運営してるもの、ブロガーが運営してるものは多分数年内に消える。面倒くさいですよね。

自宅鯖運営民にとってグローバルIPが自動更新されなくなると死活問題ですから。

2022-04-04

エイリアスについて更新