Alpine Linux 時々 DNS を確認できない場合があります。

Alpine Linux 時々 DNS を確認できない場合があります。

時々、次のコマンドを実行するとき:

sudo apk update && sudo apk upgrade

Alpine Linuxはインターネットに接続してもパッケージを更新できません。しかし、そうすればsudo su "echo 'nameserver 8.8.8.8' > /etc/resolv.conf"ダウンロードできます。しかし、このソリューションは次のとおりです。

  • 私をイライラすることは、常にDNSを設定する必要があるということです。
  • 時には/etc/resolv.confそれ自体が覆われています。

どうすればもっと永久的な解決策を見つけることができますか?

答え1

長すぎます。

  1. ファイルを開く/etc/udhcpc/udhcpc.confテキストエディタを使用します。
    ファイルが見つからない場合は、そのファイル(およびそのファイルを含むフォルダ)を作成するだけです。

  2. 行を追加

    RESOLV_CONF=no
    

完璧。

ここで見つける:https://wiki.alpinelinux.org/wiki/Udhcpc


私の場合、許可された答えは満足できませんでした。

  • その結果、何をしているのかわからず、多くの内容が貼り付けられます。
  • 追加のソフトウェアインストールが必要です。
  • 作成されたコンテンツの前に指定されたDNSサーバーを追加します。/etc/resolv.confそれにもかかわらず、交換するよりも。

dhclientがエントリを前に追加するよりも置き換える方法についてのより多くのガイドラインがあると確信していますが、DHCPの交換をブロックするのと同じくらい簡単な作業はあまりにも多くの研究と面倒な作業です。/etc/resolv.conf別言します。

答え2

dhclientこのパッケージをインストールすると、この問題を解決できます。次を実行して、最後にGoogleのDNSサーバーを有効にします。

sudo su "echo 'nameserver 8.8.8.8' > /etc/resolv.conf"

次に、次のコマンドの組み合わせを実行します。

sudo apk update && sudo apk upgrade && sudo apk add dhclient

新しいパッケージをインポートしてインストールするには、以下をdhclient構成して入力します。/etc/dhcp/dhclient.conf

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;

prepend domain-name-servers 8.8.8.8, 8.8.4.4;

ネットワークを再起動します。

sudo rc-service networking restart

(オプション)次のコマンドを実行すると、動作していることを確認できます。

sudo reboot

どちらの場合も、Google で ping を実行して DNS が確認されたことを確認できます。

ping google.com

答え3

Udhcpcには、1行で誰でもアクセスできる/etc/udhcpc/udhcpc.confが必要です。 dns="ns1 ns2"

関連情報