DockerでDnsmasqインスタンスを実行するためにポート53でリッスンするDnsmasqを無効にする方法は?

DockerでDnsmasqインスタンスを実行するためにポート53でリッスンするDnsmasqを無効にする方法は?

私のDebian 10システムにドッカー化されたDnsmasqネットワーク全体のDNSサーバーソリューションを持ちたいです。

質問:

sudo lsof -i -P -n | grep LIST
dnsmasq  ... TCP 192.168.122.1:53 (LISTEN)

ローカル DNS サービスを受信する dnsmasq インスタンスが既に存在します。しかし、私はdockerインスタンスを使用したいと思います。 (dockerにはWebインターフェイスがあるので、dnsmasqでビルドを使用するように要求しないでください。)

docker-instance dnsmasq Web インターフェイスから次の情報を取得します。

⁣⁣dnsmasq: failed to create listening socket for port 53: Address in use

当然、dnsmasqを無効にする必要があります。私はこのスレッドを投げました:

https://mmoapi.com/post/how-to-disable-dnsmasq-port-53-listening-on-ubuntu-18-04

  • 環境"DNSStublistener=no"
  • 動作しますが、再起動後も同じ問題が発生します。

明らかに私が理解していない他のものがあります。この質問はこのトピックに関連しています。

Ubuntu 20.04でdnsmasqとの競合を避けるために、ポート53でsystemd-resolvedを正しく無効にする方法は?

  • 同じ問題ですが、実際にはストレスのないソリューションはないので、Network Managerソリューションの時代以降にこれに新しいスレッドを持つことが価値があると思いました。

それでは、新しい問題が発生せずにどのように無効にできますか?

編集:発見されたソリューション1つのインターフェイスでのみ受信するようにdnsmasqを制限する方法は?

説明する

  • 複数の DNS サーバーを使用するように構成に追加-bind interface(マンページの内容にもかかわらず)

しかし、

  • /etc/dnsmasq.conf問題があります。 BCにファイルがありませんか?

答え1

私は自分自身を助けました。

  1. プロセスを見つけ、次のコマンドを使用してconfファイルのターゲットを見つけました。クラシックシステム管理者:Linuxコマンドラインでプロセスを終了する方法指導時間:
    ps aux | grep dnsmasq
    
  2. ファイルを編集し(例  nano /var/lib/libvirt/dnsmasq/default.conf:)、バインディングをバインディングインターフェイスに動的に変更しました。
  1. 再起動して役に立つことを確認してください。

  2. default.confファイルが自動的に生成されるため、使用する必要はありません。

    virsh net-edit default
    

    デフォルト設定を編集します。 libvirt v5.6より前は、カスタムオプションの渡しが許可されていないため、別の問題が発生します。しかし、その後は特別なXMLフレーズを使用します。

       <dnsmasq:options>
         <dnsmasq:option value="foo=bar"/>
         <dnsmasq:option value="cname=*.foo.example.com,master.example.com"/>
       </dnsmasq:options>
    

    解決策は次のとおりです。libvrtを使用したカスタムdnsmasq(またはカスタムオプション)?;努力したが成功しなかった。

  3. 私は以下を使用してXMLファイルのネイティブネットワークのDNSを無効にしました。

    <dns> <dns enable="no"/> </dns>
    

    マニュアルページの指示に従ってください(tmp XMLで書いて、すべてが正常なときは新しい標準として扱うので安全です)。

  4. そのポートに対して DNS が無効になっており、2 番目の dnsmasq サーバーが稼働しています。

答え2

piholeを設定し、dnsmasqに参加するlibvirtに大きな障害があることを除いて、同じ問題があります。 NASNewbie2k18の答えに対する2つの付録:

  1. <dns> <dns enable="no"/> </dns>default.confファイルに追加すると、virsh net-edit default変更は保存後にファイルから削除されるため、役に立ちません。代わりに追加する必要があるため、<dns enable='no'/>追加のタグはありません<dns>。再起動後、バインディングが解除されます。
  2. 2番目のバインディングは10.0.3.1:53によって開き、完了しますlxc-net。ファイルからに変更しUSE_LXC_BRIDGEてを使用してlxc-netサービスを再起動した後、最後のバインディングが解除され、ついにピホールを起動できました。false/etc/default/lxc-netsystemctl restart

関連情報