2006/4/8 Sat

ルータマシンでPPPoEマルチセッション

Filed under: Fedora — nico @ 2:29:53

まぁ、マルチセッションすると何か得するかって程でもないんですが、以前挑戦して失敗してたので、再挑戦してみました。

あー、ちなみに、何も得しないのにやるわきゃ無いんで、一応何考えたかっつーと、NTTのFletsのサービスですと、通常のプロバイダの接続以外にNTTの専用サービスを行ってるネットワークに繋げられるんですよ。
フレッツ・スクウェアってヤツですな。
まぁ、実際は色々アニメとか無料配信とかしてるんで、メリット無いワケでもないのかも知れませんが、如何せん、ウチの回線速度だと実用的でないので・・・orz<ストリーミング再生

でまぁ、前回は良く調べないでやってたので、2箇所で失敗してました。
1.フレッツ・スクウェア宛のルーティングの設定
2.*.fletsとかゆー怪しいwドメイン名の解決
今回は、主にその対策・・・ってヤツですな。

まず、マルチセッションですが、Fedora4とかで使われてるバージョンのrp_pppoeは何にも考えずにマルチセッションできるようになってるので、

# adsl_setup

とかやって新規にpppデバイス作成すれば準備完了だったりします。
ppp0(通常プロバイダ)、ppp1(フレッツスクウェア)とかゆー名前でpppデバイスできてたとしたら、

# ifup ppp0
# ifup ppp1

で、マルチセッション自体はあっさり張れてたり。

ただ、この状態だと後から上げたpppデバイスにデフォルトルータ奪われて、実に都合が悪いのでフレッツスクウェア側はデフォルトルート設定しないように変更。
具体的には、
/etc/sysconfig/network-scripts/
にある、ifcfg-*ってファイルのフレッツスクウェアのpppデバイス用ファイル(ppp1ならifcfg-ppp1)の

DEFROUTE=yes

DEFROUTE=no

に書き換え。

で、次にフレッツ・スクウェア向けパケットのルーティングを、ちゃんとフレッツ・スクウェアに繋がったpppインターフェース宛に向けないとイケナイんですが、ココで難問が。
・ルーティングテーブルに指定できるのは、インターフェース名
・ppp接続は、接続された順にインターフェース名がppp0、ppp1・・・と振られて行く
って事で、フレッツ・スクウェアに繋がったpppインターフェースを何とか特定しないとちゃんと指定できないわけですなぁ(汗)
ってゆーか、rp_pppoeがデフォルトだとpppのデバイス名を「ppp0」「ppp1」とか振るんで、ややこしさに拍車が掛かるんですがw

解決編ですが、ppp接続が有効になると
/etc/ppp/ip-up.local
ってスクリプトが(あれば)実行されるとゆーステキ仕様なんですが、このスクリプトの1番目の引数で接続したインターフェース名、6番目の引数でデバイス名が拾えます、実は。
実はって書いたのは、1~5番目を使ってこの問題に何とか対応って人は色々いたんですが、その物ズバリの6番目を使ってる人が何故か居なかったので・・・(汗)
(特定バージョンの独自仕様とか言わないよなぁ・・・)

って事で、ウチではこんなスクリプト使ってやってみました。

#!/bin/sh
INTERFACE=”$1″
LOCAL_IP=”$4″
PEER_IP=”$5″
DEVICE=”$6″

case “$DEVICE” in
   “ppp2″)
  cat /etc/sysconfig/static-routes-flets | while read dev args; do
    /sbin/route add -$args $INTERFACE
  done
  ;;
esac

えーと、ppp2ってのが、ウチでのフレッツ・スクウェア用デバイスなので、まぁ使おうってキトクな人は各自適当に直してくださいw
(ってゆーか、直値やめれ>俺)

後は、このスクリプト用に
/etc/sysconfig/static-routes-flets
この辺参照して

pppx net 220.210.194.0 netmask 255.255.255.128
pppx net 220.210.195.0 netmask 255.255.255.192
pppx net 220.210.195.64 netmask 255.255.255.192
pppx net 220.210.197.0 netmask 255.255.255.224
pppx net 220.210.199.0 netmask 255.255.255.224
pppx net 220.210.199.128 netmask 255.255.255.240
pppx net 220.210.199.160 netmask 255.255.255.240
pppx net 220.210.199.176 netmask 255.255.255.240
pppx net 220.210.199.32 netmask 255.255.255.224
pppx net 220.210.199.200 netmask 255.255.255.248
pppx net 220.210.199.64 netmask 255.255.255.240
pppx net 220.210.203.0 netmask 255.255.255.224

てなファイル準備してフレッツ・スクウェアに繋ぎなおせばルーティング問題は解決。
ふぅ、長かった。

で、DNSの方はウチはLAN向けキャッシュサーバをルータに兼業させてたりするので、
/etc/named.conf

zone “flets” {
  type forward;
  forward only;
  forwarders {
    220.210.194.67;
    220.210.194.68;
  };
};

zone “194.210.220.in-addr.arpa” {
  type forward;
  forward only;
  forwarders {
    220.210.194.67;
    220.210.194.68;
  };
};

てな感じで追加してbind再起動して終了。

で、ココまで苦労して設定したワリには、ウチでは有効活用されてなかったりするワケですよ・・・orz

コメント (2) »

  1.  ちょっと対抗、って気づいたら卑怯な手が使えたウチの環境www
     こないだ買い換えたBARが、マルチに対応してまして、フレッツスクエアの独自ドメインの時だけ、そっちに繋がるようにしてみました。
     ウチは局に近いせいもあって、スクエア直だと速い速い。
     ガンダムちゃんも、普通に見れました。
    後、なんかガンダム声優さんがガンダム漫才するのもオモロかったよ、えぇ。

    コメント by もと — 2006/4/8 Sat @ 11:01:12

  2. >こないだ買い換えたBARが、マルチに対応してまして
    最近の市販ルータだとマルチセッション対応してますなー。
    実際、現状フレッツスクウェア以外使い道ない機能な気はするんだけどw
    マルチセッションで複数プロバイダ繋いで、最短経路使ってくれたりとかアレば便利なんだろーけどねぇ:-P

    コメント by にこ — 2006/4/8 Sat @ 19:39:17

コメント RSS トラックバック URL

コメントをどうぞ

Link Free. Copyright (C) 2005-2007 nico. All rights reserved.
HTML convert time: 0.652 sec. Powered by WordPress ME