2018年5月11日(金) アライドGS950からFDBを回収するスクリプト

アライドのGS950というL2ハブは telnetで FDBテーブルを出力するコマンドがない。
なのでWeb管理ページから収集。 (以後 CSVへ変換)

#!/bin/csh -f
set host = "hub-foo"
set magic = `curl -s -d "Login=manager" -d "Password=friend" http://$host | fgrep "top.html?" | sed 's/.*\.html?\([^"]*\)".*$/\1/'`

curl -s http://$host/iss/specific/dynamic_fdb_table_data.js\?Port=0\&From=1\&To=99999\&$magic | sed -n -e "/FdbEntry = \[/,/];/p" | sed -e s/"FdbEntry = "//g -e s/\'/\"/g -e s/\;//g | jq -r '.[] |= .+ {"HubName": "'$1'"} | .[] | [.HubName, (.FdbPort | tostring), (.FdbId | tonumber), (.FdbMacAddr | ascii_downcase | gsub("-";":"))] | @csv'


絶対位置 1053 - 1053

日記トップに戻る