avahiでのサービス発見

ここではzeroconf実装の一つであるavahiを利用した場合のサービス発見について述べる。

サービス発見

コマンドラインを使ったサービスの発見にはavahi-browseを使う。プログラミング言語からのサービス発見は後述する。

同じリンク上の全てのサービスを得たい時は -a を使用する。

 % avahi-browse -a

また、特定のサービスだけを発見したい時は -r(--resolvでも良い)を使い、サービスタイプを指定する。

 % avahi-browse -r <ServiceType>

サービスタイプ

サービスタイプとは、zeroconfにおけるサービスの種類を指定するものである。

登録されているサービスタイプはDNS-SD(http://www.dns-sd.org)のサービスタイプのページ(http://www.dns-sd.org/ServiceTypes.html)に書かれている。以下に代表的なサービスタイプをいくつか挙げる。

なお、実際にavahi-browseでサービス発見をするときには、

  % avahi-browse -r _http._tcp

のように"_"を付け、その後に"._"をつけてからプロトコルを指定する。