管理番号:YMHSW-4313
本設定例では、ルーターのL2MSマスター機能・Luaスクリプト機能と、L2スイッチのL2MSスレーブ機能・PoE給電制御機能を使用しています。
ルーターの対応機種は、RTX1220、RTX1210、RTX1200(Rev.10.01.16以降)、RTX830、RTX810、NVR700W、NVR510、NVR500、FWX120です。
L2スイッチの対応機種は、SWX2322Pシリーズ、SWX2320シリーズ、SWX2310Pシリーズ、SWX2310シリーズ、SWX2300シリーズ、SWX2210Pシリーズ、SWX2210シリーズ、SWX2200シリーズ、SWX2110Pシリーズ、SWX2110シリーズ、SWX2100シリーズです。
L2MSマスター(ルーター)とL2MSスレーブ(L2スイッチ)の対応リビジョンは、技術資料「L2MS」でご確認ください。
SWX2200-8PoEの温度上昇を監視し、閾値を超えたらメールで通知するLuaスクリプトです。
SWX2200-8PoEは、内部温度が60℃を超えると自動的に給電を停止します。閾値を50~55℃程度に設定することで、給電停止前に機器の内部温度異常を検知しメールで通知します。
Luaスクリプトは、luaコマンドを使用して実行してください。
実行例:lua /lua-swx-heating-rtx1200.lua
光回線に接続するためには、別途ONUが必要です。
NVR700WとNVR510は、本体のONUポートに小型ONUを装着することで、光回線に接続できます。
対応機種のうち、設定例を掲載している機種は、以下のとおりです。
機種 | 掲載内容 | 備考 | |
---|---|---|---|
ルーター | RTX1220 RTX1210 RTX1200 RTX830 RTX810 NVR700W NVR510 NVR500 | コマンド設定例 Luaスクリプト例 |
L2MSマスター機能、 Luaスクリプト機能 |
L2スイッチ | SWX2200-8PoE | L2MSスレーブ機能 |
LANインターフェースの設定 (LAN1ポートを使用) |
ip lan1 address 192.168.100.1/24 |
---|---|
WANインターフェースの設定 (LAN2ポートを使用) |
pp select 1 pp always-on on pppoe use lan2 pp auth accept pap chap pp auth myname (ISPに接続するID) (ISPに接続するパスワード) ppp lcp mru on 1454 ppp ipcp ipaddress on ppp ipcp msext on ip pp mtu 1454 ip pp nat descriptor 1 ip pp secure filter in 1020 1030 2000 ip pp secure filter out 1010 1011 1012 1013 1014 1015 3000 dynamic 100 101 102 103 104 105 106 107 pp enable 1 ip route default gateway pp 1 |
NATの設定 | nat descriptor type 1 masquerade |
DHCPの設定 | dhcp service server dhcp server rfc2131 compliant except remain-silent dhcp scope 1 192.168.100.2-192.168.100.191/24 |
DNSの設定 | dns host lan1 dns server (ISPより指定されたDNSサーバーのIPアドレス) dns private address spoof on |
フィルターの設定 | ip filter source-route on ip filter directed-broadcast on ip filter 1010 reject * * udp,tcp 135 * ip filter 1011 reject * * udp,tcp * 135 ip filter 1012 reject * * udp,tcp netbios_ns-netbios_ssn * ip filter 1013 reject * * udp,tcp * netbios_ns-netbios_ssn ip filter 1014 reject * * udp,tcp 445 * ip filter 1015 reject * * udp,tcp * 445 ip filter 1020 reject 192.168.100.0/24 * ip filter 1030 pass * 192.168.100.0/24 icmp ip filter 2000 reject * * ip filter 3000 pass * * ip filter dynamic 100 * * ftp ip filter dynamic 101 * * www ip filter dynamic 102 * * domain ip filter dynamic 103 * * smtp ip filter dynamic 104 * * pop3 ip filter dynamic 105 * * submission ip filter dynamic 106 * * tcp ip filter dynamic 107 * * udp |
L2MSの設定 | switch control use lan1 on |
設定値 | -- 温度の閾値。この値以上の温度となった場合にメールで通知する(1, 2, ..) -- switch control function get status-poe-temperature コマンドを実行する間隔 --[[ -- メールで通知する switch control function get function コマンドを -- メールの設定 -- メールの送信失敗および温度取得に失敗時に出力する |
---|---|
接続されているSWX2200-8PoEの機器の名前を取得する関数 | function get_switch_name() name = "スイッチ名の取得に失敗しました" return name |
指定された経路にあるSWX2200-8PoEの温度を計測する関数 | function get_switch_temperature() temperature = nil return temperature |
メールで送信するコマンドの実行結果を出力する関数 | function exec_command(cmd) rtn, str = rt.command(cmd) return rtn, string.format("# %s\r\n%s\r\n", cmd, str) |
メールの設定、送信を実行する関数 | function send_mail(sw_name, temperature) mail_tbl.text = "スイッチの温度が閾値以上となりました。\r\n\r\n\スイッチの識別名: " for i, cmd in ipairs(cmd_switch_tbl) do mail_tbl.subject = string.format("temperature over threshold (%s)", time_stamp()) return rtn |
現在の日時を取得する関数 | function time_stamp() t = os.date("*t") |
メインルーチン | local rtn, str, sw_name, route, temperature if temperature_threshold < 1 then if interval_sec < 1 then while (true) do -- 経路を選択する -- 温度の計測 -- 閾値以上となっていた場合、メールを送信する -- 設定値で指定された秒数待機する |
ご相談・お問い合わせ