Увидев Ubuntu Server 19.04 дважды на клиентах - возможно, проблема с Avahi mDNS

Просто установите Mac Mini под управлением Ubuntu Server 19.04 с Samba 4.10.0. В клиентах MacOS Mojave я вижу сервер дважды - один раз как "Mac Mini" (красивое имя хоста) с правильным значком Mac Mini и один раз как "mac-mini" (статическое имя хоста) со значком вопросительного знака.

Я явно настроил сервис в Avahi для первого. Кажется, что-то автоматически регистрирует второе.

Вот мой /etc/avahi/avahi-daemon.conf (думал, что disallow-other-stacks помешает systemd-Resolution делать свое дело):

[server]
deny-interfaces=softether
disallow-other-stacks=yes
ratelimit-interval-usec=1000000
ratelimit-burst=1000

/etc/avahi/services/timemachine.service

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
 <name replace-wildcards="no">Mac Mini</name>
 <service>
   <type>_smb._tcp</type>
   <port>445</port>
 </service>
 <service>
   <type>_device-info._tcp</type>
   <port>0</port>
   <txt-record>model=Macmini</txt-record>
 </service>
 <service>
   <type>_adisk._tcp</type>
   <txt-record>sys=waMa=0,adVF=0x100</txt-record>
   <txt-record>dk0=adVN=Backup,adVF=0x82</txt-record>
 </service>
 <service>
   <type>_afpovertcp._tcp</type>
   <port>548</port>
 </service>
 <service>
   <type>_ssh._tcp</type>
   <port>22</port>
 </service>
 <service>
   <type>_sftp-ssh._tcp</type>
   <port>22</port>
   <txt-record>path=/home/someone</txt-record>
   <txt-record>u=someone</txt-record>
 </service>
</service-group>

Соответствующие части /etc/samba/smb.conf (примечание: не указывать fruit:model, потому что на нем не отображается правильный значок, и я хочу, чтобы Avahi все равно его установил):

[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
server role = standalone server
fruit:time machine = yes
ea support = yes
disable netbios = yes
disable spoolss = yes
allow trusted domains = no
load printers = no
mdns name = mdns

Вот что видит avahi-browse для того, чего я не хочу:

# avahi-browse -a | grep mac-mini
+    lan IPv6 mac-mini                                      Apple TimeMachine    local
+    lan IPv4 mac-mini                                      Apple TimeMachine    local
+    lan IPv6 mac-mini                                      Microsoft Windows Network local
+    lan IPv4 mac-mini                                      Microsoft Windows Network local
+    lan IPv6 mac-mini                                      _device-info._tcp    local
+    lan IPv4 mac-mini                                      _device-info._tcp    local
+     lo IPv4 mac-mini                                      Microsoft Windows Network local
+     lo IPv4 mac-mini                                      _device-info._tcp    local
+     lo IPv4 mac-mini                                      Apple TimeMachine    local

Вот как выглядит тот, который я хочу:

# avahi-browse -a | grep "Mac Mini"
+    lan IPv6 Mac Mini                                      SSH Remote Terminal  local
+    lan IPv4 Mac Mini                                      SSH Remote Terminal  local
+     lo IPv4 Mac Mini                                      SSH Remote Terminal  local
+    lan IPv6 Mac Mini                                      Apple TimeMachine    local
+    lan IPv4 Mac Mini                                      Apple TimeMachine    local
+     lo IPv4 Mac Mini                                      Apple TimeMachine    local
+    lan IPv6 Mac Mini                                      _device-info._tcp    local
+    lan IPv4 Mac Mini                                      _device-info._tcp    local
+     lo IPv4 Mac Mini                                      _device-info._tcp    local
+    lan IPv6 Mac Mini                                      SFTP File Transfer   local
+    lan IPv4 Mac Mini                                      SFTP File Transfer   local
+     lo IPv4 Mac Mini                                      SFTP File Transfer   local
+    lan IPv6 Mac Mini                                      Apple File Sharing   local
+    lan IPv4 Mac Mini                                      Apple File Sharing   local
+     lo IPv4 Mac Mini                                      Apple File Sharing   local
+    lan IPv6 Mac Mini                                      Microsoft Windows Network local
+    lan IPv4 Mac Mini                                      Microsoft Windows Network local
+     lo IPv4 Mac Mini                                      Microsoft Windows Network local

Любые мысли о том, что динамически регистрирует сервисы для Mac-Mini и что я явно зарегистрировал, используя определение сервиса Avahi?

1 ответ

Решение

Начиная с Ubuntu 17.10, версия samba автоматически "регистрирует" присутствие своего сервера для остальной части сети, используя mDNS. Нет необходимости делать это в файле /etc/avahi/services/xxx.service.

Поскольку вы делаете это по частной причине, я бы предложил отключить эту функцию в Samba:

Отредактируйте /etc/samba/smb.conf и прямо под workgroup = WORKGROUPдобавьте строку:

multicast dns register = No

Вы можете попробовать просто перезапустить smbd ( sudo service smbd restart), но я думаю, что вам нужно перезагрузить систему.

Другие вопросы по тегам