Ubuntu 22.04にアップグレードした後、ifupdownとsystemd-resolvedを使用するとDNSが破損する

Ubuntu 22.04にアップグレードした後、ifupdownとsystemd-resolvedを使用するとDNSが破損する

長い話を短く

sudo cp -p /etc/network/if-up.d/resolved /etc/network/if-up.d/.resolved.broken-orig

#Edit /etc/network/if-up.d/resolved and take out the extraneous quotes on lines 48 and 52
#The fix looks like:
diff /etc/network/if-up.d/.resolved.broken-orig /etc/network/if-up.d/resolved
48c48
< "$DNS"="$NEW_DNS"
---
> $DNS="$NEW_DNS"
52c52
< "$DOMAINS"="$NEW_DOMAINS"
---
> $DOMAINS="$NEW_DOMAINS"

少なくともこれは効果があるようです。


最近、古いシステムをUbuntu 22.04.1 LTSにアップグレードしましたが、do-release-upgradeDNSの問題が発生しました。エラーメッセージは次のとおりです。

nslookup google.com
Server:     127.0.0.53
Address:    127.0.0.53#53

** server can't find google.com: SERVFAIL

そして

/etc/network/if-down.d/resolved: 12: mystatedir: not found
/etc/network/if-up.d/resolved: 71: DNS: not found
/etc/network/if-up.d/resolved: 1: /run/network/ifupdown-inet-em1: DNS=8.8.8.8: not found
/etc/network/if-up.d/resolved: 2: /run/network/ifupdown-inet-em1: DOMAINS=local_search_domain.com: not found
Failed to parse DNS server address: DNS
Failed to set DNS configuration: Invalid argument

nslookupシステムのアップグレードが/etc/network/interfacesで定義されているネットワーク接続(em1)を介して実行を試みる前です。

しばらく自分で慰めを受けた後、私は発見した。https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1981103そしてhttps://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1910273これは私の静けさを改善するのに役立ちます。発生したエラーは、/etc/network/if-up.d/resolved の 1 対以上のミスが原因で発生しているようです。これは、不要な引用符を手動で削除した後、テキストエディタを使用して簡単に変更できます。ネットワークを起動できます。インターフェイスし、DNS サーバーに問い合わせます。ifupdown現在、Ubuntu 22.04.1 LTS(0.8.36 + nmu1ubuntu3)に同梱されているパッケージ、または上記の手動編集に他の問題があるかどうかはわかりません。 /etc/network/if-up.d/resolvedの48行と52行の編集を含まない文書化された修正はありますか?それとも、これは現在Ubuntu 22.04.1 LTSにアップグレードされた古いシステムで使用できる最善の策ですか?解決策?

ベストアンサー1

Ubuntuサーバーを実行して18.04->22.04この問題に直面しました。明確に指摘したように(ありがとう!)/etc/network/if-up.d/resolved引用された変数2つを次のように更新して削除します。

sudo vim /etc/network/if-up.d/.resolved.broken-orig

Old: "$DNS"="$NEW_DNS"
-->
New: $DNS="$NEW_DNS"

Old: "$DOMAINS"="$NEW_DOMAINS"
-->
New: $DOMAINS="$NEW_DOMAINS"

再起動すると、この問題は解決されます。

おすすめ記事