#Pepper
#ipアドレス
PepperDay 13

PepperでローカルIPを固定した話


導入

Pepperのアプリ開発スペース、アトリエ秋葉原では30~40体のPepperが存在している。普段は個体ごとにラベル付(atelierXX, P4b0Xなど)を行い識別しているが、個体ごとにその数値でもってIPを固定できると便利じゃね???

という意見から試行錯誤してなんとか固定できたので参考までに。



手法

DHCPサーバから固定したいクライアント端末のMACアドレスを用いてIP振り分けの予約を行う



YAMAHA RTXシリーズ

家庭向けのルータではあまり見かけないYAMAHAだが、業務用のルータとしてはとても有名らしい。YAMAHAのルータを組み合わせると、小規模~大規模なネットワークの構築が可能になる。terminalからルータにアクセスして様々な詳細設定を行うことが出来る。アトリエ秋葉原ではこのシリーズのルータを採用している。



通信方式


  • telnetについて

    ネットワーク内のクライアントとサーバのやり取りをするアプリケーション層プロトコル。

    基本的にはTCPポート23番を使用する。通信内容を暗号化せずに平文のまま送信するため、セキュリティ面での問題が存在する。


  • SSHについて

    telnetの問題点を改善したプロトコル。パスワード情報などすべてのデータが暗号化されて送信される。

    SSHにはversion1とversion2の認証方式があるが現在はverison2の方が推奨されている。




DHCPサーバ

DHCP(Dynamic Host Configration Protocol)は、LAN内などのネットワークでクライアント端末に対して未使用のIPアドレスを振り分ける機能

1つのネットワーク内でDHCPサーバが複数ある場合は不具合のもとになるので、基本的にはサーバは一台で管理する



コマンド


  • 今回使用したコマンドを紹介する

コマンド
説明

dhcp service server
DHCPサーバとして機能させる

dhcp scope 1 192.168.100.XXX - 192.168.100.XXX/24
DHCPサーバとして割り当てるIPアドレスのスコープを設定

dhcp scope bind 1 192.168.100.XXX mac_address
DHCP予約アドレスの設定

dhcp scope lease type 1 bind-priority
DHCPサーバのIPの振り分けの予約を優先


http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/dhcp/dhcp_server_concept.html




確認


  • 予約を行ったPepperのIPを確認

    146.png

    146view.png


余談


ハマったこと

IPの固定にはPepperの機体のmacアドレスじゃなくて、wifiの方のmacアドレスで予約設定を行わないとIP予約が効かない。そしてルータ側でmacアドレスの識別子も確認してあげて、その情報も盛り込んで予約を行うことで初めて固定が実現できる。ネットワークに詳しい方からしたら当たり前と怒られそうwww


一般的なローカルIPの固定の手法


  • 一般的なlinux端末からは/etc/network/interfacesから設定を書き加えて行う

  • PepperはGentooベースのGNU/linuxディストリビューションであるから管理者に昇格して上記のファイルを編集したいがNAOqi2.5からSSHを使用してのnao以外のユーザー、つまりrooユーザーへの昇格が基本的に認めれていない。(NAOだと可能)
    以下の記事ではこの手法を用いての固定を行っているが、おそらくPeperのNAOqiのversionが違うのではないかと思われる。

    http://rohifu.hatenablog.com/entry/2017/07/25/115451