Habrでは、さまざまなファームウェア(openWRT、DDWRTなど)のルーターを介してIPTVを設定および表示する問題は既に検討されましたが、udpxyアプリケーションを使用してプロバイダーのUDPトラフィックをクライアントのTCPトラフィックにリダイレクトすることにより、TomatoファームウェアでIPTVを構成する方法について詳細に説明していませんでした この記事では、トマトv1.28ファームウェアにudpxyをインストールして実行するプロセスを詳細に説明します。また、IPTVセットトップボックス用にWANからLANへのブリッジを作成する方法についても説明します。同様の記事をもっと早く処理できたはずです。
udpxyとは何ですか? このアプリケーションの開発者の公式Webサイトでは、次のような表現を使用しています。
udpxy-マルチキャストチャネルネットワークストリーム(UDP経由のブロードキャスト)から要求元クライアントのHTTP接続にデータを転送するためのサーバーアプリケーション(デーモン)。多くの人は、設定でマルチキャストをオンにしただけですべてが機能すると主張するかもしれませんが、私の場合、Wi-Fi経由でIPTVを見ることが正しく機能しませんでした:長時間ダウンロードされたチャンネル、ビデオ画像がフリーズし、画像が「崩れ」、インターネットが完全にスローダウンまたは完全に消え始めました。 インターネットを適切に検索したところ、TomatoファームウェアでUDPをTCPにリダイレクトする方法に関する明確な指示は見つかりませんでしたが、いくつかの指示に出会いましたが、それらは簡潔であり、特定の設定ではなく作業のメカニズムについて説明しました。 私たちの同胞の多くは不可能であり、別のファームウェアをインストールして設定するか、「すぐに」udpxyをサポートするファームウェアをインストールする必要があると書きましたが、パフォーマンス、機能、および明確でアンロードされたインターフェースが「トマト」ファームウェアを好むのはあまりにも痛いです。 一般に、私は問題を最後まで持ち帰り、自分でそれを理解し、自分で構成しようとすることにしました。 その結果、この指示が登場しました。
セットアップ中に使用される機器とパラメーター
- トマトファームウェアv1.28.9054 MIPSR2-beta K26 USB Ext。搭載のNETGEAR WNR3500Lルーター
- プロバイダーとのルーターの直接イーサネット接続、DHCP接続のタイプ、外部静的IPアドレス。
- ルーターはWi-Fiを2.4 x GHzの周波数でブロードキャストし、接続速度は150mb / s、つまり完全な802.11nです。
- 802.11n、速度150Mb / s、OS Windows 8.1をサポートするWi-fiアダプターを搭載したノートブック。
- 接続されたIPTV放送、SkyNetプロバイダーサンクトペテルブルクとの関税計画40-100mb / s。
- ルーターのローカルIPアドレスは192.168.1.1ネットマスク255.255.255.0です。
セットアップ手順
- 開始するには、必要なファイルをダウンロードします。WNR3500Lルーターに適したudpxyアプリケーション自体が必要です 。 こちらからダウンロードできます。
- SSHプロトコルを使用してルーターを操作するには、「PUTTY」ユーティリティも必要です 。最新バージョンはこちらからダウンロードしてください 。
- 「管理」セクションのルーターの管理パネルに移動し、「管理アクセス」サブセクションを探して、「起動時に有効にする」と「リモートアクセス」を選択します。
- 次に、同じセクション「管理」でサブセクション「JFFS」に移動し、「有効」を選択します。その後、「フォーマット/消去」ボタンを押して、JFFSセクションのフォーマットを待ちます。
- 下部の「保存」をクリックしてから、左側の「再起動」をクリックします(ルーターを再起動します)。
- パテユーティリティを開き、ルーターのローカルアドレス(私の場合は192.168.1.1)を入力し、[開く]をクリックします。何も変更しなかった場合は、ログインに[
root
]とルーターに設定したパスワードを入力します。 - 次のコマンドを入力します。
cd /jffs
- 次に、udpxyファイルをネットワークにアップロードして、直接リンクを介して使用できるようにする必要があります。rghost.ruにアップロードし、次のようなリンクを取得しました。
http://rghost.ru/download/51607682/5d8db6ffe010a13afdf1cb07ac9b7cd328c693ea/udpxy
- udpxyアプリケーションをルーターにダウンロードした後、
/JFFS
ディレクトリにputtyと入力します。wget http://___udpxy
wget http://rghost.ru/download/51607518/5c3ff2536e7358f656931ee9f4aef9728c92f1ed/udpxy
Connecting to "rghost.ru (217.199.218.100:80)" ( ) udpxy 100% |*******************************| 66067 00:00:00 ETA
- 次のコマンドを使用して、ファイルに正しい権限を付与する必要があります。
chmod +x udpxy
- ファイルがフォルダー内にあるかどうかを確認し、次のように入力します。
ls
- 次に、ルーターでこのアプリケーション(サービス)を実行する必要があります-これは次のコマンドで行います。
udpxy -c (- ) -a ( ip ) -p ( IPTV) -m ( IP ) -M ( -)
udpxy -c 10 -a 192.168.1.1 -p 7780 -m 93.100.126.169 -M 30
- 次に、サービスが機能しているかどうかを確認して、コマンドを入力します。
s |grep udpxy
634 root 792 S /jffs/udpxy -c 10 -a 192.168.1.1 -p 7780 -m 93.100.126.169 -M 30 671 root 1700 S grep udpxy
- 次に、すべてが機能したことを100%確認するために、ブラウザーに移動してアドレスバーに入力します。
http://_:_/status
http://192.168.1.1:7780/status
- パテに戻り、ファイアウォールのルールを順番に処方し、次のように入力します。
iptables -A INPUT -p igmp -j ACCEPT iptables -A INPUT -p udp -m udp -d 224.0.0.0/4 -j ACCEPT
- 次に、ルーターをオンにすると同時にサービスを自動的に開始するように構成する必要があります。そのためには、「管理」セクションの「スクリプト」サブセクションの「初期化」タブのテキストボックスで、ルーターの管理パネルに移動し、サービスを開始するタイムアウトとudpxyサービスを開始したコマンドを指定します。私の場合、このように見えました:
sleep 30 /jffs/udpxy -c 10 -a 192.168.1.1 -p 7780 -m 93.100.126.169 -M 30
- そこで、「ファイアウォール」タブに移動し、ここにファイアウォールの2つのルールを入力します。
iptables -A INPUT -p igmp -j ACCEPT iptables -A INPUT -p udp -m udp -d 224.0.0.0/4 -j ACCEPT
- 最後のステップ-IPTVプロバイダーのチャンネルを含むプレイリストを取得し、すべてのリンクを編集します(メモ帳で開き、Akelpadと「置換と置換」機能を個人的に使用しました)。
- タイプリンク
udp://@ip_:
http://192.168.1.1:7780/udp/ip_:
udp://@239.195.0.73:1234
http://192.168.1.1:7780/udp/239.195.0.73:1234
- たとえば、修正したプレイリストをVLCプレーヤーで開き、すべてが機能するかどうかを確認し、機能する場合はルーターを再起動し、再起動後に機能しない場合は項目16と17を確認します。
まとめ
プロバイダーからクライアントのTCPトラフィックへのUDPトラフィックのリダイレクトを受信しました。これにより、ルーターをアンロードし、PCで表示したときに画像を「フェード」および「スキャター」せずにビデオストリームと高品質ビデオの高速ダウンロード速度を得ました。 ラップトップでのwi-fi接続を介してすべてがうまく動作し、LAN経由でルーターに接続されているiconbit HDS6Lメディアプレーヤーでも動作します。 この方法は最も簡単ではありませんが、エレガントです。 それを実現することは私に多くの喜びを与えました。 この情報が検索エンジンでインデックス化され、私と同じ経験の浅いユーザーにも役立つことを本当に願っています。
2015年10月24日追加
IPTVセットトップボックスを購入する時間をようやく見つけてから、セットトップボックスがプロバイダーからIPを取得して動作を開始できるように、WANからLANへのブリッジを作成する必要がありました。
管理パネルで、[ユーティリティ]-> [システムコマンド](ロシア語以外のバージョンの場合:[ツール]-> [システム])に移動し、次のコマンドを順番に入力します。
- 最初のチェック:
nvram show | grep vlan.ports
答えを得る必要があります。
vlan1ports=4 3 2 1 8* vlan2ports=0 8
- 答えが一致する場合、コマンドをさらに順次実行します。
nvram set manual_boot_nv=1 nvram set vlan1ports="4 3 2 8*" nvram set vlan2ports="0 1 8" nvram commit reboot
- 再起動を待ち、コマンド1を実行して再度確認します。
nvram show | grep vlan.ports
答えを得る必要があります。
vlan1ports=4 3 2 8* vlan2ports=0 1 8
- コンソールに接続する4番目のポートケーブルを挿入します。