Armadilloフォーラム

Armadillo 210 固定IPアドレスの設定方法

lockandfire

2014年12月1日 12時56分

初めまして、Ritecsのウ ミンと申します。Armadillo 210を使いてプログラミングを作成しています。
基本の問題ですか、シリアルターミナルからArmadillo210をログインして、固定IPアドレスを設定する方法を教えてください。

現状は:

1. DHCPサーバーがあり、eth0もIPアドレスを自動てきに取る場合には問題なし。
2. DHCPサーバーがないの場合、
2.1 以下のリンクを参考して,/etc/config/interfacesを作成する
http://manual.atmark-techno.com/armadillo-210/armadillo-210_software_ma…

auto lo eth0
iface lo inet loopback

iface eth0 inet static
address 10.10.13.100
netmask 255.255.255.0
network 10.10.13.0
broadcast 10.10.13.255
gateway 0.0.0.0

2.2 ifdown eth0 / ifup eth0を実行
2.3 ifconfigとみると、ipアドレスが設定されていません

eth0 Link encap:Ethernet HWaddr 00:11:0C:03:17:08
inet6 addr: fe80::211:cff:fe03:1708/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:39

2.4 /etc/config/interfaces を /etc/network/interfaces へコーピ,またifdown eth0 / ifup eth0を実行
2.5 ifconfigがipアドレスが設定されているを確認

eth0 Link encap:Ethernet HWaddr 00:11:0C:03:17:08
inet addr:10.10.13.100 Bcast:10.10.13.255 Mask:255.255.255.0
inet6 addr: fe80::211:cff:fe03:1708/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:39

2.6 ですか、まだエラーが出ています
dhcpcd[763]: timed out waiting for a valid DHCP server response
dhcpcd[779]: dhcpENETDOWN: Network cable disconnected ?

2.7 flatfsd -sで/etc/config/interfacesを保存して再起動
2.8 状態は2.1まで帰ります。/etc/network/interfacesは

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

auto lo eth0
iface lo inet loopback
iface eth0 inet dhcp

に戻りました。

問題:
1. ソフトウェアマニュアルは/etc/config/interfacesを設定すればいいと言いています。だが実際には/etc/network/interfacesを設定しないとできない。
2. /etc/network/interfacesを固定IPアドレスを設定、ネットワークを再起動、IPアドレスが正しく設定できますが、dhcpcdプロセスが停止しません。killしてもすぐに再起動
3. /etc/network/interfacesの設定は毎回再起動後でオリジナルバーションへ戻りました。

コメント

at_takashi.sasayama

2014年12月2日 8時52分

笹山です。

固定IPに設定されない現象ですが、
再現させることができませんでした。

試験環境
bootloader : v1.1.25 (Ethernet対応)
kernel : v1.08
userland : v1.12(Base)

> 2.1 以下のリンクを参考して,/etc/config/interfacesを作成する

/etc/config/interfaces を作成するとありますが、
これは /etc/config/interfaces が存在しないので、毎回新規に作成しているという意味でしょうか?

Armadillo起動時に、このファイルが存在しないのであれば、
コンフィグ領域の初期化を試してみてください。
※コンフィグ領域の初期化を行うと、/etc/config 配下のファイルはデフォルト値になります。
必要なファイルをバックアップした上で、初期化を実行してください。

Armadillo-210 スタートアップガイド
第9章 コンフィグ領域 − 設定ファイルの保存領域
http://manual.atmark-techno.com/armadillo-210/armadillo-210_startup_gui…

> 問題:
> 1. ソフトウェアマニュアルは/etc/config/interfacesを設定すればいいと言いています。だが実際には/etc/network/interfacesを設定しないとできない。

/etc/network/interfaces は /etc/config/interfaces へのシンボリックリンクです。
その為、 /etc/config/interfaces を /etc/network/interfaces にコピーする作業は不要です。

> 2. /etc/network/interfacesを固定IPアドレスを設定、ネットワークを再起動、IPアドレスが正しく設定できますが、dhcpcdプロセスが停止しません。killしてもすぐに再起動

一旦、 /etc/config/interfaces による固定IPアドレスの設定が、正しく行えてから、
同様の現象が再現するか、確認をしてみてください。

> 3. /etc/network/interfacesの設定は毎回再起動後でオリジナルバーションへ戻りました。

これは /etc/config/interfaces を編集後に、 flatfsd -s コマンドを実行して、
コンフィグ領域の変更を フラッシュメモリへ保存していないのが原因です。
/etc/config 配下のファイルを編集後、flatfsd -s を実行せずに、
再起動するとファイルは編集前に戻ります。

笹山様

ご回答ありがとうございました。

確認をいきましたか、手元のarmadillo210で、/etc/network/interfacesはシーンボリンクじゃなく、実際のファイルです。多分これは原因です。

/etc/network:

[root@(none) (ttyAM1) /etc/network]# ls -l interfaces 
-rw-r--r--    1 root     root          129 Feb 22  2012 interfaces

内容は

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
 
auto lo eth0
iface lo inet loopback
iface eth0 inet dhcp

/etc/config/interfacesは正しくフラッシュメモリに保存されています

[root@(none) (ttyAM1) /etc/config]# cat interfaces 
auto lo eth0
iface lo inet loopback
 
iface eth0 inet static
address 10.10.13.100
netmask 255.255.255.0
network 10.10.13.0
broadcast 10.10.13.255
gateway 0.0.0.0

起動中の画面でatmark-dist v1.29.1 (AtmarkTechno/Armadillo-210.Recover)というメッセージが出でいる。Recoverが原因ですか?

> 笹山です。
>
> 固定IPに設定されない現象ですが、
> 再現させることができませんでした。
>
> 試験環境
> bootloader : v1.1.25 (Ethernet対応)
> kernel : v1.08
> userland : v1.12(Base)
>
>
> > 2.1 以下のリンクを参考して,/etc/config/interfacesを作成する
>
> /etc/config/interfaces を作成するとありますが、
> これは /etc/config/interfaces が存在しないので、毎回新規に作成しているという意味でしょうか?
>
> Armadillo起動時に、このファイルが存在しないのであれば、
> コンフィグ領域の初期化を試してみてください。
> ※コンフィグ領域の初期化を行うと、/etc/config 配下のファイルはデフォルト値になります。
> 必要なファイルをバックアップした上で、初期化を実行してください。
>
> Armadillo-210 スタートアップガイド
> 第9章 コンフィグ領域 − 設定ファイルの保存領域
> http://manual.atmark-techno.com/armadillo-210/armadillo-210_startup_gui…
>
>
>
> > 問題:
> > 1. ソフトウェアマニュアルは/etc/config/interfacesを設定すればいいと言いています。だが実際には/etc/network/interfacesを設定しないとできない。
>
> /etc/network/interfaces は /etc/config/interfaces へのシンボリックリンクです。
> その為、 /etc/config/interfaces を /etc/network/interfaces にコピーする作業は不要です。
>
>
> > 2. /etc/network/interfacesを固定IPアドレスを設定、ネットワークを再起動、IPアドレスが正しく設定できますが、dhcpcdプロセスが停止しません。killしてもすぐに再起動
>
> 一旦、 /etc/config/interfaces による固定IPアドレスの設定が、正しく行えてから、
> 同様の現象が再現するか、確認をしてみてください。
>
>
> > 3. /etc/network/interfacesの設定は毎回再起動後でオリジナルバーションへ戻りました。
>
> これは /etc/config/interfaces を編集後に、 flatfsd -s コマンドを実行して、
> コンフィグ領域の変更を フラッシュメモリへ保存していないのが原因です。
> /etc/config 配下のファイルを編集後、flatfsd -s を実行せずに、
> 再起動するとファイルは編集前に戻ります。
>

中村です。

横から失礼します。
たぶん笹山さんからも回答があると思いますが・・・

Armadillo-210.Recoverの問題のようです。

今ちょうど手元に展開されているソースで調べてみました。
atmark-dist-20131122です。

$ cd vendors/AtmarkTechno
$ find . -name interfaces
./Armadillo-240.Base/etc/default/interfaces
./Armadillo-300/etc/default/interfaces
./Armadillo-840/etc/default/interfaces
./Armadillo-500-FX.base/etc/default/interfaces
./Armadillo-420.WLAN-AWL12/etc/default/interfaces
./Armadillo-810/etc/default/interfaces
./Armadillo-500-FX.dev/etc/default/interfaces
./Armadillo-230.Recover/etc/default/interfaces
./Armadillo-500/etc/default/interfaces
./Armadillo-9.PCMCIA/etc/default/interfaces
./Armadillo-240.Recover/etc/default/interfaces
./Armadillo-210.Base/etc/default/interfaces
./Armadillo-9/etc/default/interfaces
./Armadillo-220.Recover/etc/default/interfaces
./Armadillo-420/etc/default/interfaces
./Armadillo-210.Recover/etc/network/interfaces
./Armadillo-460/etc/default/interfaces
./Armadillo-420.WLAN-AWL13/etc/default/interfaces
./Armadillo-220.Base/etc/default/interfaces
./Armadillo-230.Base/etc/default/interfaces
./Armadillo-440/etc/default/interfaces
$ find . -name interfaces | grep network
./Armadillo-210.Recover/etc/network/interfaces

なぜかArmadillo-210.Recoverだけ、
etc/network/interfacesが存在してます。

$ cat Armadillo-210.Recover/etc/network/interfaces
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
 
auto lo eth0
iface lo inet loopback
iface eth0 inet dhcp

--
なかむら

中村様、笹山様、

お世話になっております。ウです。ご返答をいただき、誠に有難うございました。

Armadillo-210.Baseをフラッシュに書き換えたら、network/interfacesはシーンボリンクになり、問題は解決されました。 

> 中村です。
>
> 横から失礼します。
> たぶん笹山さんからも回答があると思いますが・・・
>
> Armadillo-210.Recoverの問題のようです。
>
> 今ちょうど手元に展開されているソースで調べてみました。
> atmark-dist-20131122です。
>
>

> $ cd vendors/AtmarkTechno
> $ find . -name interfaces
> ./Armadillo-240.Base/etc/default/interfaces
> ./Armadillo-300/etc/default/interfaces
> ./Armadillo-840/etc/default/interfaces
> ./Armadillo-500-FX.base/etc/default/interfaces
> ./Armadillo-420.WLAN-AWL12/etc/default/interfaces
> ./Armadillo-810/etc/default/interfaces
> ./Armadillo-500-FX.dev/etc/default/interfaces
> ./Armadillo-230.Recover/etc/default/interfaces
> ./Armadillo-500/etc/default/interfaces
> ./Armadillo-9.PCMCIA/etc/default/interfaces
> ./Armadillo-240.Recover/etc/default/interfaces
> ./Armadillo-210.Base/etc/default/interfaces
> ./Armadillo-9/etc/default/interfaces
> ./Armadillo-220.Recover/etc/default/interfaces
> ./Armadillo-420/etc/default/interfaces
> ./Armadillo-210.Recover/etc/network/interfaces
> ./Armadillo-460/etc/default/interfaces
> ./Armadillo-420.WLAN-AWL13/etc/default/interfaces
> ./Armadillo-220.Base/etc/default/interfaces
> ./Armadillo-230.Base/etc/default/interfaces
> ./Armadillo-440/etc/default/interfaces
> 

>
>

> $ find . -name interfaces | grep network
> ./Armadillo-210.Recover/etc/network/interfaces
> 

>
> なぜかArmadillo-210.Recoverだけ、
> etc/network/interfacesが存在してます。
>
>

> $ cat Armadillo-210.Recover/etc/network/interfaces
> # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
> 
> auto lo eth0
> iface lo inet loopback
> iface eth0 inet dhcp
> 

>
> --
> なかむら
>
>