- Macは何も考えずにraspberrypi.localで接続できる
- Linuxはなんかだめ
- Raspberry Piを以下のいずれかの方法で接続
- Raspberry PiをノートPCに直接有線LAN接続
- PiZeroをOTG接続(この記事はこの方法で確認している)
1:1の場合、MACアドレスはランダム生成されたものが使用される (Linuxカーネルが生成しているらしい) このため、IPv4のMACアドレス固定のDHCPアドレス配布はできない。 また、リンクローカルIPv6アドレスも起動するごとに変動する。
-
PiZeroに対してssh pi@hoge.localすると、fe80::6465:37ff:fe25:bd1b%en9と解決される
- pingはだめ。ping6ならいける。
- %en9(usb0相当)を自動補完してくれるのがミソっぽい
-
以下のようなSSHでも行ける
$ ssh pi@fe80::6465:37ff:fe25:bd1b%en9
-
以下のようなSSHははねられるので、インターフェイス名の指定はだいじ。
$ ssh pi@fe80::6465:37ff:fe25:bd1b ssh: connect to host fe80::6465:37ff:fe25:bd1b port 22: No route to host
-
IPv4はRFC 3927のに従ってアドレスが予約されている(169.254.x.xみたいなの)
-
avahi-autoipdを導入することで設定される
- NetworkManagerが阻害する?
- リトライするせいでは?
- なんかavahi-autoipdに関連するNMのソースコードはあるっぽいので考えにくい?
-
IPv6は最初からリンクローカルアドレスが確保されている(fe80::/64)
-
nss-mdnsにIPv6が入ってない?
-
PiZeroからmdnsのパケットは流れているので、tcpdumpからIPv6アドレスを特定してSSHすることは可能
$ ssh pi@fe80::6465:37ff:fe25:bd1b%usb0
- nss-mdnsがEPELに入ってるので、標準パッケージではまず不可能
- 入れたあとも名前解決はしてくれない
- usb0に対してなんかパケットが流れる雰囲気がない