MDNSResponder Bağımsız Değişkenini Değiştirmek için Discoveryd Alternatifi?


13

Bu, bu soruyu doğrudan takip eder . Yosemite'den önce , "-AlwaysAppendSearchDomains" bağımsız değişkenini mDNSResponder plist dosyasına eklerdim, böylece etikette aranacak etikete bakılmaksızın tüm yerel çözümleyici aramaları arama alanlarını ekler. Örneğin, ssh için foo.bar veya foo'yu barındırmaya çalışsam da, baz.com'un arama etki alanı varsayılan davranış olduğu gibi (ve sonuncusu) değil, yalnızca ikinci durum için denenmelidir.

Şimdi, mDNSResponder gitmiş gibi, Discoveryd ile değiştirilmiş gibi görünüyor. Her zaman arama alan adını eklemek için benzer bir seçenek bulamıyorum. Öneriler? Varsayılan olmayan bir yerel çözümleyici kullanma yoluna gitmek istemem, ancak bir seçenek olarak düşünürdüm. Şimdilik, sadece uzun FQDN'leri yazacağım, ama gerçekten istemem.

Teşekkürler Pete


Daha önce devre dışı bırakılmış mDNSResponder'ı etkinleştirmeyi denemiştim, ancak DP8'den beri tamamen yok gibi görünüyor :( Şu anda -AlwaysAppendSearchDomains seçeneği ve bunu daha fazla yayınlayacağım için Yosemite mühendislerine iletilen bir destek biletim var. birkaç gün içinde benimle iletişime geçtiklerinde burada bulgular
djh

@djh, Apple mühendisleriyle şansınız var mı?
Sigsegv

Bu bir parçası olarak sabitlenmiştir 10.10.1 güncelleme: Allows you to append search domains for partially qualified domain names when performing DNS lookups (consult the discoveryd man page for more information). Aşağıdaki @ Teknistin cevabına bakınız.
cOle2

Yanıtlar:


18

10.10.1 beri bunu düzeltmek için en basit yolu eklemektir --AlwaysAppendSearchDomainsiçin ProgramArgumentsplist dosyasında/System/Library/LaunchDaemons/com.apple.discoveryd.plist

Ardından aşağıdakilerle yeniden başlatın com.apple.discoveryd.plist:

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.discoveryd.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.discoveryd.plist

Bütün bunlar tarafından basılan yardıma göre:

/usr/libexec/discoveryd --help

Bu, anlatabildiğim kadarıyla mDNSResponder ile aynı şeyi yapacaktır.


Ne yazık ki El Capitan'da çalışmıyor.
Dmitry Verkhoturov

4

Terminalde sudo discoveryutil mdnsactivedirectory yes komutunu çalıştırın . Https://discussions.apple.com/message/26927843#26927843'e göre çözüm budur.

Bu, bir terminali şifresiz her başlattığınızda otomatik olarak çalışacak şekilde yapılabilir:

  • sudo visudo
    • dibe satır ekle %admin ALL=NOPASSWD: /usr/sbin/discoveryutil
    • Yönetici grubu çalışmazsa groups, terminalde çalışın ve uygun bir grup kullanın - belki 'personel' veya 'herkes'. Veya lider olmadan tek bir kullanıcı adı kullanın%
  • Visudo değişikliğini test etmek için
    • sudo -k
    • sudo suve bunu doğrulamak olan şifre sorulur. Sonra şifrenizi girmeden control-c
    • sudo discoveryutil mdnsactivedirectoryve bunu doğrulamak değildir şifre sorulur
  • ~ / .Bash_profile dosyasına bir satır ekleyin sudo discoveryutil mdnsactivedirectory yes
  • Kullanıcının Giriş Öğelerine Terminal ekle
    • on 10.10: Sistem Tercihleri-> Kullanıcılar ve Gruplar, Kullanıcı Seç
    • "Giriş Öğeleri" sekmesine gidin ve / Applications / Utilities / Terminal'i ekleyin

Bunu nasıl kalıcı hale getirirsiniz? Yeniden başlattıktan sonra bu komutu tekrar uygulamanız gerekir.
JoeriBe

Bu benim için işe yaramıyor, en azından .local olmayan ana makine adları. Arama yolumda ".baz.com" olmasına rağmen "ssh foo.bar" yerine "ssh foo.bar.baz.com" yazmam gerekiyor.
14'te Sigsegv

Bir kullanıcıya ~/.bash_profileburada sistem arka plan programı düzeyinde yapılması gereken bir yapılandırma değişikliği eklememelisiniz discoveryd.
dan

1

Maalesef çözüm yok, ancak en azından 'exploreyutil' kullanarak çözümleyici yapılandırmasını kontrol edebileceğinizi öğrendim:

mdbraber-mba:~ mdbraber$ sudo discoveryutil configresolver
Configuration Resolvers: Resolver domain [default], type Unicast, ifIndex 4, port 0, timeout 30, A yes, AAAA no, serviceID 0, scope None, order 0
    server 192.168.143.1
    search domain ourhouse
Configuration Resolvers: Resolver domain [default], type Unicast, ifIndex 4, port 0, timeout 30, A yes, AAAA no, serviceID 0, scope InterfaceID, order 0
    server 192.168.143.1

Görünüşe göre ilk çözümleyici, bir arama etki alanını listeliyor, ancak OS X <10.10 sürümlerinde olduğu gibi görünmüyor. Listede bir arama alanı bulunmayan ikinci bir çözümleyici olduğunu bilmiyorum.


1

İşte yerel bir isim sunucusu kullanarak saldırıya uğramış bir çözüm - benim için çalışıyor:

https://github.com/joedj/yosemite_dnsfix


1
Çözümü cevabın bir parçası olarak eklemek daha iyi olurdu, aksi takdirde bağlantı kaybolursa, cevap işe yaramaz hale gelir. Eklemek için kendi yayınınızı düzenleyebilirsiniz.
Tetsujin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.