Zaurus を LAN に繋ぐ話

2000/10/20 (最終更新:2005/08/28 15:27)

◎ Zaurus とパソコンを繋ぐ

Zaurus にもそれなりに PCリンクソフトはいろいろあるけれど、 それってシリアルケーブル RS-232C 接続か、 または IrDA の赤外線通信を使わなければなりません。

これってパソコンと Zaurus の 一対一 の通信です。 やりとりも専用プロトコルを使っていて、 お互い相手しか見えません。

◎ Zaurus とインターネットを繋ぐ

インターネットは巨大で大きなネットワークです。 世界中にあるいろいろなマシンやサーバーに、 絶対名で指名して、直接呼び出しできてしまいます。 いろんなマシンが繋がっているので、 もちろん共通語が必要です。

Zaurus をインターネットに繋ぐには、 モデムや携帯、PHS アダプタが必要です。 機種によっては IrDA モデムも使えます。 これは電話回線を使ったダイヤルアップ接続です。 このときだけ Zaurus も、TCP/IP (プロトコル)を話すことができます。

インターネットも本当は小さなネットワークの集まりです。 ネットワークとネットワークが、 いっぱい多層に繋がっているから大きいのです。

◎ Zaurus とネットワークを繋ぐ

LAN に繋ぐ方法として、 いわゆる他のコンピュータやネットワークに繋ぐ方法として、 今のパソコンで一般的なのは Ethernet です。 この場合 LAN アダプタや LAN カードを使わなければなりません。 今の Zaurus は残念ながらこれらの LAN カードに対応していません。

LAN カードが無くても、 Zaurus はダイヤルアップならインターネットに繋がります。 この場合 TCP/IP も話せます。 何とかして電話回線なしで直接他のコンピュータと繋ぐことができれば、 そのままシリアルを通じて PPP や SLIP で接続できれば、 TCP/IP で Zaurus とパソコンが繋がるはずです。

あとは繋いだパソコン側の設定次第で、Zaurus がネットワークにも繋がります。 PPP や SLIP そのものは 一対一 の通信だけど、 そこで使うプロトコルは共通の TCP/IP なので、 パソコン側でちょっと仲介してやればすぐ外に出られるわけです。

ただしこの機能は、標準では提供されていませんでした。

◎ Zaurus をパソコンと TCP/IP で繋ぐ

標準の機能としては提供されていませんが、 ダイヤルアップの部分を巧妙に隠すことで、 Zaurus とパソコンを TCP/IP 直結することが出来ます。

その画期的な方法 「Zaurus とパソコンを PPP による TCP/IP 接続する方法」 がこちらのページで紹介されています。

トラップの軟骨部屋 「ザウルス-LAN 接続計画」

ここではさらに、パソコン側の IPマスカレードという機能を使って、 Zaurus の接続でそのまま LAN に、 もしくはそのままパソコン経由でインターネットに繋ぐ方法まで解説しています。

なんと Zaurus が LAN につながります! TCP/IP で直結します!

ただしパソコン側は、 ネットワークに関する細かい設定を行うために PC-UNIX を想定しています。 といっても、非常に詳しく手順が書いてありますので、 普段 PC-UNIX の環境設定をして使っている方なら大丈夫です。 この通り行えば Zaurus から TCP/IP でパソコンに繋ぐことが出来ます。

◎ 試してみました Zaurus と LAN 接続

正直なところ、携帯で手軽にメールが出来るようになってしまった昨今、 Zaurus でネットに繋ぐ機会もめっきり減っています。 だけど Zaurus でできるのはメールだけではありません。

内蔵機能のブラウザは当然として、 開発キットでは普通に socket() インターフェースが使えます。 ダイヤルアップ PPP 接続も関数一つで済むので、 ユーザー自らもネットワークアプリケーションを作ることが出来ます。

今後さまざまなネットワーク対応アプリケーションが増えれば、 ネットワークを使う機会も増えるでしょう。 またそれらのアプリケーションを作るためにも、 ネットワークに繋ぐ必要が生じます。

このたび zxLinux の開発用に Linux 環境を整備 しましたので、 この 「ザウルス-LAN 接続計画」 も実際に試してみることにしました。

◎ ダウンロードした

非常に詳しくかかれていますので 「ザウルス-LAN 接続計画」 を良く読んで、その通り進めれば良いだけです。

今回インストールを行った環境は、 LASER5 Linux 6.2 (FTP版)で、カーネルは 2.2.14 です。 使うのはデスクトップマシンだけなので、IrDA の設定は行いません。 説明に従い、ダウンロードしたアーカイブは次の通りです。

名称 ファイル名
PPxP ppxp-0.99120923.tar.gz
userlink userlink-0.99a.ar.gz
mgetty mgetty1.1.22-Aug17.tar.gz

この他に トラップさん 作の patch もダウンロードします。(これも説明通りです) ただのテキストファイルなので、 リンクの上で右ボタンを押し「名前を付けて保存」を行ってください。

名称 ファイル名
mgetty パッチ mgetty-modem_emu.patch
ppxp パッチ ppxp.authfile.patch

◎ コンパイルした

Linux デストリビューションごとのパッケージ云々はいまいちまだ 理解していないので、 直接パッチをあててコンパイルしてみました。 ダウンロードしたファイルはすべて /usr/local/src に置いてあるものと想定しています。

% cd /usr/local/src % tar -zxvf ppxp-0.99120923.tar.gz % cd ppxp % patch -p1 < ../ppxp.authfile.patch % /bin/sh configure % make % make install

make install は root で作業する必要があります。 ここで注意することは ppxp.authfile.patch の改行コードです。 Windows 上などでこのパッチファイルをダウンロードすると、テキスト扱いなので 改行コードが CR+LF になります。 パッチを当てるときは UNIX の改行コード LF のみに変換しておく必要があります。 mgetty のパッチも同様です。

標準状態で install しているので、 インストール先は /usr/local/sbin になる点に注意してください。 設定ファイルも /usr/local/etc/ppxp になります。 これらのパスの違いは必要に応じて置き換えていきます。

% cd /usr/local/src % tar -zxvf userlink-0.99a.tar.gz % cd userlink-0.99a % /bin/sh configure % make % make install

% cd /usr/local/src % tar -zxvf mgetty1.1.22-Aug17.tar.gz % cd mgetty-1.1.22 % cp policy.h-dist policy.h % patch -p1 < ../mgetty-modem_emu.patch % make % make install

これでコンパイルとインストールは完了です。

◎ 設定をした

設定は トラップさん の説明通りに行います。 コマンドや設定ファイルのパスが /usr/sbin ではなく /usr/local/sbin になること、 /etc ではなく /usr/local/etc になることに注意してください。

/etc/mgetty-sendfax や /sbin/mgetty は、 パッチが当たっていないオリジナルのものなので間違えないようにします。

パソコンにシリアルポートは2個ついていますが、 どっちがどっちかよくわからなくなります。 どっちでもいいように、取りあえず両方に getty を走らせておくことにします。

/etc/inittab の追加部分

s0:2345:respawn:/usr/local/sbin/mgetty -r ttyS0 s1:2345:respawn:/usr/local/sbin/mgetty -r ttyS1

/etc/inittab を書き換えたら「kill -1 1」で init を初期化します。 「ps auxww|grep getty」で、mgetty が動いていることを確認します。

ここまでできたら、後はシリアルケーブル CE-170TS を使って Zaurus から接続です。 接続先にダミーエントリを作ります。 必要なのは、ユーザー名とパスワードだけです。 電話番号もてきとう。DNS は無いので空欄にします。

最初繋がらないと思って悩んでいたら、 Zaurus 側が CE-PT1 の設定になっていました。 間違いやすいので注意します。正しくは「CE-PA1/PA2/PA3」に設定します。

◎ 繋がりました

うまく繋がりました。MI-C1 です。 Zaurus 側の「インターネット」機能で「つなぐ」を実行。 みごとにパソコンがモデムとして認識されました。 DNS が無いのでスタートページは開きませんが 「http://192.168.??.??」のようにして、 パソコンの Linux で動いていた apache のスタートページが開きました。

あとは IPマスカレードの設定を行い、proxy だけ登録すれば そのままインターネットへつないでページを開くことができます。

筆者は普段 Windows 上でインターネット接続を行っています。 Windows 上で簡単な proxy 機能を持つダイヤルアップ接続ソフトを使っています。 設定を行ったら、ごくごく実際に外に出ることができ、 フルパワー全開のページも表示することが出来ました。 これで電話代を気にしないで Zaurus から簡単にネット接続することが出来ます。 ブラウザの接続時間が「99:59」になっている スクリーンショットをとることだってできるでしょう。

でも残念なことに MI-TR1 で試したらうまくいきませんでした。 もしかしたら、発売時期から考えて igeti 同様のケーブル修正が必要なのかもしれません。 それとも、常駐しているモデムドライバのせいかもしれません。 このあたりはまだ詳しく調べていません。 接続に途中で失敗すると ppxpd がプロセスとして残っていることがあります。 これが残っていると mgetty 動きません。 ps auxww|grep ppxp などで調べて、不要なプロセスは kill します。

何にせよ、特に苦労もしないで説明そのまんまで、ほんとにうまくいきました。 詳しい解説を書いてくれた トラップさん に、 「ザウルス-LAN 接続計画」 に感謝です。 非常に便利ですよ。

[戻る]
[メニューに戻る] [ZAURUS総合] [DirectX] [Ko-Window] [Win32] [WinCE] [携帯電話] [その他]
フルパワー全開 Hyperでんち

Hiroyuki Ogasawara <ho>