IPv6 アドレスが設定されていません

IPv6 アドレスが設定されていません

Ubuntu 10.04 で IPv6 アドレスを設定する際に問題が発生しています。ネットワーク マネージャーを無効にしました。/etc/network/interface ファイルは次のようになります。

iface eth0 inet6 static
pre-up modeprobe ipv6
address fe80::1
netmask 10
gateway fe80::2

私はIPアドレスをfe80::1に設定しましたが、eth0を起動するとifconfigが表示されます

inet6 addr:  fe80::a00:27ff:fe1e:5edf/64 Scope:Link

なぜ異なる IP アドレスが表示されるのでしょうか?

走るとき

ping6 fe80::a00:27ff:fe1e:5edf/64

不明なホストだと表示されます。なぜですか?

答え1

コメントで言及されていたが、ifconfigインターフェースを起動します。この場合、問題はifconfiginterfacesファイルを使用しない(インターフェイスにパケットの受信を開始するよう指示するだけです)。この設定ファイルはDebian/Ubuntuに固有のもので、アップダウンツールifupifdown。したがって、次のものを使用する必要があります。

ifup eth0

それでも、設定ファイルの構文では「ifaceinterface新しい論理インターフェースを表すには、「 」ではなく「 」を使用します。(インターフェース(5)完全な構文の説明についてはマニュアルを参照してください。

(あなたのpre-up行は、1) 不要です: 自動的に行われます。2) 誤入力です: 「modprobe」です。)


アドレスfe80::a00:27ff:fe1e:5edfは設定によるものではなく、IPv6で必要なため表示されます。すべてのインターフェースにはリンクローカルアドレスは「インターフェース ID」(MAC アドレス) に基づいて作成されます。これらのアドレスは Linux カーネルによって自動的に追加されます。

(インターフェースには複数のアドレスを設定できることに注意してください。 と を同じインターフェースに設定してもfe80::1fe80::a00:27ff:fe1e:5edf問題なく動作します。)

また、fe80::/10住所はリンクローカルつまり、彼らは決してルーティングされないgateway構成設定は意味がありません。

つまり、リンクローカルアドレスにアクセスしようとするたびに、使用するインターフェースを手動で指定する必要があります。これは次のように行います。追加するゾーンインデックスアドレスに追加します。(Linuxでは、ゾーンインデックスはインターフェース名と同じです。)たとえば、eth0、以下を追加する必要があります%eth0:

ping6 fe80::a00:27ff:fe1e:5edf%eth0

(Oliver Salzburg の回答も正しいです。単一のホストを参照する場合は、サブネット マスクを指定しないでください。)

答え2

サブネットマスクを指定する必要はないと思いますping

ping6 fe80::a00:27ff:fe1e:5edf

大丈夫だと思います。

関連情報