
Windows 8 ホスト コンピューターの VirtualBox VM に Ubuntu 12.04 をインストールしています。Windows 8 には、Android スマートフォンで接続できるホストされた (ワイヤレス) ネットワークがあります。VM の eth0 インターフェイスは、ブリッジ アダプターを使用して Windows ネットワークに接続されています。
さらに、ドングルを使用して、ワイヤレス 6LoWPAN (802.15.4 を使用した IPv6 経由の低電力ワイヤレス パーソナル エリア ネットワーク) が VM の usb0 インターフェイスに接続されています。このネットワークには、複数の Zigduino ノードがあります。ここで、携帯電話からこれらのセンサー ノードに ping を送信する必要があります。
phone ---802.11--- eth0 Ubuntu usb0 ---802.15.4--- sensor node
問題は、これに何時間も費やしたのに、まだこれができないことです。eth0 に静的 IPv6 アドレスを割り当てaaaa::xxxx:xxxx:xxxx:xxxx
、radvd を使用してプレフィックス付きのこのインターフェイスからルーター広告を行っていますaaaa::/64
(そのため、電話もaaaa::xxxx:xxxx:xxxx:xxxx
アドレスを取得します)。ドングルとセンサー ノードの IP アドレスも のようなものですaaaa::xxxx:xxxx:xxxx:xxxx
。ping 中に、wireshark を使用してトラフィックを監視しました。eth0 は電話からルーター要請を受け取りますが、これらは usb0 に届かないことに気付きました。これらは usb0 インターフェイスに転送されないため、VM はこれらのメッセージをどう処理すればよいか分からず、ping は失敗します。
IPv6 転送などはすべてすでに有効になっており、インターネットで読んだ内容からするとこれで十分だと理解しています。何が間違っているのか、何かアイデアはありますか?
答え1
2 つのコメント: の代わりに ULA アドレスを使用する必要がありますaaaa:
が、これは問題には関係ありません。
ブリッジが機能しない理由は、6LoWPAN がイーサネットと互換性がないため、両者をブリッジできないためです。ブリッジはインターフェイス間でフレームをコピーするだけですが、6LoWPAN はイーサネットとは異なるレイヤー 2 (MAC) アドレスを持つ異なるフレーム形式を使用します。
解決策としては、/64
イーサネット ネットワークに 1 つのサブネットを使用し、/64
6LoWPAN ネットワークに別のサブネットを使用することです。その後、ボックスがネットワーク間でパケットを転送できるように、IPv6 転送を有効にする必要があります。ボックスが両方のネットワークのデフォルト ゲートウェイである場合は、それらのネットワーク間でパケットを転送します。そうでない場合は、他のゲートウェイ/ルーターがそれらのネットワークのパケットを送信する場所を認識できるように、ルーティングを設定する必要があります。
答え2
結局、VirtualBox の Wi-Fi ドライバーのバグであることが判明しました。これについては何もできません。現在は、イーサネット経由でコンピューターに接続された IPv6 ルーター/AP を使用しています。