toshi_a1995★B級グルメと一行日記

B級グルメとアウトドア、気になるガジェットの一行日記

DD-WRT化したルーターでプリントサーバ化

プリントアウトがうまくいかない。
スプールデータの切れ目で通信不良になる。
スプールなしでダダ流ししても、2枚目の写真で通信不良に?
ヾ(°∇°*) オイオイ

無線ルーターのプリントサーバ機能が上手くない?

現在使用している無線ルーターバッファローのWZR-1750DHP2
この機種にはプリントサーバー機能があり、USBプリンタを繋げば無線化できます。

「プリントアウトできない。」toshi_a1995のブログ | エスハイでめぐるB級グルメの旅 - みんカラ
プリントアウト出来ない!...

前回もプリント出来ないことからこの機種にしたのね....
ガ━━(゚Д゚;)━━ン!
忘れてた。

グーグル先生に聞くと、このルーターでプリント出来なくなった事象は一杯あるけど、解決策がないみたい。
それってファームのせいじゃないのか?
と思って、最新版にアップしても変わらず....
手が見つからない。
あ、
そういえば、昔のルーターでUSBホスト機能があったやつがあった。

DD-WRT化したWZR-HP-G302H

「ルーターをDD-WRTで更新」toshi_a1995のブログ | エスハイでめぐるB級グルメの旅 - みんカラ
捨てる前ににファームを更新してみた。DD-WRTに!まあ、海外向けファームですね。...

今はテレビ横で中継機になってました。
引っ張り出してきて、プリントサーバーに仕立ててみます。

ただ、普通に挿しただけでは認識しない。
調べてみるとルーターファームにアプリを追加する必要がありました。
以下、忘備録的に手順を書いてみます。

JFFS機能を有効にする。

1.クライアントPCのブラウザにルーターIPアドレスを入れてルーターの web 設定画面に入る。
2.ルーターの web 設定画面で「管理」>「管理」へ移動。
3.下へスクロールし 「JFFS2」 サポートの項目へ移動。
4.JFFSを有効にし「設定」(保存のみではない方)をクリック 。
5.JFFS初期化を有効にして再度「設定」(保存のみではない方)をクリック。
6.その後、JFFS初期化を無効に戻して再度「設定」(保存のみではない方)をクリック。その後再起動。

telnetでのリモートアクセスを有効に。

ルーターの web 設定画面で「管理」>「管理」タブでtelnet管理を有効にする。ポートは23のままで良い。               

USB機能を有効に

ルーターの web 設定画面でネットワークタブ>USBタブを開き USB SupportのUSBストレージ以外を有効にする。

クライアントPCのTelnetクライアント有効化

WIN7では標準ではtelnetは動作せず。
「コントロールパネル」-「プログラムと機能」-「Windowsの機能の有効化または無効化」より「telnetクライアント」にチェックを入れて「OK」

クライアントPCからp910nd(プリンターサーバーソフト(デーモン))をインストール。

1.クライアントPCにてコマンドプロンプトを起動。
コマンドプロンプト画面(dos窓)から

 >telnet 192.168.0.1 23 (telnetルーターip・ ルーターで設定したtelnetポート)
で[ENTER]

2.するとユーザー名とパスワードを聞かれますのでルーターに設定したuser名(例root)とpassword(例admin)を入力し[ENTER] 。

3.コマンドプロンプト画面から
 ~# cd /jffs  [ENTER]
 ~# wget http://downloads.openwrt.org/barrier_breaker/14.07/atheros/generic/packages/oldpackages/p910nd_0.95-3_atheros.ipk[ENTER]
 (2017年4月現在)

 ~# ipkg install p910nd_0.95-3_atheros.ipk [ENTER]

 ~# rm p910nd_0.95-3_atheros.ipk [ENTER]

 ~# exit [ENTER]

ルーター起動時にp910プログラムが走るように命令文を書き込み。

1.クライアントPCのブラウザにルーターIPアドレスを入れてルーターの web 設定画面に入る。
2.管理画面タブ>Commandsタブへ移動
3.コマンドボックス内に以下の命令文をコピーし貼り付けます。
(-bの意味は双方向通信 -f はデバイス名の設定, 最後の数字はポート番号、たとえば 0ならばポート 9100、1なら 9101)

/jffs/usr/sbin/p910nd -b -f /dev/usb/lp0 0
/bin/mkdir -m 755 -p /dev/usb
/bin/mknod -m 660 /dev/usb/lp0 c 180 0

4.スタートアップとして保存をクリック
5.再起動します。

クライアントPC(手元のpc)でプリンタードライバーをインストール。

1. 印刷したいプリンタードライバーをローカルプリンター(PCとUSBで直結するプリンター)としてインストールしておきます。
2. コントロールパネルからプリンターを見つけます。
3. プリンターを右クリックしプリンターのプロパティ→ポート設定のタブを開きます。
4.ポートの追加をクリックし「Standard TCP/IP printer port」を新しく追加します。
IPアドレス欄にルーターのIPアドレスを設定します。(例192.168.0.1)
5.デバイスタイプのカスタムセッティングでRAW としポートを(9100)として設定します。
これでプリンターの設定は完了です。

印刷テスト

印刷テストで上手くプリントアウトできない場合、p910ndが動作しているかどうかは telnetルーターにログインし
~# pidof p910nd [ENTER]
で数字が帰ってきたらソフトは動いていることを確認できます。
使用しない同名のプリンタ設定がある場合は削除しておくのが良いでしょう。

なんとか復活

復活しましたねえ。

プリントアウトできるようになりました。
急遽、写真の出力があったので、直ってホッとしています。
でも、Macからの直接印刷ができないし...
なんか、方法がないか検討中。
ヘ(-′д`-)ゝヤレヤレ..