1

mDNS を使用してサービスをアナウンスし、インフラストラクチャ、ルーター、または DHCP を使用せずにアプライアンスに接続するようにアプライアンスをセットアップしようとしています。ラズベリーパイとOSXの間で完璧に動作します。raspberry pi(ホスト名「ubuntu.local」でubuntuを実行)とIntelのubuntu 14.02の間ではそうではありません。これは、ubuntuのルートをクリアした後、インテルのubuntuのコマンドラインから、最も焦点を絞ったテストの概要です。

jeff@jeff-OptiPlex-SX280:~$ ip -6 route list 
jeff@jeff-OptiPlex-SX280:~$ sudo traceroute -i eth0 ubuntu.local
traceroute to ubuntu.local (fe80::ba27:ebff:fe1a:74e5), 30 hops max, 80 byte packets
connect: Network is unreachable

そう -- ルートはありませんよね?1 つ追加して、もう一度試してみましょう。

jeff@jeff-OptiPlex-SX280:~$ sudo ip -6 route add fe80::/10 dev eth0
jeff@jeff-OptiPlex-SX280:~$ sudo traceroute -i eth0 ubuntu.local
traceroute to ubuntu.local (fe80::ba27:ebff:fe1a:74e5), 30 hops max, 80 byte packets
 1  ubuntu.local (fe80::ba27:ebff:fe1a:74e5%eth0)  0.925 ms  0.988 ms  1.058 ms

今、私はルートを持っており、intel 上の ubuntu が ubuntu.local の ipv6 アドレスを認識しており、それと通信できることを実証しました。eth0 インターフェイスの使用を強制したことに注意してください。追加したルートはすべての fe80* トラフィックを eth0 に送信する必要があるため、インターフェイスを指定せずに試してみましょう。

jeff@jeff-OptiPlex-SX280:~$ sudo traceroute ubuntu.local
traceroute to ubuntu.local (fe80::ba27:ebff:fe1a:74e5), 30 hops max, 80 byte packets
connect: Invalid argument

jeff@jeff-OptiPlex-SX280:~$ ssh -6 ubuntu.local
ssh: connect to host ubuntu.local port 22: Invalid argument

インターフェイスを指定しないと、「無効な引数」が表示されます。ssh、wget などを使用したさまざまなテストはすべて「無効な引数」を返します。raspberry pi (ubuntu.local) の ipv6 アドレスに %eth0 を追加して、もう一度インターフェイスを強制すると、接続できます。

jeff@jeff-OptiPlex-SX280:~$ ssh -6 ubuntu@fe80::ba27:ebff:fe1a:74e5%eth0
Password: 
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.18.0-14-rpi2 armv7l) 

 * Documentation:  https://help.ubuntu.com/
Last login: Fri Mar 20 20:56:52 2015 from fe80::20f:1fff:fee2:2c36%eth0
ubuntu@ubuntu:~$ exit
logout
Connection to fe80::ba27:ebff:fe1a:74e5%eth0 closed.

構文的に、インターフェイスを mDNS 名に追加できないようです。ssh は文句を言います。「無効な引数」は eth0 以外のデバイスを試した結果のようですが、確認できません。IPv6 ルーティングの要点を見逃しているだけですか? このユースケースにはゲートウェイがないため、私が目にする多くのアドバイスは当てはまりません。ラズベリーパイをゲートウェイにしてみましたが、結果は変わりませんでした。

アドバイスありがとうございます!

-ジェフ

4

0 に答える 0