web-dev-qa-db-ja.com

ローカルネットワークでmdnsマルチキャストDNS用のsystemd-resolvedを構成する方法

Ubuntu 18

私はたくさんの研究をして、この絵をまとめるところですが、よく理解できません。

Mdnsのsystemd-resolvedを構成するにはどうすればよいですか?

特に私の目標:

  • 10.0.0.0/16ネットワークでサーバーを起動する
  • 新しいサーバーにfoo1のような任意の名前を付けるため
  • foo1という名前を使用して、同じネットワーク上の別のマシンからそのサーバーに接続できるようにする

誰でも、systemd-resolvedを使用してこれを具体的に行う方法を教えていただけますか?

ありがとう

これまでのところ、次のようにresolved.confを構成しました

ubuntu@ip-10-0-0-229:/etc$ --> CHROME -> cat /etc/systemd/resolved.conf
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See resolved.conf(5) for details

[Resolve]
#DNS=
#FallbackDNS=
#Domains=
LLMNR=yes
MulticastDNS=yes
#DNSSEC=no
#Cache=yes
#DNSStubListener=yes
ubuntu@ip-10-0-0-229:/etc$ --> CHROME ->
5
Duke Dougal

MDNS(avahi)を扱う私の方法はこれです

• Sudo apt install ifupdown
• Sudo apt install avahi-utils

テキストからのアイデア

• cat /etc/network/interfaces 
• # ifupdown has been replaced by netplan(5) on this system.  See
• # /etc/netplan for current configuration.
• # To re-enable ifupdown on this system, you can run:
• # Sudo apt install ifupdown
1
user75786

インターフェイスでmDNSを有効にするには、10.0のインターフェイスのMulticastDNS=ファイルの[Network]セクションで .networkオプションを設定 する必要があります。 0.0/16ネットワーク。

このオプションのデフォルトは無効であり、インターフェースごとに有効にする必要があります。

systemd-resolve --statusコマンド(Ubuntu 18.04に同梱されているsystemd v237で利用可能。新しいsystemdがこのコマンドをresolvectlに置き換えました)を使用して、各ネットワークインターフェイスで有効になっているオプションを含む解決済みのステータスをクエリすることもできます。 10.0.0.0/16ネットワークのLinkインターフェースにMulticastDNS setting: noが表示される場合、それはまだ有効になっていないことを意味します。

1
filbranden

これは遅い回答ですが、このトピックに関する情報がほとんどないため、それでも誰かを助けることができると思います。私もこの問題に時間を浪費しました。

/etc/systemd/resolved.confの変更は、作業のほんの一部です。変更後も、このパズルを解決する必要があります。

per-linkおよびグローバル設定がオンの場合にのみ、リンクでマルチキャストDNSが有効になります。

そして、あなたがトリックを知っているなら...それは簡単です。

Sudo systemd-resolve --set-mdns=yes --interface=wlan0

wlan0は、mDNSが要求されるインターフェイスです。その後、mDNSがアクティブ化されていることがわかります。

$ Sudo systemd-resolve --status wlan0            
Link 3 (wlan0)
      Current Scopes: none
 DefaultRoute setting: no
        LLMNR setting: yes
 MulticastDNS setting: yes #<--- BINGO! 
   DNSOverTLS setting: no
       DNSSEC setting: allow-downgrade
       DNSSEC supported: yes

Systemd-resolvedを再起動します。

$ Sudo systemclt restart systems-resolved 

そしてmDNSが機能しています!

(前)

~ ❯ ping homebridge.local                                    
ping: cannot resolve homebridge.local: Unknown Host

(後)

~ ❯ ping homebridge.local                                    
PING homebridge.local (192.168.1.9): 56 data bytes
64 bytes from 192.168.1.9: icmp_seq=0 ttl=64 time=21.721 ms
64 bytes from 192.168.1.9: icmp_seq=1 ttl=64 time=22.429 ms
0
ozw1z5rd

に加えて MulticastDNS=yes .networkファイルで、同じ設定またをresolve.confで設定する必要があります。 resolved.conf doc から:

リンクごとおよびグローバル設定がオンの場合にのみ、リンクでマルチキャストDNSが有効になります。

0
thom_nic