私は2つの異なるLinuxデバイスを持っていますが、そのうちの1つはltibを使用してカーネルを実行しました(エルこれから)、もう1つはbuildrootの(第二これから)。
DNSリゾルバーを追加しました。第二 使用して:
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
それではping google.com
うまくいきます。
一方、関連してエルpingにもかかわらず、同じschtikは動作しません。8.8.8.8問題ありません。 pingを送信します。Google、google.comまたはwww.google.com常に失敗します。
私がやりたいことは、何とか2つのコアを比較して、その中に何があるのかを理解することです。第二部族エルDNS検証を有効にします。
どこで何を探すべきですか?
使ったこのガイド私の外観は次のようなので、/etc/nsswitch.conf
これを学びました。
cat /etc/nsswitch.conf
passwd: files rf
shadow: files
group: files
hosts: files dns
services: files
networks: files
protocols: files
rpc: files
ethers: files
netmasks: files
netgroup: files
automount: files
aliases: files
bootparams: [NOTFOUND=return] files
/etc/resolv.conf
その後、pingコマンドは以下を含む行を見つける必要がありますnameserver 8.8.8.8
。
cat /etc/resolv.conf
nameserver 8.8.8.8
だから私はなぜ私のpingが失敗するのか分かりません。
アイテムから削除するために編集しようとしましたが/etc/nsswitch.conf
(次のように見えるように)、役に立ちませんでした。files
hosts
hosts: dns
答え1
DNS検証を実行するのはLinuxカーネルではなくCライブラリです。あなたのLTIBシステムはどのCライブラリを使用しますか?デフォルトでは、Buildrootはnssswitch.conf
設定ファイルのないuClibcを使用します。