Yanıtlar:
dns-sd
Komut satırı aracı bunun için yararlı olabilir, ancak kullanmayı öğrenmek biraz zor olabilir.
Çalıştırılması dns-sd -B _services._dns-sd._udp
, şu anda reklamı yapılan mevcut tüm hizmet türlerinin bir listesini döndürür. (Liste arabirim başınadır, bu nedenle biraz fazlalık olacaktır.) Bu, etkin bir ağ bağlantısı olmayan bir Mac'te yapılırsa, liste elbette yalnızca bu makinede çalışan hizmetleri içerecektir.
Bu listeyi kullanarak dns-sd -B _home-sharing._tcp
(iTunes Home Sharing örneklerini listeleyen) gibi şeyleri çalıştırarak tek tek hizmet türleri hakkında bilgi isteyebilir ve daha sonra bir örnek adı verildiğinde, belirli bir örnek dns-sd -L "Wes Campaigne’s Library" _home-sharing._tcp
için bilgi aramak için çalıştırabilirsiniz .
Dürüst olmak gerekirse, bu süreç oldukça sıkıcı ve tam olarak Discovery'nin (eskiden Bonjour Tarayıcısı) yapmak için yapıldığı şeydi, bu yüzden bunu kullanmanızı şiddetle tavsiye ediyorum. Hangi şekilde yaparsanız yapın, belirli bir servis girişinden hangi programın sorumlu olduğu her zaman net olmayabilir.
Servis girişlerini port numarasına göre çalışan işlemlerle eşlemeye çalışmak için binarybob'un cevabında verilen stratejiyi kullanabilirsiniz , ancak bu her zaman işe yaramayabilir. Başka bir strateji, dns-sd -B _home-sharing._tcp
açık eklenip, örnekler eklendiğinde veya kaldırıldığında rapor veren bir şeyi çalıştırmak , ardından birer birer, çeşitli uygulamalardan çıkmak ve (bir sistem servisi olmadığını varsayarak) hangisinin bırakmayı kaldırma mesajını tetiklediğini görmektir.
Tildesoft'un Bonjour Tarayıcısı tam ölçütlerinizi tam olarak karşılamıyor olsa da , yerel ağınızda reklamı yapılan tüm bonjour hizmetlerini ve reklam veren ana bilgisayarları listeleyebilir.
Bonjour Tarayıcısında, hizmetin tanıtıldığı bağlantı noktası numarasını bulmak üzere detaylandırabileceğiniz yerel olarak reklamı yapılan hizmetler için sanırım, ardından lsof
bununla ilişkili uygulamayı belirlemek için kullanabilirsiniz , Örneğin:
lsof -i | grep 57857
verir
iTunes 36720 ... TCP *:57857 (LISTEN)
iTunes çalıştığımda.
Eski bir makale olarak sınıflandırılmış olmasına rağmen, bu aradığınız şey olabilir: DNSServiceMetaQuery. Belgelerde belirtildiği gibi:
Bu örnek, yerel ağda tanıtılan Bonjour hizmet türlerinin listesini döndüren Çok Noktaya Yayın DNS sorgusu göndermek için DNSServiceQueryRecord öğesini kullanır. Bu sorguyu yanıtlayabilmek için makineler mDNSResponder-58.6 (Mac OS X 10.3.4) veya sonraki bir sürümü kullanıyor olmalıdır.
DNSServiceMetaQuery'yi Mountain Lion'da çalıştırmak için (dahil edilen yapı düzgün çalışmıyor), örnek kod bağlantısına gidin ve Örnek Kodu İndir'i tıklayın. Daha önce yapmadıysanız , Xcode'u yükleyin . Mac OS X> Uygulama> Komut Satırı Aracı şablonunun altında yeni bir proje oluşturun .
Tüm metni açın ve kopyalayın ~/Downloads/DNSServiceMetaQuery/DNSServiceMetaQuery.c
ve main.c
yeni Komut Satırı Aracı projenize yapıştırın (şablondaki her şeyi değiştirerek). Ardından, kenar çubuğu> Yapı Aşamaları içindeki proje adını tıklatarak projeye CoreFoundation.framework eklemeniz ve Kitaplıkları İkili Bağla seçeneğinin yanındaki açılır oku açmanız gerekir . Click +, düğme CoreFoundation.framework aramak ve ekleyin. Ardından Çalıştır düğmesine tıklayın (oynat düğmesine benziyor) ve Oluşturma Başarılı bir görüntü bekleyin. Bir günlüğünün pencerenin düğmesinden bir günlüğü gelmeli; Bu, tüm Bonjour servislerinizi gösterir. Tüm Çıkışın kontrol edildiğinden emin olun.
_daap
.