Fedora 資料一覧
Avahi:利用可能なサービスをリストアップする
2008/8/28更新
対応バージョン: 9
Avahiで利用可能なサービスをリストアップするにはavahi-browseを使用する。
同コマンドは「avahi-tools」パッケージに同梱されているのでまずインストールする。
% sudo yum install avahi-tools
「avahi-tools」パッケージには以下のツールが含まれるが、ここではavahi-browseのみ説明する。
avahi-browse avahi-browse-domains avahi-discover avahi-publish avahi-publish-address avahi-publish-service avahi-resolve avahi-resolve-address avahi-resolve-host-name avahi-set-host-name
関連資料・記事
全サービスリストアップ
全てのサービスをリストアップする場合は「-a」オプション付でavahi-browseを実行する。
% avahi-browse -a -t + eth0 IPv4 8CC06DD4D03779B0 _touch-able._tcp local + eth0 IPv4 host_a SSH Remote Terminal local + eth0 IPv4 host_b Web Site local
この例では最初の行でiTunesのプレイリスト共有が、次の2行でhost_aとhost_bの2つのホストのリモートサービスがそれぞれリストアップされている。
-tオプションは一度リストアップした後にコマンドを終了させる指定で、これを付けないとサービスの有効/無効を常時監視するモードになる。
特定サービス詳細出力
特定のサービスについて詳細を出力したい場合は「-r <サービス>」オプション付でavahi-browseを実行する。
例えばWebサービス(Webサーバ)についての詳細を出力したい場合は以下のようにする。
% avahi-browse -r _http._tcp -t + eth0 IPv4 host_b Web Site local = eth0 IPv4 host_b Web Site local hostname = [host_b.local] address = [192.168.0.1] port = [80] txt = []
関連資料・記事
うまく動作しない場合の対処方法
avahi-browseの結果が返ってこない
% avahi-browse -a (結果が返ってこない)
avahi-browseはローカルで利用可能なサービスを取得するために224.0.0.251にmDNS(Multicast DNS)クエリを投げるが、宛先ポートが5353/udpなのでこれをファイアウォール等でブロックしていると結果が返ってこない。
ちなみに-aオプションを付けた場合は以下のクエリが発行される。
_services._dns-sd._udp.local
avahi-browseがエラーになる
% avahi-browse -a Failed to create client object: Daemon not running
Avahiのデーモン(avahi-daemon)が起動していないので起動する。
(Fedoraの場合)
% sudo service avahi-daemon start