1
1

More than 3 years have passed since last update.

バッチファイルでグローバルIPアドレスを変数に格納

Last updated at Posted at 2021-04-21

Y子です。
今日は、グローバルIPアドレスを取得し、変数に格納してみます。
やり方はいろいろあると思いますが、わたしが思う一番簡単な方法で作ってみました。

概要・用途

自分のグローバルIPアドレスを取得して、変数に格納します。
IPアドレスとドメイン名を関連付けたい場合など、グローバルIPアドレスを知りたい場面で使えると思います。
確認環境:Windows 10 Home (Bld. 19042.928)

コード

以前の記事に、curlを使ってネット上のファイルをダウンロードする方法を書きました。
今回は、その応用です。
アクセスした端末のグローバルIPアドレスを、シンプルにテキスト表示してくれるサイトがありますので、その結果を変数に格納します。
※プロキシ認証の対応方法は、以前の記事を参照してください。

get_globalip1.bat
@echo off

rem コマンドの実行結果を変数に格納
for /f "usebackq" %%a in (`curl https://api.ipify.org`) do set ipaddr=%%a

echo %ipaddr%
実行結果
> get_globalip1.bat
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    11  100    11    0     0     11      0  0:00:01  0:00:01 --:--:--     8
xx.xx.xx.xx

結果のIPアドレスは、xx.xx.xx.xxと伏せています。
3行にわたって、ダウンロードの進捗状況等が表示されます。
これが不要な場合は、curlコマンドに-sオプションを与えることで、次のように消すこともできます。

get_globalip2.bat
@echo off

rem コマンドの実行結果を変数に格納
for /f "usebackq" %%a in (`curl -s https://api.ipify.org`) do set ipaddr=%%a

echo %ipaddr%
実行結果
> get_globalip2.bat
xx.xx.xx.xx

IPアドレスだけが表示されました。
ネットワークが遅い場合などは、結果が表示されるまで数秒の時間がかかると思いますが、それが逆に不自然に感じる場合は、-sオプションをなくして進捗が見えた方が安心かもしれません。
これは使い方や環境によって、選べばよいと思います。

おわりに

グローバルIPアドレスを変数に格納!
これもしかして、ネットワーク管理に便利だったりしませんか!
どう便利か、なかなか具体例が思いつきませんが…。

まあきっと、何かあるでしょう。方法を知ってることが大事なのです。(強気)

では!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1