SlideShare a Scribd company logo
1 of 24
ロボットシステム学
第8回
上田隆一
Raspberry Pi, 他UNIXシステムと通信
• デスクトップ用途でない場合、普通は別の
PCの端末エミュレータからログインして使用
• 理由
– 複数人で使う(第5回の資料参照)
– 自分のキーボードで、自分の座席で
– Raspberry Piを組み込んだロボットからHDMI等の線を
出したくない
• ssh接続する・よく接続に失敗する
– よく分からないとストレス
Oct. 7, 2015 ロボットシステム学 2
ロボットと通信
• 自律分散系には必須ですね
– そうですよね?
• 使いますよね
– リモート監視・操作等
– 環境に埋め込んだセンサやアクチュエータの操作
• 必須
Oct. 7, 2015 ロボットシステム学 3
本日の内容
• ネットワーク
– 設定方法を一通りおさえる
– 理屈はどこかでやっているはずなので、
作業手順を重視
– イーサネット・TCP/IP
• IPアドレス・ポート
• ソケット通信については前期やったそうなので割愛
– ssh
Oct. 7, 2015 ロボットシステム学 4
IPアドレスの設定
• 有線(Raspberry Piの場合)
– 最初からDHCPに設定されている
– 通常はこのままDHCPで使う
• 別の環境に行くと使えなくなる
– IPアドレスはルータのウェブページ等で確認可能
– DHCPでもルータ等で固定できる
Oct. 7, 2015 ロボットシステム学 5
固定IPの設定
• /etc/network/interfacesに設定を書く
– 上図: デフォルトの設定
(loとeh0のDHCP設定)
– 下図: 固定にする例
• dhcpの設定は#で
コメントアウトを
• 設定後はreboot
するのが素直
• したくない時は
Oct. 7, 2015 ロボットシステム学 6
pi@raspberrypi ~ $ cat /etc/network/interfaces
auto lo
iface lo inet loopback
iface eth0 inet dhcp
pi@raspberrypi ~ $ cat /etc/network/interfaces
auto lo
iface lo inet loopback
#iface eth0 inet dhcp
auto eth0
iface eth0 inet static
address 192.168.1.200
netmask 255.255.255.0
gateway 192.168.1.1$ sudo service networking restart
無線LAN(WiFi)の設定
• 手順
– USBのWiFiアンテナを差す
– lsusb(1)でドライバが動いているか確認
Oct. 7, 2015 ロボットシステム学 7
pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM
Wireless LAN Adapter [Ralink RT8070]
– 接続したいアクセスポイントのSSID(ESSID)とパスフレーズを
wpa_passphrase(1)に指定して設定ファイル
(wpa_supplicant.conf)を作る
– /etc/network/interfacesに必要事項を書く
• ホットプラグ
• wpa_supplicant.confの場所
– 再起動(あるいはsudo ifup wlan0, sudo service networking restart)
Oct. 7, 2015 ロボットシステム学 8
$ sudo -s
# wpa_passphrase SSID パスフレーズ > /etc/wpa_supplicant/wpa_supplicant.conf
pi@raspberrypi ~ $ sudo cat /etc/network/interfaces
(略 lo, eth0の設定)
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
ポート
• ポート= port、港
• 計算機が外とつながっている「玄関」
– 玄関と言っても65536*2個ある
– TCP(Transmission Control Protocol)0 番~65,535 番
– UDP(User Datagram Protocol)0 番~65,535 番
• インターネット上のサービスを利用するときは
IPアドレスとプロトコル、ポート番号を指定している
– IP アドレス: 住所
– ポート: 玄関
• 玄関の後ろにサービスがいる
Oct. 7, 2015 ロボットシステム学 9
/etc/services
• よく使われるポート番号を表にしたもの
– 大抵のLinuxには入っている
– 端末からless(1)等で読んでみましょう
• (1)というのはマニュアルの章番号です
• 以下でマニュアルが読める
– $ man 1 less
– $ man less
• 英語が苦手な人はネットでman lessを検索すると
日本語のマニュアルが出てきます
(Raspberry Piだとmanの日本語化はややこしいので割愛)
Oct. 7, 2015 ロボットシステム学 10
ネットワークの調査
• ip(1)
– ネットワークカードが使っているIPアドレス等の調査
– ifconfig(1)はもう使ってはいけないそうです
Oct. 7, 2015 ロボットシステム学 11
pi@raspberrypi ~ $ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether b8:27:eb:f9:c2:17 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.32/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
• route(1)
– ルーティングテーブルの調査と設定
– 例: ルーティングテーブルの表示
– 例: デフォルトゲートウェイの設定
Oct. 7, 2015 ロボットシステム学 12
pi@raspberrypi ~ $ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default CG-WGR1200 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
pi@raspberrypi ~ $ sudo route remove default gateway 192.168.1.100
• netstat(1)
– 使っているポート等の調査
– 通信待ちをしているポートの確認
(123を/etc/servicesで調べてみましょう)
Oct. 7, 2015 ロボットシステム学 13
pi@raspberrypi ~ $ netstat -t
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 152 192.168.1.32:ssh 192.168.1.24:52264 ESTABLISHED
pi@raspberrypi ~ $ netstat -antu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 168 192.168.1.32:22 192.168.1.24:52360 ESTABLISHED
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp 0 0 192.168.1.32:123 0.0.0.0:*
udp 0 0 127.0.0.1:123 0.0.0.0:*
udp 0 0 0.0.0.0:123 0.0.0.0:*
udp 0 0 0.0.0.0:45542 0.0.0.0:*
• telnet(1)
– いろんなIP、いろんなポートと人力で対話
– 例: test.usptomo.comのWebサーバと対話
– ソケット通信のデバッグ等に使う
Oct. 7, 2015 ロボットシステム学 14
pi@raspberrypi ~ $ telnet test.usptomo.com 80
Trying 133.242.187.106...
Connected to test.usptomo.com.
Escape character is '^]'.
GET / HTTP1.1 <- 入力
Host: test.usptomo.com <- 入力
だーっとHTMLが表示される
• nmap(1)
– ポートスキャナ
– 例: 自機で開いているポートを探す
– 注意: 人のサーバに仕掛けると最悪犯罪になります
Oct. 7, 2015 ロボットシステム学 15
pi@raspberrypi ~ $ sudo nmap -sT -P0 -p 1-65535 127.0.0.1
Starting Nmap 6.00 ( http://nmap.org ) at 2015-11-12 04:29 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0013s latency).
Not shown: 65534 closed ports
PORT STATE SERVICE
22/tcp open ssh
Nmap done: 1 IP address (1 host up) scanned in 7.83 seconds
• ncat(1), nc(1)
– ネットワーク越しのcatコマンド(+a)
– 例
1. ラズパイのeth0(192.168.1.32)の1000番ポートで
データを待つ
2. 別のマシンからラズパイの1000番ポートに字を送る
3. ラズパイの端末に送った字が表示される
Oct. 7, 2015 ロボットシステム学 16
pi@raspberrypi ~ $ sudo ncat -l 192.168.1.32 1000
$ echo aaaa | nc 192.168.1.32 1000
pi@raspberrypi ~ $ sudo ncat -l 192.168.1.32 1000
aaaa
• /dev/tcp
– bashの機能
– ファイルに字を書くと字が送信される
– 例
• 某Webサーバに字を投げる
• サーバのログに投げた字が記録される
Oct. 7, 2015 ロボットシステム学 17
pi@raspberrypi ~ $ echo aaaaa > /dev/tcp/test.usptomo.com/80
ueda@remote:~$ tail -n 1 /var/log/bashcms/access.log
106.168.148.172 - - [12/Nov/2015:13:53:39 +0900] "aaaaa" 200
5066 "-" "-"
名前解決
• IPアドレスとホスト名はどう変換されているか?
– DNSサーバ
• ネットワーク上にあり、IPアドレスとホストを管理している
(さすがに本講義では扱わない)
– /etc/hosts
• 静的にIPアドレスとホストを対応付けたい時はここに書く
Oct. 7, 2015 ロボットシステム学 18
pi@raspberrypi ~ $ cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.1.1 raspberrypi
• /etc/resolv.conf
– 使いたいDNSサーバを列挙しておく
Oct. 7, 2015 ロボットシステム学 19
pi@raspberrypi ~ $ cat /etc/resolv.conf
nameserver 192.168.1.1
セキュアシェル(SSH)
• セキュアシェル(SSH): 遠隔の計算機と
暗号通信をするためのプロトコル
– コマンドのssh(1) はセキュアシェルを使って
遠隔の計算機と通信するためのもの
Oct. 7, 2015 ロボットシステム学 20
サーバへのssh 接続の大まかな流れ
(パスワードを使う場合)
1. パスワードを送る前にサーバからクライアントへ
公開鍵というものが送られる
2. クライアントは以下をサーバに送信
– もらった公開鍵で通信用の共通鍵を暗号化したもの
– パスワードを共通鍵で暗号化したもの
3. サーバは自身の秘密鍵でもらった共通鍵と
パスワードを復元
4. 共通鍵で通信開始
Oct. 7, 2015 ロボットシステム学 21
鍵って何?
共通鍵暗号方式
• 基本的にはパスワードの延長線上にあるもの
• データを鍵で暗号化し、同じ鍵で復号
• 送信者と受信者が同じ鍵を持つ
• 通信の時の問題
– 問題: どうやって鍵を交換するか?
Oct. 7, 2015 ロボットシステム学 22
公開鍵暗号方式
• 二つの鍵を使う
– 「公開鍵」と「秘密鍵」
• 公開鍵
– 暗号化に用いる。人に見せても良い
• 秘密鍵
– 複号に用いる。人に見せてはいけない
• 誰でもデータを暗号化できるが、復号できるのは
秘密鍵の所有者のみ
Oct. 7, 2015 ロボットシステム学 23
SSHの鍵認証
• パスワードの代わりに公開鍵を使う
• 方法
1. クライアント側
(自分のノートPC等)
で秘密鍵と公開鍵を作る
1. 自分の公開鍵をサーバ側
(Raspberry Pi等)
のauthorized_keysに登録
Oct. 7, 2015 ロボットシステム学 24
$ mkdir .ssh
$ chmod 700 .ssh/
$ cd .ssh/
$ ssh-keygen
###いろいろ聞かれるが基本returnで
(一度はちゃんと読みましょう)###
### サーバのIPアドレスにscp###
$ scp ~/.ssh/id_rsa.pub pi@192.168.1.3:~/
$ ssh pi@192.168.1.3
$ cat id_rsa.pub >> .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys

More Related Content

What's hot

ロボットシステム学2015第3回
ロボットシステム学2015第3回ロボットシステム学2015第3回
ロボットシステム学2015第3回Ryuichi Ueda
 
ロボットシステム学2015第4回
ロボットシステム学2015第4回ロボットシステム学2015第4回
ロボットシステム学2015第4回Ryuichi Ueda
 
ロボットシステム学2015年第14回
ロボットシステム学2015年第14回ロボットシステム学2015年第14回
ロボットシステム学2015年第14回Ryuichi Ueda
 
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくばHirotaka Kawata
 
RTミドルウェア応用実習
RTミドルウェア応用実習RTミドルウェア応用実習
RTミドルウェア応用実習openrtm
 
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFutoshi Tanuma
 
190605 03
190605 03190605 03
190605 03openrtm
 
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1Hirotaka Kawata
 
78tch
78tch78tch
78tch78tch
 
Kernel vm13lt
Kernel vm13ltKernel vm13lt
Kernel vm13ltslankdev
 
高度に最適化された移植可能なメモリマネージャ
高度に最適化された移植可能なメモリマネージャ高度に最適化された移植可能なメモリマネージャ
高度に最適化された移植可能なメモリマネージャDADA246
 
Chainer Contribution Guide
Chainer Contribution GuideChainer Contribution Guide
Chainer Contribution GuideKenta Oono
 
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘いKenichiro MATOHARA
 
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会Hirotaka Kawata
 
Lispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとかLispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとかたけおか しょうぞう
 
人工知能学会RTM講習会 第3部:プログラミング実習
人工知能学会RTM講習会 第3部:プログラミング実習 人工知能学会RTM講習会 第3部:プログラミング実習
人工知能学会RTM講習会 第3部:プログラミング実習 openrtm
 
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門Hirotaka Kawata
 

What's hot (20)

ロボットシステム学2015第3回
ロボットシステム学2015第3回ロボットシステム学2015第3回
ロボットシステム学2015第3回
 
ロボットシステム学2015第4回
ロボットシステム学2015第4回ロボットシステム学2015第4回
ロボットシステム学2015第4回
 
ロボットシステム学2015年第14回
ロボットシステム学2015年第14回ロボットシステム学2015年第14回
ロボットシステム学2015年第14回
 
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
 
RTミドルウェア応用実習
RTミドルウェア応用実習RTミドルウェア応用実習
RTミドルウェア応用実習
 
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
 
mruby for embedded systems
mruby for embedded systemsmruby for embedded systems
mruby for embedded systems
 
190605 03
190605 03190605 03
190605 03
 
xv6 + mist32 + mruby
xv6 + mist32 + mrubyxv6 + mist32 + mruby
xv6 + mist32 + mruby
 
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1
バイナリより低レイヤな話 (プロセッサの心を読み解く) - カーネル/VM探検隊@北陸1
 
78tch
78tch78tch
78tch
 
Kernel vm13lt
Kernel vm13ltKernel vm13lt
Kernel vm13lt
 
高度に最適化された移植可能なメモリマネージャ
高度に最適化された移植可能なメモリマネージャ高度に最適化された移植可能なメモリマネージャ
高度に最適化された移植可能なメモリマネージャ
 
Chainer Contribution Guide
Chainer Contribution GuideChainer Contribution Guide
Chainer Contribution Guide
 
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
 
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
 
Lispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとかLispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとか
 
人工知能学会RTM講習会 第3部:プログラミング実習
人工知能学会RTM講習会 第3部:プログラミング実習 人工知能学会RTM講習会 第3部:プログラミング実習
人工知能学会RTM講習会 第3部:プログラミング実習
 
私とMS-DOS
私とMS-DOS私とMS-DOS
私とMS-DOS
 
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
 

Viewers also liked

確率ロボティクス第七回
確率ロボティクス第七回確率ロボティクス第七回
確率ロボティクス第七回Ryuichi Ueda
 
Particle Filter on Episode
Particle Filter on EpisodeParticle Filter on Episode
Particle Filter on EpisodeRyuichi Ueda
 
確率ロボティクス第八回
確率ロボティクス第八回確率ロボティクス第八回
確率ロボティクス第八回Ryuichi Ueda
 
確率ロボティクス第六回
確率ロボティクス第六回確率ロボティクス第六回
確率ロボティクス第六回Ryuichi Ueda
 
確率ロボティクス第三回
確率ロボティクス第三回確率ロボティクス第三回
確率ロボティクス第三回Ryuichi Ueda
 
第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロRyuichi Ueda
 
確率ロボティクス第二回
確率ロボティクス第二回確率ロボティクス第二回
確率ロボティクス第二回Ryuichi Ueda
 
確率ロボティクス第九回
確率ロボティクス第九回確率ロボティクス第九回
確率ロボティクス第九回Ryuichi Ueda
 
オープンソースとロボット
オープンソースとロボットオープンソースとロボット
オープンソースとロボットRyuichi Ueda
 
電子工作で光で動くロボットをつくろう!
電子工作で光で動くロボットをつくろう!電子工作で光で動くロボットをつくろう!
電子工作で光で動くロボットをつくろう!Ryuichi Ueda
 
2012年10月27日 Hbstudy#38
2012年10月27日 Hbstudy#382012年10月27日 Hbstudy#38
2012年10月27日 Hbstudy#38Ryuichi Ueda
 
Uspstudy20121208qonly
Uspstudy20121208qonlyUspstudy20121208qonly
Uspstudy20121208qonlyRyuichi Ueda
 

Viewers also liked (12)

確率ロボティクス第七回
確率ロボティクス第七回確率ロボティクス第七回
確率ロボティクス第七回
 
Particle Filter on Episode
Particle Filter on EpisodeParticle Filter on Episode
Particle Filter on Episode
 
確率ロボティクス第八回
確率ロボティクス第八回確率ロボティクス第八回
確率ロボティクス第八回
 
確率ロボティクス第六回
確率ロボティクス第六回確率ロボティクス第六回
確率ロボティクス第六回
 
確率ロボティクス第三回
確率ロボティクス第三回確率ロボティクス第三回
確率ロボティクス第三回
 
第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ
 
確率ロボティクス第二回
確率ロボティクス第二回確率ロボティクス第二回
確率ロボティクス第二回
 
確率ロボティクス第九回
確率ロボティクス第九回確率ロボティクス第九回
確率ロボティクス第九回
 
オープンソースとロボット
オープンソースとロボットオープンソースとロボット
オープンソースとロボット
 
電子工作で光で動くロボットをつくろう!
電子工作で光で動くロボットをつくろう!電子工作で光で動くロボットをつくろう!
電子工作で光で動くロボットをつくろう!
 
2012年10月27日 Hbstudy#38
2012年10月27日 Hbstudy#382012年10月27日 Hbstudy#38
2012年10月27日 Hbstudy#38
 
Uspstudy20121208qonly
Uspstudy20121208qonlyUspstudy20121208qonly
Uspstudy20121208qonly
 

Similar to ロボットシステム学2015年第8回

20apr2012 kernelvm7-main
20apr2012 kernelvm7-main20apr2012 kernelvm7-main
20apr2012 kernelvm7-mainShotaro Uchida
 
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料Yasutaka Hamada
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作るKenichiro MATOHARA
 
2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料Yasutaka Hamada
 
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたいKenichiro MATOHARA
 
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料Masaya Fujita
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境yut148atgmaildotcom
 
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...Kenichiro MATOHARA
 
Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6Kazuo Asano (@kazuo_asa)
 
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)Yuuki Nara
 
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26Takashi Yamanoue
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews, Inc.
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりYuya Rin
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Tomoya Hibi
 
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計Yuuki Takano
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るTsubasa Nomura
 

Similar to ロボットシステム学2015年第8回 (20)

20apr2012 kernelvm7-main
20apr2012 kernelvm7-main20apr2012 kernelvm7-main
20apr2012 kernelvm7-main
 
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
 
2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料2012/03/31 Apacheスタートスクリプト読書会発表資料
2012/03/31 Apacheスタートスクリプト読書会発表資料
 
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
 
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
 
20060520.tcp
20060520.tcp20060520.tcp
20060520.tcp
 
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
 
Ras piでrt linux
Ras piでrt linuxRas piでrt linux
Ras piでrt linux
 
20210510 software design
20210510 software design20210510 software design
20210510 software design
 
Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6
 
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)
Redmine本家コピー+投票サイト作成(Python-Redmine利用事例)
 
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
 
osoljp 2011.08
osoljp 2011.08osoljp 2011.08
osoljp 2011.08
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)
 
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計
SF-TAP: 柔軟で規模追従可能なトラフィック解析基盤の設計
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作る
 

More from Ryuichi Ueda

第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライドRyuichi Ueda
 
シェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックシェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックRyuichi Ueda
 
日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナーRyuichi Ueda
 
シェル芸勉強会と会場の話
シェル芸勉強会と会場の話シェル芸勉強会と会場の話
シェル芸勉強会と会場の話Ryuichi Ueda
 
移動ロボットのナビゲーション
移動ロボットのナビゲーション移動ロボットのナビゲーション
移動ロボットのナビゲーションRyuichi Ueda
 
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆Ryuichi Ueda
 
第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライドRyuichi Ueda
 
bash(の変な使い方)update
bash(の変な使い方)updatebash(の変な使い方)update
bash(の変な使い方)updateRyuichi Ueda
 
第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニングRyuichi Ueda
 
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Ryuichi Ueda
 
20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トークRyuichi Ueda
 
第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロRyuichi Ueda
 
シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習Ryuichi Ueda
 
ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018Ryuichi Ueda
 
poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018Ryuichi Ueda
 
Robot frontier lesson3 2018
Robot frontier lesson3 2018Robot frontier lesson3 2018
Robot frontier lesson3 2018Ryuichi Ueda
 
Robot frontier lesson2 2018
Robot frontier lesson2 2018Robot frontier lesson2 2018
Robot frontier lesson2 2018Ryuichi Ueda
 
Robot frontier lesson1 2018
Robot frontier lesson1 2018Robot frontier lesson1 2018
Robot frontier lesson1 2018Ryuichi Ueda
 
第34回シェル芸勉強会
第34回シェル芸勉強会第34回シェル芸勉強会
第34回シェル芸勉強会Ryuichi Ueda
 
第32回信号処理シンポジウム「Raspberry PiとROSを 使ったロボットシステム」
第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」
第32回信号処理シンポジウム「Raspberry PiとROSを 使ったロボットシステム」Ryuichi Ueda
 

More from Ryuichi Ueda (20)

第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド
 
シェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックシェル・ワンライナー160本ノック
シェル・ワンライナー160本ノック
 
日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー
 
シェル芸勉強会と会場の話
シェル芸勉強会と会場の話シェル芸勉強会と会場の話
シェル芸勉強会と会場の話
 
移動ロボットのナビゲーション
移動ロボットのナビゲーション移動ロボットのナビゲーション
移動ロボットのナビゲーション
 
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
 
第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド
 
bash(の変な使い方)update
bash(の変な使い方)updatebash(の変な使い方)update
bash(の変な使い方)update
 
第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング
 
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
 
20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク
 
第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ
 
シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習
 
ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018
 
poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018
 
Robot frontier lesson3 2018
Robot frontier lesson3 2018Robot frontier lesson3 2018
Robot frontier lesson3 2018
 
Robot frontier lesson2 2018
Robot frontier lesson2 2018Robot frontier lesson2 2018
Robot frontier lesson2 2018
 
Robot frontier lesson1 2018
Robot frontier lesson1 2018Robot frontier lesson1 2018
Robot frontier lesson1 2018
 
第34回シェル芸勉強会
第34回シェル芸勉強会第34回シェル芸勉強会
第34回シェル芸勉強会
 
第32回信号処理シンポジウム「Raspberry PiとROSを 使ったロボットシステム」
第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」第32回信号処理シンポジウム「Raspberry PiとROSを使ったロボットシステム」
第32回信号処理シンポジウム「Raspberry PiとROSを 使ったロボットシステム」
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 

Recently uploaded (9)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 

ロボットシステム学2015年第8回

  • 2. Raspberry Pi, 他UNIXシステムと通信 • デスクトップ用途でない場合、普通は別の PCの端末エミュレータからログインして使用 • 理由 – 複数人で使う(第5回の資料参照) – 自分のキーボードで、自分の座席で – Raspberry Piを組み込んだロボットからHDMI等の線を 出したくない • ssh接続する・よく接続に失敗する – よく分からないとストレス Oct. 7, 2015 ロボットシステム学 2
  • 3. ロボットと通信 • 自律分散系には必須ですね – そうですよね? • 使いますよね – リモート監視・操作等 – 環境に埋め込んだセンサやアクチュエータの操作 • 必須 Oct. 7, 2015 ロボットシステム学 3
  • 4. 本日の内容 • ネットワーク – 設定方法を一通りおさえる – 理屈はどこかでやっているはずなので、 作業手順を重視 – イーサネット・TCP/IP • IPアドレス・ポート • ソケット通信については前期やったそうなので割愛 – ssh Oct. 7, 2015 ロボットシステム学 4
  • 5. IPアドレスの設定 • 有線(Raspberry Piの場合) – 最初からDHCPに設定されている – 通常はこのままDHCPで使う • 別の環境に行くと使えなくなる – IPアドレスはルータのウェブページ等で確認可能 – DHCPでもルータ等で固定できる Oct. 7, 2015 ロボットシステム学 5
  • 6. 固定IPの設定 • /etc/network/interfacesに設定を書く – 上図: デフォルトの設定 (loとeh0のDHCP設定) – 下図: 固定にする例 • dhcpの設定は#で コメントアウトを • 設定後はreboot するのが素直 • したくない時は Oct. 7, 2015 ロボットシステム学 6 pi@raspberrypi ~ $ cat /etc/network/interfaces auto lo iface lo inet loopback iface eth0 inet dhcp pi@raspberrypi ~ $ cat /etc/network/interfaces auto lo iface lo inet loopback #iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.1.200 netmask 255.255.255.0 gateway 192.168.1.1$ sudo service networking restart
  • 7. 無線LAN(WiFi)の設定 • 手順 – USBのWiFiアンテナを差す – lsusb(1)でドライバが動いているか確認 Oct. 7, 2015 ロボットシステム学 7 pi@raspberrypi ~ $ lsusb Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM Wireless LAN Adapter [Ralink RT8070]
  • 8. – 接続したいアクセスポイントのSSID(ESSID)とパスフレーズを wpa_passphrase(1)に指定して設定ファイル (wpa_supplicant.conf)を作る – /etc/network/interfacesに必要事項を書く • ホットプラグ • wpa_supplicant.confの場所 – 再起動(あるいはsudo ifup wlan0, sudo service networking restart) Oct. 7, 2015 ロボットシステム学 8 $ sudo -s # wpa_passphrase SSID パスフレーズ > /etc/wpa_supplicant/wpa_supplicant.conf pi@raspberrypi ~ $ sudo cat /etc/network/interfaces (略 lo, eth0の設定) auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
  • 9. ポート • ポート= port、港 • 計算機が外とつながっている「玄関」 – 玄関と言っても65536*2個ある – TCP(Transmission Control Protocol)0 番~65,535 番 – UDP(User Datagram Protocol)0 番~65,535 番 • インターネット上のサービスを利用するときは IPアドレスとプロトコル、ポート番号を指定している – IP アドレス: 住所 – ポート: 玄関 • 玄関の後ろにサービスがいる Oct. 7, 2015 ロボットシステム学 9
  • 10. /etc/services • よく使われるポート番号を表にしたもの – 大抵のLinuxには入っている – 端末からless(1)等で読んでみましょう • (1)というのはマニュアルの章番号です • 以下でマニュアルが読める – $ man 1 less – $ man less • 英語が苦手な人はネットでman lessを検索すると 日本語のマニュアルが出てきます (Raspberry Piだとmanの日本語化はややこしいので割愛) Oct. 7, 2015 ロボットシステム学 10
  • 11. ネットワークの調査 • ip(1) – ネットワークカードが使っているIPアドレス等の調査 – ifconfig(1)はもう使ってはいけないそうです Oct. 7, 2015 ロボットシステム学 11 pi@raspberrypi ~ $ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether b8:27:eb:f9:c2:17 brd ff:ff:ff:ff:ff:ff inet 192.168.1.32/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever
  • 12. • route(1) – ルーティングテーブルの調査と設定 – 例: ルーティングテーブルの表示 – 例: デフォルトゲートウェイの設定 Oct. 7, 2015 ロボットシステム学 12 pi@raspberrypi ~ $ route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default CG-WGR1200 0.0.0.0 UG 0 0 0 eth0 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 pi@raspberrypi ~ $ sudo route remove default gateway 192.168.1.100
  • 13. • netstat(1) – 使っているポート等の調査 – 通信待ちをしているポートの確認 (123を/etc/servicesで調べてみましょう) Oct. 7, 2015 ロボットシステム学 13 pi@raspberrypi ~ $ netstat -t Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 152 192.168.1.32:ssh 192.168.1.24:52264 ESTABLISHED pi@raspberrypi ~ $ netstat -antu Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 168 192.168.1.32:22 192.168.1.24:52360 ESTABLISHED udp 0 0 0.0.0.0:68 0.0.0.0:* udp 0 0 192.168.1.32:123 0.0.0.0:* udp 0 0 127.0.0.1:123 0.0.0.0:* udp 0 0 0.0.0.0:123 0.0.0.0:* udp 0 0 0.0.0.0:45542 0.0.0.0:*
  • 14. • telnet(1) – いろんなIP、いろんなポートと人力で対話 – 例: test.usptomo.comのWebサーバと対話 – ソケット通信のデバッグ等に使う Oct. 7, 2015 ロボットシステム学 14 pi@raspberrypi ~ $ telnet test.usptomo.com 80 Trying 133.242.187.106... Connected to test.usptomo.com. Escape character is '^]'. GET / HTTP1.1 <- 入力 Host: test.usptomo.com <- 入力 だーっとHTMLが表示される
  • 15. • nmap(1) – ポートスキャナ – 例: 自機で開いているポートを探す – 注意: 人のサーバに仕掛けると最悪犯罪になります Oct. 7, 2015 ロボットシステム学 15 pi@raspberrypi ~ $ sudo nmap -sT -P0 -p 1-65535 127.0.0.1 Starting Nmap 6.00 ( http://nmap.org ) at 2015-11-12 04:29 UTC Nmap scan report for localhost (127.0.0.1) Host is up (0.0013s latency). Not shown: 65534 closed ports PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 7.83 seconds
  • 16. • ncat(1), nc(1) – ネットワーク越しのcatコマンド(+a) – 例 1. ラズパイのeth0(192.168.1.32)の1000番ポートで データを待つ 2. 別のマシンからラズパイの1000番ポートに字を送る 3. ラズパイの端末に送った字が表示される Oct. 7, 2015 ロボットシステム学 16 pi@raspberrypi ~ $ sudo ncat -l 192.168.1.32 1000 $ echo aaaa | nc 192.168.1.32 1000 pi@raspberrypi ~ $ sudo ncat -l 192.168.1.32 1000 aaaa
  • 17. • /dev/tcp – bashの機能 – ファイルに字を書くと字が送信される – 例 • 某Webサーバに字を投げる • サーバのログに投げた字が記録される Oct. 7, 2015 ロボットシステム学 17 pi@raspberrypi ~ $ echo aaaaa > /dev/tcp/test.usptomo.com/80 ueda@remote:~$ tail -n 1 /var/log/bashcms/access.log 106.168.148.172 - - [12/Nov/2015:13:53:39 +0900] "aaaaa" 200 5066 "-" "-"
  • 18. 名前解決 • IPアドレスとホスト名はどう変換されているか? – DNSサーバ • ネットワーク上にあり、IPアドレスとホストを管理している (さすがに本講義では扱わない) – /etc/hosts • 静的にIPアドレスとホストを対応付けたい時はここに書く Oct. 7, 2015 ロボットシステム学 18 pi@raspberrypi ~ $ cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 127.0.1.1 raspberrypi
  • 19. • /etc/resolv.conf – 使いたいDNSサーバを列挙しておく Oct. 7, 2015 ロボットシステム学 19 pi@raspberrypi ~ $ cat /etc/resolv.conf nameserver 192.168.1.1
  • 20. セキュアシェル(SSH) • セキュアシェル(SSH): 遠隔の計算機と 暗号通信をするためのプロトコル – コマンドのssh(1) はセキュアシェルを使って 遠隔の計算機と通信するためのもの Oct. 7, 2015 ロボットシステム学 20
  • 21. サーバへのssh 接続の大まかな流れ (パスワードを使う場合) 1. パスワードを送る前にサーバからクライアントへ 公開鍵というものが送られる 2. クライアントは以下をサーバに送信 – もらった公開鍵で通信用の共通鍵を暗号化したもの – パスワードを共通鍵で暗号化したもの 3. サーバは自身の秘密鍵でもらった共通鍵と パスワードを復元 4. 共通鍵で通信開始 Oct. 7, 2015 ロボットシステム学 21 鍵って何?
  • 22. 共通鍵暗号方式 • 基本的にはパスワードの延長線上にあるもの • データを鍵で暗号化し、同じ鍵で復号 • 送信者と受信者が同じ鍵を持つ • 通信の時の問題 – 問題: どうやって鍵を交換するか? Oct. 7, 2015 ロボットシステム学 22
  • 23. 公開鍵暗号方式 • 二つの鍵を使う – 「公開鍵」と「秘密鍵」 • 公開鍵 – 暗号化に用いる。人に見せても良い • 秘密鍵 – 複号に用いる。人に見せてはいけない • 誰でもデータを暗号化できるが、復号できるのは 秘密鍵の所有者のみ Oct. 7, 2015 ロボットシステム学 23
  • 24. SSHの鍵認証 • パスワードの代わりに公開鍵を使う • 方法 1. クライアント側 (自分のノートPC等) で秘密鍵と公開鍵を作る 1. 自分の公開鍵をサーバ側 (Raspberry Pi等) のauthorized_keysに登録 Oct. 7, 2015 ロボットシステム学 24 $ mkdir .ssh $ chmod 700 .ssh/ $ cd .ssh/ $ ssh-keygen ###いろいろ聞かれるが基本returnで (一度はちゃんと読みましょう)### ### サーバのIPアドレスにscp### $ scp ~/.ssh/id_rsa.pub pi@192.168.1.3:~/ $ ssh pi@192.168.1.3 $ cat id_rsa.pub >> .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys