フレッツスクウェア へのルーティング

2007年2月18日

NTT東日本フレッツ公式:フレッツ・スクウェア|接続方法|フレッツ・スクウェア接続方法(ADSL/Bフレッツ、ブロードバンドルータご利用のお客さま)で公開されているフレッツスクウェアのIPアドレス帯の情報を元に、YAMAHA RTシリーズ用の静的ルーティングコマンドを標準出力するスクリプト。

#!/usr/bin/perl
use strict;
use NetAddr::IP;

use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
$ua->agent("MyApp/0.1 ");
my $req = HTTP::Request->new(GET => 'http://routing.flets/routing.html');
my $res = $ua->request($req);
my @routing;
if ($res->is_success) {
  @routing = split/\n/,$res->content;
}
else {
  print $res->status_line, "\n";
  exit;
}
foreach (@routing) {
  if (/^Route[\d]+=Add,([\d]+\.[\d]+\.[\d]+\.[\d]+),([\d]+\.[\d]+\.[\d]+\.[\d]+),,1$/) {
    my $ip = new NetAddr::IP($1,$2);
    print "ip route ",$ip," gateway pp 2\n";
    }
}
exit;

pp 2をフレッツスクウェアへの接続に利用している場合です。

あとは、

dns server select 100002 pp 2 any .flets
dns server select 500001 外部DNSサーバ any . restrict pp 1

としてやると、URLに応じてDNSを切り替えてインターネットと、フレッツスクウェアに同時にアクセスできますとさ。YAMAHAヤマハブロードバンドルーターpp select 9あたりが参考になります。