

登録済みのホストに対してはIPアドレスを付与してインターネットアクセスを許可し、不正なホストからのアクセスを遮断する設定例です。
本設定例のLuaスクリプトでは、MACアドレスフィルタ機能によって出力されるログを監視しています。
検出したログに記録されたMACアドレスがCSVファイルに記載されている場合のみ、DHCPでIPアドレスを付与します。
CSVファイルにMACアドレスが記載されていない場合には、当該ホストが接続されているSWX2200のポートを遮断します。
CSVファイルにはアクセスを許可するホストのホスト名とMACアドレスを記述します。下記のように1行に1つのホストを記入していきます。
また、CVSファイルはLuaスクリプトの設定値filenameに指定します。
- CSVファイル記述例
- (ホスト名1),(MACアドレス1)
- (ホスト名2),(MACアドレス2)
RTX1200の設定例
| イーサネットフィルタの設定 |
ethernet filter 1 pass-nolog *:*:*:*:*:* 01:a0:de:00:e8:13 0 e8,12 |
|---|---|
| LANの インタフェースの設定 (LAN1ポートを使用) |
ip lan1 address 192.168.100.1/24 |
| WANの インタフェースの設定 (LAN2ポートを使用) |
pp select 1 |
| NATの設定 |
nat descriptor type 1 masquerade |
| DHCPの設定 |
dhcp service server |
| DNSの設定 |
dns server (ISPより指定されたDNSサーバのIPアドレス) |
| SWX2200の設定 |
switch control use lan1 on |
| SYSLOGの設定 |
syslog notice on |
| フィルタの設定 |
ip filter source-route on |
| Luaスクリプトのスケジュール設定 |
schedule at 1 startup * lua /swx2200_lua_pc_check_rtx1200.lua |
Luaスクリプト例
| 設定値 |
-- 接続を許可するPCリストのファイル名(絶対パスで指定) |
|---|---|
| ホスト検索 |
function search_host(mac) if (port) then if (not route) then while true do |
| 不正PC接続ポートのシャットダウン |
function port_shutdown(mac) |
| メインルーチン |
local bind = {} -- 正規PCの登録 if (not fh) then -- 接続PCの監視 while (true) do |