ルーターサポートページには、互換性のあるモデムモデルのリストが記載されており、3G + Rostelecom R41(Sense R41とも呼ばれる)は含まれていません。 ルーターに接続されている場合、モデムは設定インターフェイスで検出されず、ログにSCSIデバイスとして表示され、 / dev / ttyUSB *デバイスは作成されません。 つまり、オプションなしで、代替ルーターのファームウェアが必要です。
インターネットで検索したところ、このルーターはZyXEL KeeneticおよびOpenWRTファームウェアのいくつかのバージョンでフラッシュできることがわかりました。 選択はOpenWRTに落ちました。 3Gモデムの接続に必要なすべてを含むカスタムOpenWRTビルドに加えて、DIR-320 / NRUルーターのサポートがリビジョン38040以降のメインOpenWRTブランチに追加されました。したがって、最新の安定したOpenWRTバージョンであるBarrier Breaker 14.07がファームウェアに選択されました。
1.デバイスの説明
D-Link DIR-320 / NRUルーター
オフ。 サイト: | www.dlink.ru/ru/products/5/1466_b.html |
OpenWRTサイト: | wiki.openwrt.org/toh/d-link/dir-320_revb1 |
H / W Ver .:
(鉄版) | B1 |
F / W Ver .:
(ファームウェアバージョン) | 1.2.94 |
SoC:
(チップセット) | RaLink RT5350 |
モデム3G + Rostelecom R41
彼は「Sense R41」、「Network Connect R41」です
![]() | |
SoC: | MediaTek MT6225 |
2.準備
curlおよびsshユーティリティが必要になります 。 Windowsでは、 MSYS2をインストールし、 curlおよびsshパッケージをインストールすると便利です。
DIR-320 / NRU のOpenWRTの側面からダウンロードします。 現時点では、これは最新の安定ビルドです。 または、接頭辞ramips / rt305x / openwrt-ramips-rt305x-dir-320-b1-で他のリリース/動作中のアセンブリを検索できます。 ファームウェアをDir320フォルダーにコピーします。
注:
ルーターを構成するには、追加のOpenWRTパッケージが必要です。 最も簡単な方法は、ルーター(インターネットプロバイダーのケーブルを介したインターネット)でWANを構成し、インターネット経由でパッケージをインストールすることです。 パッケージを事前にダウンロードしたり、アセンブリでパッケージをビルドしたり、パッケージを追加したソースからファームウェアをアセンブルしたりできます。 しかし、私はこの質問を勉強しませんでした。 OpenWRTハウツーページの詳細。
Dir320フォルダーにスクリプトを作成します。
update_flash.cmd
注:
@echo off set firmware=openwrt-ramips-rt305x-dir-320-b1-squashfs-sysupgrade.bin set router=192.168.0.1 echo =========================================================================== echo This batch file will upload %firmware% in the current directory to echo %router% during the router's bootup. echo. echo * Set your ethernet card's settings to: echo IP: 192.168.0.10 echo Mask: 255.255.255.0 echo Gateway: 192.168.0.1. echo * Unplug the router's power cable. echo * Press and hold reset button. echo * Re-plug the router's power cable. echo * Wait 10-15 seconds, then release reset button. echo. echo =============================================================================== echo Waiting for the router... Press Ctrl+C to abort. echo. :ping ping -n 1 -w 50 %router% | find "TTL=" if errorlevel 1 goto ping echo curl -v -0 --retry 100 --form firmware=@%firmware% -o %temp%\curl_out.tmp --progress-bar http://%router% curl -v -0 --retry 100 --form firmware=@%firmware% -o %temp%\curl_out.tmp --progress-bar http://%router% if errorlevel 1 goto ping echo. echo =============================================================================== echo * WAIT for about 2 minutes while the firmware is being flashed. echo * The default router address will be at 192.168.1.1. echo. pause exit /b
注:
行を変更set firmware = ...-異なる名前が付けられている場合は、ファームウェアファイルの名前を設定します。
コンピューターでネットワークインターフェイスをセットアップします。
IP:192.168.0.10 マスク:255.255.255.0 ゲートウェイ:192.168.0.1
ルーターの電源を切ります。 ルーターのネットワークポート1(または、インターネットではなく2,3,4)を、構成済みのネットワークカード(192.168.0.10)にイーサネットケーブルで接続します。
3.ファームウェア
スクリプトDir320 / update_flash.cmdを実行し、 印刷される指示を実行します 。 すなわち:
- マッチ/ペーパークリップ/鉛筆でルーターのリセットボタンを押します。
- ルータに電源を接続します。
- 10〜15秒待っています。
- リセットボタンを放します。
- 2〜3分待っています。
4.ルーターのセットアップ
- ブラウザーでアドレス192.168.1.1を開きます
ログイン-ルート、パスワード-空を入力し、ログインボタンを押します。 - ルーターへのアクセスを構成します。
- メニューシステム→管理
- 新しいパスワードを設定する
- SSHの構成(フィールド:インターフェース= lan、パスワード認証=有効、パスワード=ルートでのログインを許可=有効)
- 保存して適用ボタン
- WAN(インターネットアクセス)を構成します。
- メニューネットワーク→インターフェース
- WANアイコン→編集ボタン
- プロバイダーへの接続を構成します(フィールド:プロトコルなど)
- 保存して適用ボタン
- 3Gを構成する
- MSYS2コンソールを開きます
- SSHを介してルーターに接続します。
ssh root@192.168.1.1
- パスワードを入力してください
- パッケージをインストールします。
opkg update opkg install comgt kmod-usb2 kmod-usb-ohci kmod-usb-serial kmod-usb-serial-option kmod-usb-serial-ipw kmod-usb-serial-wwan kmod-usb-acm luci-proto-3g usb-modeswitch usb-modeswitch-data usbutils
注:1.各SSHセッションで(および場合によっては各opkgインストールの前に)opkg updateコマンドを再度実行する必要があります。 いずれの場合でも、opkg installコマンドがパッケージを見つけられない場合、opkg updateを実行する必要があります。
2. kmod-usb-serial-wwan、kmod-usb-acmパッケージのうち1つだけがパイプされる可能性があります(これはwiki.openwrt.org/doc/recipes/3gdongleページに示されています)が、私はあまり理解していませんでした。それらの両方。
3.パッケージusb-modeswitch、usb-modeswitch-data、usbutilsは特に必要ではないようです-モデムがディスクとして定義されている場合(usb-modeswitch *は必要ありません)、usbutilsはVendorIDとProductIDを見つけるためにのみ必要です。 - USBデバイス設定(正しいVendorIDとProductID)でスクリプトを作成します。
/etc/hotplug.d/usb/22-3g_dongleecho '#!/bin/sh idvendor="2020" idproduct="4000" bcddevice="300" if [ "${PRODUCT}" = "${idvendor}/${idproduct}/${bcddevice}" ]; then if [ "${ACTION}" = "add" ]; then echo '${idvendor} ${idproduct} ff' > /sys/bus/usb-serial/drivers/option1/new_id fi fi ' > /etc/hotplug.d/usb/22-3g_dongle
注:
1. echoで始まるコマンドをコピーできます
2. EOL行の終わりはUNIX形式(CRLFではなくLF)である必要があります。つまり、コマンドをテキストエディター(メモ帳++など)にコピーし、行の終わりを置き換えてからコンソールにコピーする必要があります。
3. idvendor、idproduct、bcddeviceは、これらの値が機能しない場合、lsusb -vコマンド(usbutilsパッケージ)で表示できます。 - モデム設定でスクリプトを作成します。
/etc/chatscripts/3g.chatecho 'ABORT BUSY ABORT VOICE ABORT "NO CARRIER" ABORT "NO DIALTONE" ABORT "NO DIAL TONE" ABORT "NO ANSWER" ABORT "DELAYED" ABORT "ERROR" ABORT "+CGATT: 0" "" AT TIMEOUT 30 OK ATH OK ATE1 OK AT+CFUN=1 OK AT+CGATT? OK AT+CGDCONT=1,"IP","\T" OK ATD*99# TIMEOUT 22 CONNECT "" ' > /etc/chatscripts/3g.chat
注:
1. EOL行の終わりはUNIX形式でなければなりません。
2.ファイル名/etc/chatscripts/3g.chatは異なる場合があります。コマンドls -n / etc / chatscripts /を実行し、3G接続のセットアップ後に作成されるファイルを確認します(Webインターフェースまたはコンソール経由)。 - ルーターを再起動します:コンソールまたはWebインターフェースを使用した再起動コマンド
- 192.168.1.1に移動します
- 3Gモデム用の新しいネットワークインターフェイスを追加します。
- メニューネットワーク→インターフェース
- 新しいインターフェイスボタンを追加
- [全般設定]タブを開き、次のフィールドに入力します。名前= WAN3G、プロトコル= UMTS / GPRS / EV-DO
- 送信ボタン
- フィールドに入力します:モデムデバイス= / dev / ttyUSB0、サービスタイプ= UMTS / GPRS、APN = internet.rt.ru、ユーザー名= ncc、パスワード= ncc
- [ファイアウォール設定]タブを開き、Assign firewall-zone = wanスイッチを配置します
- 保存して適用ボタン
- ルーターの電源を切り、インターネットプロバイダーのWANケーブルを取り外します。
- ルーターをロードした後、電源をオンにすると、モデムが動作し、インターネットが表示されます。
うまくいかなかった場合
1.ログを見る-カーネルログ
Webインターフェイス経由:メニューステータス→カーネルログ
コンソール経由(ssh):
dmesg | grep usb
次のようなエントリがあるはずです。
カーネルログ
[0.680000] rt3xxx-usbphy usbphy.3:ロード済み [6.690000] usbcore:新しいインターフェイスドライバーusbfsを登録しました [6.700000] usbcore:登録済みの新しいインターフェイスドライバーハブ [6.710000] usbcore:登録済みの新しいデバイスドライバーusb [18.000000] rt3xxx-usbphy usbphy.3:リモートusbデバイスのウェイクアップが無効になっています [18.020000] rt3xxx-usbphy usbphy.3:UTMI 16ビット30MHz [18.120000] usb usb1:no_node; pinctrl DTを解析しない [18.430000] usb usb2:no_node; pinctrl DTを解析しない [18.460000] usbcore:登録済みの新しいインターフェイスドライバーcdc_acm [18.480000] usb 1-1:ehci-platformを使用した新しい高速USBデバイス番号2 [18.710000] usb 1-1:no_node; pinctrl DTを解析しない [18.730000] usbcore:登録済みの新しいインターフェイスドライバーusbserial [18.770000] usbcore:登録済みの新しいインターフェイスドライバーusbserial_generic [18.810000] usbserial:ジェネリック用に登録されたUSBシリアルサポート [19.400000] usbcore:登録済みの新しいインターフェイスドライバーipw [19.440000] usbserial:IPWirelessコンバーター用に登録されたUSBシリアルサポート [19.510000] usbcore:登録済みの新しいインターフェイスドライバーオプション [19.570000] usbserial:GSMモデム用に登録されたUSBシリアルサポート(1ポート) [20.380000] usb 1-1:USB切断、デバイス番号2 [21.620000] usb 1-1:ehci-platformを使用した新しい高速USBデバイス番号3 [22.010000] usb 1-1:no_node; pinctrl DTを解析しない [23.410000] usb 1-1:ttyUSB0に接続されたGSMモデム(1ポート)コンバーター [23.490000] usb 1-1:ttyUSB1に接続されたGSMモデム(1ポート)コンバーター [23.590000] usb 1-1:ttyUSB2に接続されたGSMモデム(1ポート)コンバーター [23.670000] usb 1-1:ttyUSB3に接続されたGSMモデム(1ポート)コンバーター
キーワードはusbserial 、 ttyUSB *です。
存在しない場合は、すべてのパッケージが配信されていることを確認してください:メニューシステム→ソフトウェアまたはコンソールのコマンド
opkg list-installed
/etc/hotplug.d/usb/22-3g_dongleのパラメーターidvendor 、 idproduct 、 bcddeviceがUSBデバイスに対応していることを確認してください。 これは、コマンドでコンソールに表示できます
lsusb -v | grep -e idVendor -e idProduct -e bcdDevice.
このようなものが出力されるはずです
idVendor 0x2020 idProduct 0x4000 bcdDevice 3.00 idVendor 0x1d6b Linux Foundation idProduct 0x0002 2.0ルートハブ bcdDevice 3.10 idVendor 0x1d6b Linux Foundation idProduct 0x0001 1.1ルートハブ bcdDevice 3.10
最初の3行はモデムに対応しています。
2.次-システムログ
Webインターフェース経由:メニューステータス→システムログ。
コンソール経由(ssh):
logread
次のようなエントリがあるはずです。
システムログ
Tue Aug 18 00:36:25 2015 daemon.notice netifd:インターフェース「WAN3G」は現在セットアップ中です Tue Aug 18 00:36:27 2015 kern.err kernel:[10387.270000] option1 ttyUSB0:option_instat_callback:error -2 Tue Aug 18 00:36:27 2015 daemon.notice pppd [22188]:pppd 2.4.7がroot、uid 0によって開始されました Tue Aug 18 00:36:28 2015 local2.info chat [22191]:abort on(BUSY) Tue Aug 18 00:36:28 2015 local2.info chat [22191]:abort on(VOICE) Tue Aug 18 00:36:28 2015 local2.info chat [22191]:abort on(NO CARRIER) Tue Aug 18 00:36:28 2015 local2.info chat [22191]:abort on(NO DIALTONE) 火8月18日00:36:28 2015 local2.infoチャット[22191]:中止(ダイヤルトーンなし) 火8月18日00:36:28 2015 local2.infoチャット[22191]:中止(回答なし) Tue Aug 18 00:36:28 2015 local2.info chat [22191]:abort on(DELAYED) 火8月18日00:36:28 2015 local2.infoチャット[22191]:中止(エラー) 火8月18日00:36:28 2015 local2.infoチャット[22191]:中止(+ CGATT:0) 火8月18日00:36:28 2015 local2.infoチャット[22191]:送信(AT ^ M) 火8月18日00:36:28 2015 local2.infoチャット[22191]:30秒に設定されたタイムアウト 火8月18日00:36:28 2015 local2.infoチャット[22191]:期待(OK) Tue Aug 18 00:36:28 2015 local2.info chat [22191]:AT ^ M ^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:OK 火8月18日00:36:28 2015 local2.infoチャット[22191]:-わかった 火8月18日00:36:28 2015 local2.infoチャット[22191]:送信(ATH ^ M) 火8月18日00:36:28 2015 local2.infoチャット[22191]:期待(OK) 火8月18日00:36:28 2015 local2.infoチャット[22191]:^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:ATH ^ M ^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:OK 火8月18日00:36:28 2015 local2.infoチャット[22191]:-わかった 火8月18日00:36:28 2015 local2.infoチャット[22191]:送信(ATE1 ^ M) 火8月18日00:36:28 2015 local2.infoチャット[22191]:期待(OK) 火8月18日00:36:28 2015 local2.infoチャット[22191]:^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:ATE1 ^ M ^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:OK 火8月18日00:36:28 2015 local2.infoチャット[22191]:-わかった 火8月18日00:36:28 2015 local2.infoチャット[22191]:送信(AT + CFUN = 1 ^ M) 火8月18日00:36:28 2015 local2.infoチャット[22191]:期待(OK) 火8月18日00:36:28 2015 local2.infoチャット[22191]:^ M Tue Aug 18 00:36:28 2015 local2.info chat [22191]:AT + CFUN = 1 ^ M ^ M 火8月18日00:36:28 2015 local2.infoチャット[22191]:OK 火8月18日00:36:28 2015 local2.infoチャット[22191]:-わかった Tue Aug 18 00:36:28 2015 local2.info chat [22191]:送信(AT + CGATT?^ M) 火8月18日00:36:29 2015 local2.infoチャット[22191]:期待(OK) 火8月18日00:36:29 2015 local2.infoチャット[22191]:^ M Tue Aug 18 00:36:29 2015 local2.info chat [22191]:AT + CGATT?^ M ^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:+ CGATT:1 ^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:OK 火8月18日00:36:29 2015 local2.infoチャット[22191]:-わかった Tue Aug 18 00:36:29 2015 local2.info chat [22191]:送信(AT + CGDCONT = 1、 "IP"、 "\ T" ^ M) 火8月18日00:36:29 2015 local2.infoチャット[22191]:期待(OK) 火8月18日00:36:29 2015 local2.infoチャット[22191]:^ M Tue Aug 18 00:36:29 2015 local2.info chat [22191]:AT + CGDCONT = 1、「IP」、「T」^ M ^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:OK 火8月18日00:36:29 2015 local2.infoチャット[22191]:-わかった 火8月18日00:36:29 2015 local2.infoチャット[22191]:送信(ATD * 99#^ M) 火8月18日00:36:29 2015 local2.infoチャット[22191]:タイムアウトを22秒に設定 火8月18日00:36:29 2015 local2.infoチャット[22191]:期待(CONNECT) 火8月18日00:36:29 2015 local2.infoチャット[22191]:^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:ATD * 99#^ M ^ M 火8月18日00:36:29 2015 local2.infoチャット[22191]:接続 火8月18日00:36:29 2015 local2.infoチャット[22191]:-わかった 火8月18日00:36:29 2015 local2.infoチャット[22191]:送信(^ M) Tue Aug 18 00:36:29 2015 daemon.info pppd [22188]:シリアル接続が確立されました。 Tue Aug 18 00:36:29 2015 daemon.info pppd [22188]:インターフェイス3G-WAN3Gを使用 Tue Aug 18 00:36:29 2015 daemon.notice pppd [22188]:Connect:3G-WAN3G <-> / dev / ttyUSB0 Tue Aug 18 00:36:30 2015 daemon.notice pppd [22188]:PAP認証に成功しました Tue Aug 18 00:36:32 2015 daemon.warn pppd [22188]:リモートIPアドレスを判別できませんでした:デフォルトは10.64.64.64 火8月18日00:36:32 2015 daemon.notice pppd [22188]:ローカルIPアドレス10.175.68.213 Tue Aug 18 00:36:32 2015 daemon.notice pppd [22188]:リモートIPアドレス10.64.64.64 火8月18日00:36:32 2015 daemon.notice pppd [22188]:プライマリDNSアドレス176.59.127.150 Tue Aug 18 00:36:32 2015 daemon.notice pppd [22188]:セカンダリDNSアドレス176.59.127.146 Tue Aug 18 00:36:32 2015 daemon.notice netifd:ネットワークデバイス「3G-WAN3G」リンクがアップしています Tue Aug 18 00:36:32 2015 daemon.notice netifd:インターフェイス 'WAN3G'が起動しました Tue Aug 18 00:36:32 2015 user.notice firewall:WAN3G(3G-WAN3G)のifupによるファイアウォールのリロード
接続が失敗した場合、このエラーのコードを調べる必要があります。 これがないと、あなたはより具体的に何も言えません。
参照資料
D-LinkのDIR-320 / NRU製品ページ
OpenWRTのDIR-320 / NRUデバイスページ
基本的なOpenWRTセットアップ
OpenWRTで3Gモデムを構成する
OpenWRTをDIR320 / NRUに配置します
LinuxでのSense R41モデムの使用