問題タブ [avahi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Avahi Hostname Resolution: どこかにキャッシュしていますか?
Fedora 18 と avahi コマンド ライン ツール (バージョン 0.6.31) を使用しています。
開発中のテスト目的で、avahi-resolve-host-name を使用してサブネット上のユニットの IP アドレスを検出します。Wireshark でリクエストとレスポンスを監視します。要求と応答が 1 回成功すると、それ以上の要求は Wireshark に表示されなくなりますが、ツールは引き続き IP アドレスを返します。コンピュータ/avahiデーモン/何かが結果を「キャッシュ」している可能性はありますか?
質問: avahi-resolve-host-name の呼び出しごとにリクエスト パケットを送信したいと考えています。これは可能ですか?
理由: いわば「誤検知」が発生しています。「test1.local」を解決しようとすると、結果の IP が取得されますが、ユニットはこの IP に配置されなくなりました。リクエストを毎回送信して、間違った IP アドレスでユニットが表示されるのを回避できるようにします。
cmake - cmakeでlibavahiを見つける
プロジェクトの cmake 依存関係に libavahi-client3 を追加する必要があります。libavahi-client3 と libavahi-common3 の存在も確認する必要があります。現在のライブラリ(avahi)のみの問題
これらのことをしようとしています:
またはこのバリアント:
どちらも機能しません。findAvahi.cmake などを検索しましたが、何も見つかりませんでした。では、独自の検索モジュールを作成する必要がありますか、それとも別のより良いオプションがありますか?
linux - sed を使用してリストから IPv6 アドレスを削除する
avahi を使用して、ネットワーク範囲の IP アドレスのリストを作成しました。入力された情報は、sed を使用して洗練され、次の出力が得られます。
そのためのコマンドは次のとおりです。
これはほとんどの場合正しく機能しますが、奇妙な場合に xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx のようなアドレスがリストに表示され、省略したいと思います。
正規表現または何かを使用して、データが常に有効な IP、つまり xxx.xxx.xxx.xxx と一致することを確認できることはわかっていますが、これについてどうすればよいかわかりません。どんな助けでも大歓迎です。
このコマンドは、bash スクリプトを使用して Linux で実行されます。有効な IP アドレスのみを xxx.xxx.xxx.xxx 形式で返したいと思います。
linux - avahi を使用して、サブネットワーク全体でサービスを公開できますか?
Avahi は通常、サービス検出に使用されます。別のサブネットワークからサービスを検出できるようにしたいのですが、これを実現するために avahi を使用できますか?
たとえば、サービス ホストの IP は、マスクが「255.255.255.0」の「192.168.1.100」であるため、192.168.1.X サブネットワーク内にあります。別のホスト IP は、マスクが「255.255.255.0」の「192.168.2.100」です。avahi を使用して、このホストが以前のサービス ホストを検出できるようにすることはできますか?
ios - iOS bonjour ブラウザーが信頼できない
Xamarin (以前の Mono Touch) の NSNetServiceBrowser を使用して、bonjour デバイスをスキャンしています。これはほとんどの場合機能しますが、あるようです
a) 新しいデバイスがあることを認識しない大きなキャッシングの問題 b) WIFI の問題、たとえば、wifi をオフにしてから再びオンにした場合
ほとんどの場合、Apple Bonjour デバイスが検出されますが、a) または b) の場合、avahi ベースのデバイス (ネットワーク プリンター) はほとんど表示されません。
linux - Windows から LAN 経由で avahi エイリアスに ping を実行することはできませんが、他の Linux VM からは実行できます
コンテキスト: ドメイン ルートに GIS テストと Dokuwiki 用の vm サーバーをセットアップしました。サブドメインで GIS Web アプリを提供して、dokuwiki の URL の名前変更が競合しないようにしたいと考えています (そして、よりクリーンに感じます)。私はそれをavahi-aliasesで解決したと思っていましたが、発見しました...
問題: LAN 上のどの Windows PC からもサブドメインにアクセスできません。Linux VM は問題なく接続します。私は不可能なことを試みていますか、それとも単に間違っていますか? (私は DNS noob です) なぜ Linux はサブドメインを見つけ、Windows は見つけられないのですか?同じ LAN 上でも??
セットアップ: 企業のルーター/サーバーで何も変更できません。VM は、同じ企業 LAN 上の異なる PC にあります。
VM1 (virtualbox、Windows PC1 でホスト): Mint 13
VM2 (Windows PC2 でホストされる virtualbox ヘッドレス サーバー): ubuntu サーバー 12.04、LAMP、samba、avahi、avahi-aliases。
プライマリ ドメイン: vm2.local
サブドメイン: gis.vm2.local (apache と avahi-alias で設定)
機能: vm1 から vm2.local および gis.vm2.local に到達できます (ping とブラウザーを介して)。LAN 上の任意の Windows PC から (ping ブラウザー経由で) vm2.local にアクセスできます。
うまくいかないこと: LAN 上のどの Windows PC からも gis.vm2.local にアクセスできません。
アイデアやアドバイスをいただければ幸いです。
dbus - dbus-send による Avahi へのアクセス
をハックする過程でdbus-monitor
、Avahi デーモンに接続してみました。
これは、Avahi デーモンの状態の変化に対応します。
しかし、このようなサービスを閲覧することはできません。
私の知る限り、これは新しい/削除された http サービス インスタンスに応答するはずですが、応答しません。
なんで?
アップデート:
上記のシェル コマンドと同等のコマンドを python および c API で実行すると、期待どおりに機能しました。しかし、彼らは私が構築した ServiceBrowser に接続できず、彼らが構築した ServiceBrowser をリッスンするためにdbus-send
使用できませんでした。dbus-monitor
この時点で、私の最善の推測は次のとおりです。
- (コマンドの終了により
dbus-send
) 接続が閉じられると、作成した ServiceBrowser は破棄されます。dbus-monitor
ただし、これは、Python スクリプトとアクティブに通信している ServiceBrowser に接続できない理由を説明していません 。 - ServiceBrowser からのシグナルは、それらをインスタンス化した接続にのみ送信されます。
python - PythonでテストするためにIPを偽造する方法
さまざまなマシンで実行できる avahi で公開しているサービスがあります。
そして、そのマシンの IP を検出して取得し、このサービスの使用を開始するコードがいくつかあります。
テストを自動化したくないので、avahi が解決したときに異なる IP アドレスを持つように、何らかの方法で複数のマシンを偽造する必要があります。
これは可能ですか?