既に /64 アドレスがあり、デバイスに /128 ipv6 アドレスを明示的に追加する必要があるのはなぜですか。

既に /64 アドレスがあり、デバイスに /128 ipv6 アドレスを明示的に追加する必要があるのはなぜですか。

Fedoraサーバーには次の行が含まれています/etc/sysconfig/network-scripts/ifcfg-eth0:0

IPV6ADDR=<REDACTED>:48ea::1/64

これで、その特定のアドレスへのバインディングが機能します。

$ nc -l <REDACTED>:48ea::1 1025

ただし、同じネットマスクスペース内の他のアドレスへのバインディングは失敗します。

$ nc -l <REDACTED>:48ea::2 1025
Ncat: bind to <REDACTED>:48ea::2:1025: Cannot assign requested address. QUITTING.

明示的に追加すると<REDACTED>:48ea::2/128(に追加またはIPV6ADDR_SECONDARIES実行してip addr add <REDACTED>:48ea::2/128 dev eth0)バインドできます。

/64住所を追加するだけでは不十分な理由は何ですか?デバイスを使用する前に、デバイスに各/ 128アドレスを明示的に追加する必要がありますか?

ベストアンサー1

次の数字/はサブネットサイズで、IPv6では(ほぼ)常に/ 64です。ローカルコンピュータについては何も教えてくれません。 IPv4と同様に、各個々のアドレスをインターフェイスに割り当てる必要があります。

IPv4を使用すると192.168.0.1/24192.168.0.1/255.255.255.0。それらはまったく同じことを意味します。

IPv6を使用すると、書き込み<REDACTED>:48ea::1/ffff:ffff:ffff:ffff::(でも<REDACTED>:48ea::1/ffff:ffff:ffff:ffff:0000:0000:0000:0000)が少しトリッキーになりますので、<REDACTED>:48ea::1/64シンボルのみを使用してください。

おすすめ記事