ラベル MG6330 の投稿を表示しています。 すべての投稿を表示
ラベル MG6330 の投稿を表示しています。 すべての投稿を表示

2019年1月6日日曜日

Canon MG6330をLinuxで使用する(再)

はじまり


4年くらい前にCanon MG6330をLinuxで使うためにチャレンジしたlink。
自宅サーバーの環境移行に伴い、再度環境構築することになった。
当時のリンクはまだ残っていた。
http://cweb.canon.jp/cgi-bin/download/select-os.cgi?i_cd_pr_catg=011&i_cd_pr=3337&i_pr_search_word&i_fl_select_pr_catg=1

 ネットワーク構成


ネットワーク構成は、当時から随分変わって、シンプルになっているので省略。
プリンターもPCも同じセグメントに居る。
ただし、それぞれのlinux PCにドライバーを入れるのではなく、自宅サーバーにプリントサーバーも担ってもらうことにした。 と思ったけど、インストールが簡単そうなので、各PCに入れることにした。
4年前はMageia(rpm系)を使っていたけど、今はMint(debian系)になるので、パッケージが異なる。

インストール

まずはプリンタドライバと思ったら


[cnijfilter-mg6300series-3.80-1-deb.tar.gz]を展開して〜と思ったら。
プリンタの検索でMG6330が普通に認識された!!


以下、認識の手順
設定ツールを管理者権限で開かないと、プリンタ追加時にエラーとなったので注意。

1.CUPS 設定ツールを開く


sudo system-config-printer

GUIが起動して、プリンタの追加を選択するとウィザードが始まる

2.NetworkPrinterにCanon MG6300が表示される

複数の選択肢がある場合は[IPP network printer via DNS-SD]を選択した。


3.ドライバの選択

メーカー選択でCanon、モデル選択でMG6300
ドライバ選択でCanon MG6300 series CUPS+Guteprintの方を選択した。



4.テストページの印刷

テストページを印刷して、問題ないことを確認。
ウィザードを終了すると設定ツール画面でプリンタが追加されている。


スキャナーは?

ノートPCでは、Simple Scanですぐに認識されたのだけど、デスクトップではなぜか「検出できませんでした」と言われてしまった。
まぁスキャナーを使うことは、コピーかメディアに直接保存するかなので、困りはしない。
これで印刷が捗る。

2014年11月24日月曜日

Canon MG6330をLinuxで使用する(2/2)

前回は、同一セグメントからの利用だったので、
今回は異なるセグメントからの利用に挑戦する。

ルーターとしてdd-wrt化したあいつがいるので、
なんとか工夫したら使えないかぁ・・・。


  1. 調査
一体、このプリンターはどんなプロトコルで通信しているのか。
そして、install.shで勝手にプリンターを探してくれるけど
何をやっているのか?

まぁググったら一撃なんだけれども、それじゃあつまらないので、

先ほどインストールに成功したノートPCで再度install.shを動かしてみて、パケットキャプチャしてみた。

ARP投げまくってる。
プリンターの電源入れ忘れてた。。
電源を入れて再度キャプチャー

おぉとれた!
Canon BJNPというポート8611のやつですな!
このキーワードをもとにググって(やっぱり)みると
tcpとudpで8611を使用するみたい。
また、スキャナーの場合には、8612を使うとか使わないとか。


  1. ルーターの設定
    仕組みがわかれば、それに対応してルーターの設定を変更する。
# 192.168.4.1:8611に届いたパケットを192.168.2.6:8611に転送
iptables -t nat -A PREROUTING -m tcp -p tcp --dst 192.168.4.1 --dport 8611 -j DNAT --to-destination 192.168.2.6:8611
iptables -t nat -A PREROUTING -m udp -p udp --dst 192.168.4.1 --dport 8611 -j DNAT --to-destination 192.168.2.6:8611

# 192.168.2.6:8611宛のパケットの送信元は192.168.2.5にする
iptables -t nat -A POSTROUTING -m tcp -p tcp --dst 192.168.2.6 --dport 8611 -j SNAT --to-source 192.168.2.5
iptables -t nat -A POSTROUTING -m udp -p udp --dst 192.168.2.6 --dport 8611 -j SNAT --to-source 192.168.2.5

# 戻りのパケットは許可
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

上記設定にて動きました!!
あとは、設定の永続化をしないといけないのだけど、それはまた今度。。
今はプリンターが使えた喜びに浸りたい・・・。

Canon MG6330をLinuxで使用する(1/2)

Canon MG6330をLinuxで使用する(1/2)


  1. はじまり
我が家のプリンターはCanon MG6330というやつで、
ネットワークプリント対応しており、
WindowsPCやスマホから印刷していた。

そういえば、Linuxから印刷したことがなかったので、今回チャレンジしてみた。
というのも、たまたまLinux向けのドライバーが公開されているのを知ったからだ。


  1. ネットワーク構成
我が家のネットワーク構成は以下のような感じで、
Wimaxルーターに無線LAN機能のついたものを使用している。
この無線LANにスマホやらWindowsPCやらがぶら下がっている。



そして、ルーター代わりにdd-wrt化したルーターをかませてセグメントを分けている。
同じセグメントのノートPCから先述のドライバーを使うのは何も困ることはなかったが、
違うセグメント(192.168.4.0/24系)からプリンターを利用するのがどうにもハマってしまった。



  1. 同一セグメントのノートPCにて
まずは、同一セグメントのノートPCからプリンターを使う場合
先述のリンクからドライバーをダウンロードする。
  
PIXUS MG6330 IJ Printer Driver Ver. 3.80 for Linux
cnijfilter-mg6300series-3.80-1-rpm.tar.gz

rootになって./install.shを実行してみる。
==================================================

Canon Inkjet Printer Driver
Version 3.80
Copyright CANON INC. 2001-2012
All Rights Reserved.

==================================================
実行コマンド = rpm -Uvh ./packages/cnijfilter-common-3.80-1.i386.rpm
エラー: 依存性の欠如:
cups は cnijfilter-common-3.80-1.i386 に必要とされています

怒られた。そうだよね。
cupsのインストールして、再度チャレンジ!

==================================================

Canon Inkjet Printer Driver
Version 3.80
Copyright CANON INC. 2001-2012
All Rights Reserved.

==================================================
実行コマンド = rpm -Uvh ./packages/cnijfilter-common-3.80-1.i386.rpm
準備しています... ################################# [100%]
更新中 / インストール中...
1:cnijfilter-common-3.80-1 ################################# [100%]
実行コマンド = rpm -Uvh ./packages/cnijfilter-mg6300series-3.80-1.i386.rpm
エラー: 依存性の欠如:
libpangox-1.0.so.0 は cnijfilter-mg6300series-3.80-1.i386 に必要とされています
libpng12.so.0 は cnijfilter-mg6300series-3.80-1.i386 に必要とされています
libtiff.so.3 は cnijfilter-mg6300series-3.80-1.i386 に必要とされています
実行コマンド = rpm -e cnijfilter-common
警告: ファイル /usr/lib64/cups/filter/pstocanonij: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/lib64/cups/backend/cnijusb: 削除に失敗しました: そのようなファイルやディレクトリはありません
警告: ファイル /usr/lib64/cups/backend/cnijnet: 削除に失敗しました: そのようなファイルやディレクトリはありません

また怒られた。怒られた内容に従い以下の追加インストール。
libpangox-devel
libpangox1.0_0
libpng12-devel
libpng12_0
libtiff-devel

すると[libtiff.so.3 は cnijfilter-mg6300series-3.80-1.i386 に必要とされています]とまたまた怒られてしまった。

ググるとlibtiff.so.3が必要な場合には、libtiff.so.4などからシンボリックリンクを張っちゃうのが常套手段らしいので、やってみたが、まだ怒られる。

ムキー!!
心が折れたので、libtiff.so.3をネットから拾ってきた。。

==================================================

Canon Inkjet Printer Driver
Version 3.80
Copyright CANON INC. 2001-2012
All Rights Reserved.

==================================================
実行コマンド = rpm --test -U ./packages/cnijfilter-common-3.80-1.i386.rpm
パッケージ cnijfilter-common-3.80-1.i386 は既にインストールされています。
実行コマンド = rpm --test -U ./packages/cnijfilter-mg6300series-3.80-1.i386.rpm
パッケージ cnijfilter-mg6300series-3.80-1.i386 は既にインストールされています。

#=========================================================#
# プリンターの登録
#=========================================================#
続いて、プリンターの登録を行います。
プリンターを接続して、電源を入れてください。
ネットワーク接続で使用する場合は、プリンターをネットワークに接続してください。
準備が整ったら、Enterキーを押してください。
>

きたー!!
このまま指示に従っていくと無事にプリンターが使えるようになりました!

次は異なるセグメントから使えるようにするぞ!