VirtualBoxでUbuntuを実行しているVagrantセットアップがあります。ホストからアクセスできるパブリック仮想ネットワークインターフェイスを作成しようとしています。私はipv4でこれを行うのに問題はありませんでした。 ipv6を使用して、次のようにインターフェイスを設定します。
guest$ ip link add derpcraft link eth1 type macvlan mode bridge;
guest$ ip -6 addr add fdfe:dcba:9876:ffff::/64 dev derpcraft
guest$ ip link set derpcraft up
インターフェイスは次のようになります。
derpcraft Link encap:Ethernet HWaddr 26:22:d5:54:95:00
inet6 addr: fe80::2422:d5ff:fe54:9500/64 Scope:Link
inet6 addr: fdfe:dcba:9876:ffff::/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:264 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:52989 (52.9 KB) TX bytes:2040 (2.0 KB)
ホストマシンから、インターフェイスでこのどちらのアドレスにもpingを実行できないようです。
Host$ ping6 fe80::2422:d5ff:fe54:9500
ping6: UDP connect: No route to Host
host$ ping6 fe80::2422:d5ff:fe54:9500%::1
ping6: UDP connect: No route to Host
host$ ping6 fdfe:dcba:9876:ffff::
ping6: UDP connect: No route to Host
host$ ping6 fdfe:dcba:9876:ffff::%::1
ping6: UDP connect: No route to Host
Ipv6接続を受け入れるようにVagrantまたはVirtualBoxを構成する必要があると思います。
もう一つのポイント。私の現在のISPはまだipv6に対応していません。これはすべてローカルリクエストであるはずなので、それがそれと関係があるとは思わない。
更新:適切な方法として、インターフェイスに次のようなipv4アドレスを指定しました。
guest$ ip address add 192.168.33.11/24 broadcast 192.168.33.255 dev derpcraft
guest$ ifconfig
derpcraft Link encap:Ethernet HWaddr 26:22:d5:54:95:00
inet addr:192.168.33.11 Bcast:192.168.33.255 Mask:255.255.255.0
inet6 addr: fe80::2422:d5ff:fe54:9500/64 Scope:Link
inet6 addr: fdfe:dcba:9876:ffff::/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1736 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:418224 (418.2 KB) TX bytes:2040 (2.0 KB)
そして、ホストからpingを実行しても問題ありません。
Host$ ping 192.168.33.11
PING 192.168.33.11 (192.168.33.11): 56 data bytes
64 bytes from 192.168.33.11: icmp_seq=0 ttl=64 time=0.497 ms
64 bytes from 192.168.33.11: icmp_seq=1 ttl=64 time=0.426 ms
64 bytes from 192.168.33.11: icmp_seq=2 ttl=64 time=0.388 ms
^C
--- 192.168.33.11 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.388/0.437/0.497/0.045 ms
更新:ホストインターフェイスは次のようになります。
Host$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 04:0c:ce:e4:1f:be
inet6 fe80::60c:ceff:fee4:1fbe%en0 prefixlen 64 scopeid 0x4
inet 192.168.1.72 netmask 0xffffff00 broadcast 192.168.1.255
media: autoselect
status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
ether 06:0c:ce:e4:1f:be
media: autoselect
status: inactive
vboxnet0: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:00
vboxnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:01
inet 192.168.33.1 netmask 0xffffff00 broadcast 192.168.33.255
これは、VirtualBoxインターフェースのどちらにもinet6がないことを示しており、これはおそらく問題ですが、それを有効にする方法がわかりません。
浮浪者を使用しているようですpublic_network
オプションは、virtualboxインターフェースをホストインターフェースのピギーバッキングIPV6にブリッジします