Escargo98

Computer and Electronics

I-O DATA NP-BBRS Broadband Router用スクリプト


■概要
ODNのADSLモデムである住友電工TE-4121C(8Mbps)では、ユニバーサルプラグアンドプレイが使用できない。このような場合、Microsoft MSN Messangerは複数のPCから同時に使用することができなくなる。今回 I-O DATA NP-BBRS Broadband Routerを導入し、TE-4121Cはブリッジ動作させることにより、NP-BBRSのユニバーサルプラグアンドプレイ機能を使用する。同時にLinux自宅サーバにて公開しているWebサーバの為に、ブロードバンドルータよりグローバルIPアドレスを取得、DynamicDNSへ自動反映する方法も示す。

※注意 TE-4121C(NAT動作モード)を使ってDynamicDNSへのIPアドレス自動更新する場合はこちらのスクリプトです。


■概略手順
手順は大まかに次のようになります。
(1)TE-4121C をブリッジ動作させる。
(2)I-O DATA NP-BBRSをPPPoE動作させる。
(3)Linux syslogサーバでルータに設定されているIPアドレス情報を取得して、Dynamic DNSに反映する。

syslogで取得されたサンプル
 

■手順詳細

1 .TE-4121Cのブリッジ動作への切り替え。
プロバイダよりレンタルしているTE-4121CはNATルータとして動作しています。
NATルータをただのブリッジ動作させる必要があります。 日本テレコムJ-DSLサービスでは、TE-4121Cに対しての詳細なマニュアルは付属していません。それでインターネット上で検索をかけたところ、手順を見つけました。E-Accessさんありがとう!
このページのTE4121C(住友電気工業社製) PPPoE(ブリッジモード)接続のための設定方法 動作モード設定変更方法 Ver1.1(PDF:1.18MB)のところからドキュメントを手に入れます。あとは、ドキュメントの指示書にしたがって動作を切り替えるだけです。


2 .I-O DATA NP-BBRSをPPPoE動作させる
私のプロバイダは日本テレコムJ-DSL(ODN)ですが、NP-BBRSの取り扱い説明には IP自動取得接続と書かれていました。これでは、ルータを買ってユニバーサルプラグアンドプレイを動かす目標に意味がなくなってしまうので、この取り扱い説明の記述は 無意味です。で、PPPoE動作をさせるわけですが、その方法自体は、取り扱い説明に載っている方法で設定を行います。あと、バーチャルサーバの設定およびSyslogサーバの設定を行います。(※Syslogに状態が送れるなんて、MN-128 PAL以来でひさしぶりでわくわくしますです。)


3.Linux syslogサーバでIPアドレス情報を取得して、Dynamic DNSに反映する
次のような I-O DATA NP-BBRS用スクリプトを書きました。最適とはいえないのかもしれませんが
一応動くので良しとします。


#!/bin/bash
#--------------------------------------------------------------------
# sync-dynamic-dns script
#
# Get global ip address from MegaBitGear TE-4111&4121C ADSL Modem,then
# syncronize global ip and domain name at dynamic-dns service.
#
# Get global router's ip address from syslog file.
##---------------------------------------------------------------------
# Rev 1.0 escargo98 (2001-10-13) Created first version for TE-4000.
# Rev 1.1 escargo98 (2001-11-04)
# Rev 1.1 escargo98 (2002-08-19) Modified for TE-4121 to use "dyndnsupdate" comman
d.
# Rev 1.2 escargo98 (2003-05-04) Modified for IODATA NP-BBBRS.
#---------------------------------------------------------------------
#
DDUPLOCATION=/sbin
SYSLOGFILE=/var/log/syslog
REGISTRATE_DOMAIN=(Domain NAME)
DYNDNS_USER=(Dynamic DNS Account)
DYNDNS_PASS=(Dynamic DNS Password)

IP=`cat $SYSLOGFILE|grep 'Local IP address changed to '|sed s/'.*to '//g|tail -1
`
# for debugging
#IP=210.231.28.189

if [ "$IP" == " " ]; then
$IP=""
fi

#
if [ -n "$IP" ]; then
echo $IP
$DDUPLOCATION/dyndnsupdate -a $IP -h $REGISTRATE_DOMAIN -l -w -u $DYNDNS
_USER:$DYNDNS_PASS
else
echo "IP not changed,skipped updating."
fi
 

 

Visitor

 

This is server ARAD

Copyright (C) 2002-2004 escargo98 Mail All rights reserved.

Top

Home