
最新(2015.06)Gentoo Linux Minimal CDからかなり古いPC(HP d530)を起動しました。私がしたい次のステップは、このコンピュータでSSHサーバーを有効にすることです。
ifconfig
私のコンピュータのIPアドレスを確認するために走りました。インターフェイスenp5s2(「lo」のみを除く)の場合、IPアドレスは169.254.xxx.xxxです。
ルータからIPアドレスを取得するためにdhcpクライアントを起動しました。正常に終了し、pingが機能し始めましたが、まだ古いifconfig
IPアドレスは同じです。
私のルーターは192.168.0.xxxに割り当てられており、そのアドレスを介してPCにアクセスできますがifconfig
。
dmesg には例外はありません。
ifconfig
偽のIPアドレスが表示されるのはなぜですか?
答え1
さて、解決策を見つけました。
dhcpがipv6アドレスの割り当てに失敗したために生成されたipv4llアドレス。
正しい ipv4 アドレスは以下にあります。ip a
追加した後
noipv6
noipv4ll
dhcpcd.confでは、すべてが正常です。
答え2
ifconfig
これは長い間GNU inetutilsとNET-3ネットワークツールの既知の欠陥でした。ifconfig
インターフェイスに複数のIPバージョン4アドレスがある場合(DHCP割り当てアドレスとリンクローカルアドレスの両方がある場合)、2つのアドレスのifconfigs
うち1つだけ(この場合はリンクローカルアドレス)が表示されます。また、GNU inetutils はifconfig
インターフェイスの IP バージョン 6 アドレスをまったく表示しません。
これらのツールは10年以上この問題を解決できませんでした。人々は、NET-3ネットワーキングツール用の2009パッチを含むこれに対するパッチを作成しました。 4年後、ベルント・エッケンフェルスに到達しました。決して受け入れなかった人。
192.168.0.0/16の「ルーティング可能」アドレスに加えて、169.254.0.0/16に2番目のリンク - ローカルIPバージョン4アドレスがあることは、実際にはネットワークインターフェイス自体に問題ではありません。できるシステムがこのように構成されている場合(見たように)、副作用はほとんどありません。一人以下ネットワークインターフェイスはこれを行います。あなたを驚かせるだけでなく、あなたのシステムは持つそのアドレスにコンパニオンパスがあり、接続しようとすると、ローカルソケットがそのアドレスにバインドされます。その他実際にローカルアドレスをリンクしてください。ただ大きな問題これら2つのifconfig
ツール。
ご覧のとおり、ip
すべてのIPv4アドレスが表示されます。
私のものifconfig
。
追加読書
- エリック・アルダーシュテット・サンダー(2006-03-28)。ifconfig:無効なIPアドレスを報告する。 Debian のバグ #359676.
- エドゥアルド・フェロー(2009-04-16)。ifconfig:無効なIPアドレス/初期パッチレポート。 Debian のバグ #359676.
- https://unix.stackexchange.com/a/504084/5132