« [仕事アプリ]サブネットマスクの計算が楽になる「Toolkit」 | トップページ | YAMAHA RTX系 統計グラフから機器固有の癖を読む »

2015年5月18日 (月)

YAMAHA RTX系 セッション値を強引にグラフに落とす!

ちょっとADSI系のソースで悩んでいまして・・・ちょっと息抜きで、SNMPで取得出来たらいいなぁ~と昔から思っているRTX系ルーターのセッションカウントをSystemAnswerG2で強引にグラフ化するというのをやってみました。

取得できたグラフはこんな感じ~
Rtxnatcount_2
途中途切れているのはちょっとしくじってエラー中のやつだったりします。1分間隔での取得なんで、1分毎にログインしてコマンド叩いてログアウトしてと言うのをやっているので、チョーナンセンスです(笑)。でもグラフに見えるのって気持ちいいなぁ・・・
ちょっとグラフにしただけでこれだけ数値が変動しているのが判るんですからね。その都度コマンド叩いて眺めていても実感湧かないすからね。

で、そもそもルーターの情報で欲しい情報といえば、CPU、トラフィック、そしてセッション数ですね。あとは人によってはフィルタのpass/rejectカウントとか欲しいかもしれませんが、昨今はトラフィック量の増加はもとよりセッション数の増加の方が悩ましく、トラフィック量がたいしたことが無くても、ふんづまりを見るには僕ら(?)としてはセッション数が大事になってきますです。つまりトラフィックとセッション数は比例しないということっすね。

RTX系もセッション数が見られないというわけではないんです。コマンドでいつだったか対応されましたし、RTX1210ではGUIからセッション数が確認できます。

ちなみにRTXではセッション数という表現よりはNATデスクリプタの使用数ですかね。
なのでコマンドだと以下の様になります。

RTX1200> show nat descriptor masquerade port summary
Interface            Desc Num    Outer Address                Used / All
-------------------  ----------  ---------------------------  -----------
LAN2(1)                    1000  primary/xxx.xxx.xxx.xxx         1490/20000
-------------------  ----------  ---------------------------  -----------
RTX1200>

こんな感じです。

(しつこいようですが)この値がSNMPで見られるとウレシーのに対応されないんですよね。何か事情があるのかしら。

で、すでにグラフでの取得図を見せておりますが、全く持って推奨しない方法ではありますので参考程度ですが、LinuxのExpectを使って値をとにかく取り出しちゃう作戦です。

expectについてはググってもらうとして、シェルのサンプルは以下の通り。

### rtxnat.sh ###
#!/usr/bin/expect
spawn telnet $argv
expect "Password:"
send "\r"
expect "Username:"
send "ユーザー名\r"
expect "Password:"
send "パスワード\r"
expect ">"
send "show nat descriptor masquerade port summary\r"
expect ">"
send "exit\r"
close

これがとりあえず、勝手にログインして勝手にコマンドを打ち込むシェルです。いたってシンプルですね。
で、これだとSystemAnswerG2にまだ取り込めませんので、取り込むためのスクリプトを書きます。

### rtxnat.pl ###
#!/usr/bin/perl -w

#use strict;
#use warnings;
#use Switch;

use Getopt::Long qw(:config posix_default no_ignore_case gnu_compat);

main();
exit;

sub show_help {
        my $help_doc;
        $help_doc ="Usage:\n";
        $help_doc.="-H or --host 監視対象ホストを指定。\n";
        $help_doc.="-h or --help ヘルプを表示します。\n";
        return $help_doc;
}

sub main {

        #初期値設定
        my %opts = (
                host => '',
                help => '');

        #Option処理
        if(scalar @ARGV<1) {
                die show_help();
        }

        GetOptions(\%opts, qw(
        host|H=s
        help|h
        ));

        #ヘルプメッセージ表示
        if($opts{help}) {
                print &show_help();
                exit 0;
        }
        open (RTXNAT, "/sa/libexec/rtxnat.sh $opts{host} | grep LAN2 | cut -c 62-67|");
while (<RTXNAT>) {
/(\d+)/ && ($natmas = $1);
         };
        close (RTXNAT);
        print "value=".$natmas.";" ;
}

こんなかんじでエラーチェックもしてないし適当で(cutのとことかw)、かなり荒いですが、SystemAnswerG2は「value=数字;」と言うのさえ守ってやればOKです。変であれば普通に嫌がってエラー吐くだけなので、動けばOKです(ぇ。
ちなみに2つのファイルはSAエンジン(monitor)サーバー「/sa/libexec」の中に置いておくです。

で、SystemAnswerG2での設定は・・・
Rtxnatcountset
こんだけ。

RTXのファームやコマンドの対応機種にもよりますが、汎用性とオプションのわずらわしさも無くして、シンプルにしました。オプションパラメータとして必要になるのは、インターフェースですかね。NATはLAN2を使っているのかLAN3なのかとか。

問題点としては、今回Expectでユーザー名/パスワードによるログインにしていますが、RTXはユーザー名なしでログイン出来るのが普通でした。もちろんどちらの方法でも行けるのですが、ユーザー名無しの方でログインをしておくと、何故かユーザー名ログインのほうが上手くログイン出来ません・・・。そーいう仕様だったかな?詳しく調べていないので、とりあえずすぐには困らないので、しばらくグラフの観察しときましょ。

とりあえず、とにかく、おすすめする手段ではありません。ただ、私の様に、最近なーんかネットの接続が重たいように感じるんだよなぁ・・・とか思った時に見るのはアリかもということで。

やるまいと思っていたのにやってしまった・・・orz

« [仕事アプリ]サブネットマスクの計算が楽になる「Toolkit」 | トップページ | YAMAHA RTX系 統計グラフから機器固有の癖を読む »

System Answer G2」カテゴリの記事

YAMAHA RTX」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: YAMAHA RTX系 セッション値を強引にグラフに落とす!:

« [仕事アプリ]サブネットマスクの計算が楽になる「Toolkit」 | トップページ | YAMAHA RTX系 統計グラフから機器固有の癖を読む »

2019年4月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

IT

  • 小泉 耕二: 2時間でわかる 図解「IoT」ビジネス入門
  • 日経コンピュータ: すぐわかるIoTビジネス200
  • Massimo Banzi: Arduinoをはじめよう 第3版
  • みやた ひろし: インフラ/ネットワークエンジニアのためのネットワーク技術&設計入門
  • 板垣 政樹、 小坂 貴志: プレゼンを100%成功させる!! ITエンジニアの英語
  • 渡辺和彦: ネットワーク仮想化 基礎からすっきりわかる入門書

ITな機器

  • OSOYOO: B00UKXHKXC Arduinoをはじめよう 互換キット UNO R3対応互換ボード 初心者専用実験キット 基本部品セット20 in 1 Arduino sidekick basic kit
  • Juniper Networks: Juniper SRX100H
  • ヤマハ: ヤマハ スマートL2スイッチ 24ポート SWX2200-24G
  • ヤマハ(YAMAHA): ヤマハ ギガアクセスVPNルーター RTX1210

Amazon