Practice of Programming

プログラム とか Linuxとかの話題

Linuxルータ化

dnscacheのキャッシュサイズを大きくしてはみたものの、やっぱりだめでした。
というわけで、Linuxをルータにしました。

下記みたいな構成です

           10.0.0.2         192.168.0.0/16
             eth0         eth1
[ADSLモデム] ---- [Linux] ---- [hub] -+-- [無線AP]
  10.0.0.1         apache             |    dhcpd
                   dnschache          |
                   他                 +-- [他のPCたち]
                             

ADSLモデムAterm WD735GVの設定

まず、PPPoEブリッジにするのですが、「基本設定」から変更します。


PPPoEブリッジを有効にするにチェック
常時接続から要求時接続に変更


無駄にはまってしまったんですが、内側のPCたちが接続しようとすると、
すぐにもとの設定で接続してしまい。ADSLブリッジになりません。


なので、接続先設定で、ダミーのID/Passwordを突っ込んだ接続先を作って、
それを優先にしておいて、接続できないような環境にしてしまいました。

Linuxの設定

カード追加

NIC2枚ということですが、DELLのvostro 1000 には、ExpressCardしかありません。
PLANEXのGEX-1000Tを買いました(他に選択肢はなさげ)。特に何もせずに認識してくれた模様。

% lspci 
...
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 19)
...

で、確認。

しかし、GEX-1000T、コネクタ部分がやわくて、恐い。

pppoeconf

pppoeconf で、設定します。

 % pppoeconf eth0

質問どおりに答えていきます。
自前でDNSもってる人は、resolve.confの書き換えはnoで。

設定ファイルで、
/etc/ppp/peers/dsl-providerの、usepeerdnsがコメントであればOK

IPの設定

/etc/network/interfaceに適当に。
既存の設定での変更は、default gatewayを以前のモデムのIPにしてたので、そこを消したりしました。
無線APとかは、新しいLinuxルータのIPをdefault gatewayに設定してやります。
dhcpdで割り振ってないやつとかも同様に変更。

iptablesの設定

マスカレードの設定とかをscriptに書きます。
外側のIPとか、インターフェース名は、ifconfigパースして取ってくりゃいいでしょう。


自宅サーバやってる場合は、IPアドレスが変わったら、DNSの情報を変更するための何かを動かしてると思いますが、
そいつがupdateかけるところに、その scriptを動かすようにしときましょう。

問題点

Nintendo DS がつながらない! orz
UPnPとか関係あんのかな...。

あぁ、DSは、IP固定にしてたんだ!と、これを書いて思い出した。今、つながってます。なんで固定にしたんだろうか...。こんなしょうもないネットワークでも影響範囲は色々あってめんどくさい。

久々にやったけど、だるいな。素直に買えば良いと思った。

関係ないけど

zaurusのCFのNIC買いました。CF-100TX2。有線ですけどねー残念なことに。
下記のサイトに設定方法とか書いてます。

りなざう事始
http://hp.vector.co.jp/authors/VA012337/misc/zaurus.html#pcmcia

zaurusぜんぜん使ってないけどね。