ほっしーの技術ネタ備忘録

技術ネタの備忘録です。基本的に私が忘れないためのものです。他の人の役にも立つといいなぁ。

ipv4_addrs で NIC の設定

かつて、NIC に割り当てる IP アドレスは /etc/rc.conf に以下の記述を書いていました。

ifconfig_fxp0="inet 192.168.1.3 netmask 255.255.255.0"
ifconfig_fxp0_alias0="inet 192.168.1.4 netmask 255.255.255.255"
ifconfig_fxp0_alias1="inet 192.168.1.5 netmask 255.255.255.255"

192.168.1.0/24 のネットワークで、192.168.1.3〜192.168.128.5 のアドレスを使う場合です。


まぁ、これで別に問題ないんですが、alias の netmask なんて
はっきり言ってどうでもいいですし、同じようなことを何度も書いて面倒です。
そう思う人がたくさんいたからかは知りませんが、
いつのころからか、ipv4_addrs という変数が追加されていました。


同じ設定を ipv4_addrs を使うと以下のように簡潔に書けます。

ipv4_addrs_fxp0="192.168.1.3-5/24"

ハイフンを使って IP アドレス範囲を設定して、スラッシュ以降でネットマスクを書きます。
この場合はメインで .3 を設定し、 .4 .5 は /32 で設定されます。


こんな風にスペースで区切って複数の範囲を書くこともできます。

ipv4_addrs_fxp0="192.168.1.3/24 192.168.1.4-5/32 192.168.1.100-110/32"


非常に簡潔で見やすいですね。