IPv6 スタックでいくつかのシナリオをテストしたいと思います。そのため、ネットワーク アダプター設定 (Windows 10) で各ネットワーク アダプターの IPv4 スタックを無効にしました。
さて、実行するとping 127.0.0.1
、ICMP から応答が返ってきます。私の質問は、なぜこのようなことが起こるのか、どうすればこれを回避できるのかということです。
上院: これには 1 つの理由があるかもしれません。実行するとnetsh interface ip show addresses
特別なインターフェイスが表示されます...。Loopback Pseudo-Interface 1
これが理由だと思います。今は、これがデフォルトで IPV6 にのみインストールされ、削除できるかどうか疑問に思っています。
答え1
あなたがやったことはIPv4を無効にすることですバインディング表示できるインターフェースで。システムで IPv4 を実際に無効にしていないため、これを行うのは (しばらくの間) 良い考えではなく、サポートされていない可能性があります。
お気づきのとおり、ループバック インターフェイスがあり、そこに 127.0.0.1 と ::1 が割り当てられています。本当に必要な場合は、IPv4 プロトコルをアンインストールしてみてください。ただし、システムが壊れる可能性があることを覚悟してください。
::ffff:127.0.0.1 について言及している人もいますが、確かにこの IPv6 アドレスで IPv4 を表すことはできますが、これは IPv6 での IPv4 の表現にすぎず、ここで使用される実際のプロトコル (ポリシーが正しい場合) は依然として IPv4 です。
localhost に関しては、これは IP の名前表現であり、あまり関係ありません。どれが使用されるかは、ルーティング ポリシーによって異なります。