BeagleBOneBlackのAngstromeでネットワーク設定を行います。
##アドレスの割り当て
/etc/network/interfaceを編集します
デフォルトでdhcpで割り当てられるようになってるのでコメントアウトし、staticで割り当てしていきます。
...
#iface eth0 inet dhcp
iface eth0 inet static
address <address>
netmask <address>
network <address>
gateway <address>
dns-nameserver <address>
...
記述後、eth0を構築します。記述した際、私はインデントを半角空白2つでやっていました。そのためifupでエラーが起こり構築できませんでしたが、空白4つにすると無事構築できました。
$ ifdown eth0
$ ifup eth0
ifconfigをつかい、正しくipアドレスが割り当てられpingが通ることを確認してください。
##自動化
このままだとbeagleboneをつけるたびにeth0を構築しなおさないといけないので自動化します。
/etc/resolv.confは起動するたびに書きかわるらしいので、起動するたびに指定したnameserverが記述されるようにしていきます。
まず、次のファイルを作成します。
nameserver <address>
今作成したファイルがresolv.confに書き込まれるように設定します。そのために起動するたびに実行されるファイルを作成します。
#!/bin/sh
sleep 5
cp /etc/resolv.conf.bak /etc/resolv.conf
sleep 5
ifup eth0
実行権限の付与
$ chmod +x /etc/init.d/setnetwork
$ update-rc.d /etc/init.d/setnetwork defaults 99
update-rc.dは起動時に実行するファイルを指定するツール。99は一番最後で実行。削除したい時はupdate-rc.d -f setnetwork removeと入力する。
参考サイトをみながらここまでやりましたが、うまくいきませんでした。どうしても起動時にうまくifupされない...なので、/etc/network/interfaceを次のようにしました。
...
auto eth0
iface eth0 inet static
...
##sshメモ
sshで接続しようとしたら以下のように接続を拒否られました。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
検索すると次のサイトに理由が書いてありました。
過去に同じアドレスで接続しているため、記憶している情報と違う?ゴミが溜まってるっぽい!
なので一旦情報を削除して接続しなおします。
$ ssh-keygen -R IPアドレス
その後、sshで接続することができました。
##サンコウサイト