概要
みなさんこんにちはcandleです。
今回はMacのログインフックを使って、自動的にローカルのipアドレスを割り振ってみたいと思います。
Macでは自動的に127.0.0.1がローカルのIPアドレスとして使えます。
一方、dockerで使う場合では別に用意する必要があったりします。
前提
macを使っている
lo0のipアドレスを確認する
まずはifconfigコマンドでmacのlo0に割り振られているIPアドレスを確認します。
ifconfig
127.0.0.1があるのがわかります。
ipアドレスを割り振るshファイルを作る
IPアドレスを割り振るシェルスクリプトファイルを作成します。
touch ~/.lo0ip.sh
ファイルを開いて、以下を記述します。
#!/bin/bash sudo ifconfig lo0 alias 10.200.10.1/24
IPアドレスの番号の補足ですが、一般に127.0.0.2とか127.0.0.3などを割り振ることが多いらしいです。
ただ、私の場合はその番号ではdockerで使えなかったので、docker公式docsにあったIPアドレスを割り当てています。
macのログインフックに登録する
作成したlo0ip.shに実行権限を付与します。
chmod u+x ~/.lo0ip.sh
次にrootユーザが実行できるように実行可能ユーザを変更します。
suso chown root:wheel ~/.lo0ip.sh
ファイルはこんな感じになります。
最後にログインフックに登録します。
sudo defaults write com.apple.loginwindow LoginHook ~/.lo0ip.sh
確認は以下のコマンドでできます。
sudo defaults read com.apple.loginwindow LoginHook
確認してみる
Mac pcを再起動して ifconfigコマンドを実行します。
ifconfig
まとめ
macのログインフックを使えば、毎回IPアドレス登録のコマンドを実行しなくても、任意のIPアドレスを割り振る事ができます。