0

キャンパス全体のワイヤレス ネットワークで mDNS アドバタイズされた多数のサービスを有効にしようとしていますが、特に注目すべきは airplay です。私たちの場合、airServer は有線ネットワーク上にあるため、ワイヤレス側で DNS-SD または mDNS を使用してサービスを手動でアドバタイズする必要があります。avahi で静的なサービス アドバタイズメントを使用して動作するようになりました。かなり滑らかですが、スケーリングの問題があります。

キャンパス内のさまざまな教室に 150 台の AirServer ホストがある可能性があります。それらすべてを有効にすると、iPad で選択できるリストがとてつもなく多くなります (教職員がパスワードの変更を忘れたときにキャンパス全体から AirServer を引き継ぐことを楽しんでいる学生は言うまでもありません)。

私たちがやりたいことは、ワイヤレス ネットワークを建物ごとに 1 つの VLAN に分離して 27 の mDNS セグメントを形成し、avahi を実行して各セグメントのサービスをアドバタイズすることです。 .

avahi-daemon が一意のサービス ディレクトリを指す avahi-daemon.conf のパラメーターを取得することを望んでいました。これにより、それぞれが異なる allow-interfaces 句と異なるサービスへのポインターを持つ複数の構成ファイルを持つことができます。ディレクトリですが、それは構成可能なオプションではないようです。

chroot で avahi の複数のコピーを投獄することを考えていましたが、それは本当に厄介なようです。

27 の個別のホストを作成せずにこれを処理するためのより明白な戦略が欠けていますか?

どうもありがとう!

JD

4

1 に答える 1

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) を制限することもできます。1 つのサービスを複数のインターフェイスで利用できるようにする場合は、各インターフェイスで公開するだけです。

于 2013-08-09T23:41:47.940 に答える