ip : 自端末の IP アドレスを調べる npm パッケージ
MacOS なんかだと、「システム環境設定」→「ネットワーク」と進んだ時に、
Wi-Fi は HOGEFUGA に接続していて、IPアドレス 10.200.15.250 が設定されています。
なんて表示されたりして、自端末の IP アドレスが確認できる。
この情報を Node.js スクリプト内で参照したくなったので調べたところ、ip
というパッケージで実現できそうだった。
# ip をローカルインストールする
$ npm i -S ip
# ローカルインストールされた ip を参照して IP アドレスを取得する
$ node -pe "require('ip').address()"
10.200.15.250
ip は CLI 向けの API がないので、こんな確認方法になっている。node -e
でワンライナー実行、node -p
でメソッドの実行結果をコンソール出力、とできる Node.js の REPL のオプション。
ちなみに ip をグローバルインストールしたときは、以下のように ip パッケージがインストールされているディレクトリまでフルパス指定すれば参照できた。ちと無理やりなので止めた方がよか…。
# ip をグローバルインストールしてみる
$ npm i -g ip
# グローバルインストールされた先のディレクトリを記述する
# 自分の場合、Nodebrew を利用しているのでこんなパスになった
$ node -pe "require('/Users/Neo/.nodebrew/node/v10.7.0/lib/node_modules/ip').address()"
Node.js スクリプトで使用する場合はこんな感じ。
const ip = require('ip');
console.log(`My Server URL : http://${ip.address()}/`);
楽チン!