2017年8月18日金曜日

Raspbian Jessieで複数の静的IPを切り替えたい [ Raspberry Pi ]

Raspberry piのOSがRaspbian8(Jessie)になって、ネットワークの設定方法が変わってしまった!
まあ、DHCPで使っている分には困らないんだけど、どうしてもIPは固定したいのだ。
で、IPを固定する方法を世の中の人に聞いてみると・・・
/etc/network/interfacesを修正してもダメなようで、
/etc/dhcpcd.confを修正するようですな。

で、設定はこんな感じ

interface eth0
static ip_address=192.168.1.123/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

特に難しいこともなく設定できた。

(※以下の設定では、なんか動作が安定しないなぁ・・・なぜかIPが静的に割り当てられないときがあるようだ、原因は不明・・・)

でも、RaspberryPiを持ち歩いてネットワークアドレスの異なるネットワークに接続するときにちょっと困るのだ。
(192.168.1.0のネットワークから192.168.0.0のネットワークに持って行った時とか)
で、interface eth0:0を追加すればいいんだと思ってやってみたけど・・・ダメ
やっぱ、違うんだな。じゃあ、世の中の人に再び聞きにいこう!
発見!!RASPBERRY PIの公式ページ?のフォーラムに回答がありました。
なるほど、全然設定方法が違うんですな。テキトウはいけませんね★

interface eth0

arping 192.168.1.1
arping 192.168.0.1
fallback 192.168.0.1

profile 192.168.1.1
static ip_address=192.168.1.123/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

profile 192.168.0.1
static ip_address=192.168.0.123/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

"arping"のIPアドレスでDHCPサーバが見つかると、"profile"名前がIPアドレスと同じものが実行されるみたい。そこで、静的アドレスが設定されていればそれが採用されるようだ。

"fallback"ってのはDHCPサーバが見つからなかった場合に採用するprofileの名前を指定するらしい。
今回は"192.168.0.1"を指定したが、fallbackの場合はprofileにつける名前はIPでなくてもいい。
fallbackを指定しないと「169.254.XXX.XXX」のリンクローカルアドレスが適当に割り振られちゃうので、探すのがちょー大変になるからね。

今回の設定を説明しておくと、

・ネットワークで192.168.1.1DHCPサーバが見つかれば、静的IPを「192.168.1.123」に設定する。
・ネットワークで192.168.0.1DHCPサーバが見つかれば、静的IPを「192.168.0.123」に設定する。
・ネットワークでDHCPサーバが見つからなければ、静的IPを「192.168.0.123」に設定する。

これらを上から順にチェックして、条件に合ったところで終わるということらしい。
よって、dhcpcdでは一つのNICに複数のIPを割り当てるのは無理らしいな★

ふんどしの持ち主

0 件のコメント:

コメントを投稿