2013-07-15 91 views
0

我們正試圖在我們的校園 寬無線網絡上啓用一些mDNS廣告服務,最顯着的是airplay。在我們的案例中,airServers將 位於我們的有線網絡上,因此我們需要在無線端手動通過DNS-SD或mDNS通知 服務。我們已經在avahi中使用 靜態服務廣告了,它非常漂亮,但我們有一個 縮放問題。avahi從一個多宿主主機隔離mDNS域

我們在 園區周圍的各種教室中可能有150臺AirServer主機。如果我們要啓用所有這些功能,那麼在iPads 上選擇的列表將會非常大(當教師忘記密碼時忘記 更改密碼時,學生不會在整個校園內充分享受 )。

我們想要做的是分隔我們的無線網絡上的每 建設爲基礎單個VLAN形成27個的mDNS段,然後運行的avahi在每個段做廣告 服務,最好用一個單獨的多宿主主機上訪問 到所有的細分市場。

我希望的avahi守護進程將採取在的avahi-daemon.conf 指向一個獨特的服務目錄中的參數,這樣我就可以有多個 配置文件,每一個不同的允許接口條款和一個指向 不同服務目錄的指針,但這似乎不是可配置的 選項。

我正在考慮chroot監獄avahi多個副本,但似乎 真的kludgy。

我是否錯過了一些更明顯的策略來處理這個問題,而不需要創建單獨的主機27 ?

非常感謝!

JD

回答

0

它可以達到你想要什麼,如果你建立你想要的界面發佈服務自己的應用程序。此方法調用是從GNUStep「基本」框架,類GSAvahiNetServices(可以在Linux上使用),該方法基於Avahi API。

- (id) initWithDomain: (NSString*)domain 
       type: (NSString*)type 
       name: (NSString*)name 
       port: (NSInteger)port 
     avahiIfIndex: (AvahiIfIndex)anIfIndex 
     avahiProtocol: (AvahiProtocol)aProtocol 

正如您所看到的,您可以指定您希望發佈服務的網絡接口索引。您也可以限制協議(IPv4或IPv6)。如果您希望一個服務在多個界面中可用,請將其發佈到每個界面中。