Chromecastに関するビデオを見たばかりですが、UbuntuPCでこれを有効にする方法を知りたいと思っています。私のテレビにはHDMIポートがあります。
ベストアンサー
Googleのドキュメントによると、Google Cast拡張機能はLinuxでサポートされていませんが、実際には機能します。
これをUbuntuで機能させるには:
-
ChromiumまたはChromeバージョン28以降を実行していることを確認してください。以前のバージョンでは、「このアプリケーションはこのコンピューターではサポートされていません。インストールが無効になっています。」エラー。 Ubuntu13.04の「chromium-browser」パッケージは正常に機能します。
-
GoogleCastブラウザ拡張機能が使用するUPnP/SSDPトラフィックがChromeCastデバイスを検出できるようにiptablesが設定されていることを確認してください。
ブラウザは、ローカルIPとエフェメラル(ランダム)ポートから239.255.255.250ポート1900にマルチキャストUDPパケットを送信します。ChromeCastデバイスは、ChromeCastデバイスのIPと別のエフェメラルポートからソースIP/へのユニキャストUDPパケットで応答します。マルチキャストパケットのポート。 これは、通常、エフェメラルポートではなくポート1900からのユニキャストUDPパケットで応答する他のほとんどのUPnPデバイスとは少し異なることに注意してください。
典型的な
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptablesには現在SSDPをサポートするconntrackヘルパーがないため、ルールは応答パケットと一致しません。さらに、iptables -A INPUT -p udp --sport 1900 -j ACCEPT
ChromeCastデバイスからの応答はポート1900から送信されないため、UPnP/SSDPに通常使用されるルールは機能しません。したがって、すべてのエフェメラルポートでUDPパケットを受け入れるルールを追加する必要があります。最初のマルチキャストパケットのエフェメラルポート範囲は32768-61000である必要があります(
cat /proc/sys/net/ipv4/ip_local_port_range
で確認してください )、したがって、次のルールが機能するはずです(入力ルールの先頭に挿入されることに注意してください):iptables -I INPUT -p udp -m udp --dport 32768:61000 -j ACCEPT
ChromeCastデバイスが検出された後(ブラウザが起動するたびに)、ブラウザはポート8008へのTCP(HTTP)接続を使用してデバイスを制御します。これには、特別なiptablesルールは必要ありません。
-
ChromiumまたはChromeのいずれかにGoogleCastブラウザ拡張機能をインストールします。 ChromeCastと呼ばれるアプリ/拡張機能が利用可能ですが、これはあなたが望むものではないことに注意してください。
-
ChromeCastデバイスをまだセットアップしていない場合は、デバイスに付属の手順に従ってセットアップしてください。
-
デバイスを構成したら、Chromiumの[キャスト]ボタンをクリックするだけで、現在のタブをキャストできるようになります。