RTX810의 NAPT 테이블, ARP 테이블, DHCP 사용량을 Zabbix에 기록
개요
때때로 사원으로부터 무선 LAN으로 접속이 끊긴다는 정보가 전해지고 있다.
최근 직원 증가에 따라 단말기가 늘어나 라우터(RTX810)의 NAPT 테이블이 넘치는 것이 아닌가?
불행히도 SNMP를 사용하여 RTX810의 NAPT 테이블의 사용량을 조사할 수 없었기 때문에, 외부 체크 스크립트를 넣어 조사해 보았다.
그 외, ARP 테이블과 DHCP의 리스 상황도 조사했다.
환경
외부 검사 스크립트
NAPT 테이블
nat_table_usage.sh#!/bin/bash
HOST=$1
PASS=(RTXのウェブ管理画面のパスワード)
COMMAND="show nat descriptor address"
SESSION=`wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command.html -O - 2>/dev/null \
| grep HTTPD_SESSION_ID | awk -F'"' '{print $6}'`
wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command_set.html \
--post-data="HTTPD_SESSION_ID=${SESSION}&COMMAND=${COMMAND}&x=10&y=10" -O - 2>/dev/null \
| iconv -f Shift-JIS -t UTF-8 | grep "個使用中" | awk -F' |個' '{print $10}'
하는 일은 다음과 같습니다.
#!/bin/bash
HOST=$1
PASS=(RTXのウェブ管理画面のパスワード)
COMMAND="show nat descriptor address"
SESSION=`wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command.html -O - 2>/dev/null \
| grep HTTPD_SESSION_ID | awk -F'"' '{print $6}'`
wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command_set.html \
--post-data="HTTPD_SESSION_ID=${SESSION}&COMMAND=${COMMAND}&x=10&y=10" -O - 2>/dev/null \
| iconv -f Shift-JIS -t UTF-8 | grep "個使用中" | awk -F' |個' '{print $10}'
<input type="hidden" name="HTTPD_SESSION_ID" value="********">
얻기 show nat descriptor address
를 지정하여 실행 awk
에서 추출합니다 이 스크립트를 Zabbix 서버
/usr/lib/zabbix/externalscripts/
에 넣고,chmod +x nat_table_usage.sh
에서 실행 가능하게 하십시오.정확하게는 NAT가 아니라 NAPT이지만, RTX측의 커맨드명에 맞춘다.
docker로 Zabbix 서버를 기동하는 경우는, alpine에 들어가 있는 wget의 버젼이 낡기 때문에, alpine 베이스의 것이 아니라 Ubuntu 베이스의 것을 추천합니다.
ARP 테이블
arp_table_usage.sh
#!/bin/bash
HOST=$1
PASS=(RTXのウェブ管理画面のパスワード)
COMMAND="show arp"
SESSION=`wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command.html -O - 2>/dev/null \
| grep HTTPD_SESSION_ID | awk -F'"' '{print $6}'`
wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command_set.html \
--post-data="HTTPD_SESSION_ID=${SESSION}&COMMAND=${COMMAND}&x=10&y=10" -O - 2>/dev/null \
| iconv -f Shift-JIS -t UTF-8 | grep "カウント数" | awk -F':' '{print $2}'
DHCP
dhcp_status.sh
#!/bin/bash
HOST=$1
PASS=(RTXのウェブ管理画面のパスワード)
COMMAND="show status dhcp"
SESSION=`wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command.html -O - 2>/dev/null \
| grep HTTPD_SESSION_ID | awk -F'"' '{print $6}'`
wget --http-user="" --http-password="${PASS}" http://${HOST}/detail/command_set.html \
--post-data="HTTPD_SESSION_ID=${SESSION}&COMMAND=${COMMAND}&x=10&y=10" -O - 2>/dev/null \
| iconv -f Shift-JIS -t UTF-8 | grep "割り当て中アドレス数" | awk -F':' '{print $2}'
Zabbix 설정
아이템
Zabbix 서버에 액세스하여 "Configuration", "Hosts"또는 "Templates"에서 RTX810의 "Item"을 선택하십시오.
Create Item을 클릭하여 항목을 만들고 각 항목을 설정합니다.
nat_table_usage.sh["{HOST.CONN}"]
"마찬가지로
arp_table_usage.sh["{HOST.CONN}"]
와 dhcp_status.sh["{HOST.CONN}"]
의 Item도 작성한다."{HOST.CONN}"
부분에는 Host interface
에 지정된 IP 주소가 들어 있습니다.Graph
다음에 「Graph」로부터 「Create Graph」를 사용해 그래프를 작성한다.
외형은 기호로.
결과
잠시 동안 데이터를 저장하면 그래프를 살펴보십시오.
최대 3000행 정도 사용하고 있는 것 같지만, RTX810은 최대 10000까지 갈 수 있으므로,
아직 넘치지 않은 것 같다.
다음으로 수상한 것은 AP의 동시 접속수이므로, 다음은 그쪽을 조사한다.
Reference
이 문제에 관하여(RTX810의 NAPT 테이블, ARP 테이블, DHCP 사용량을 Zabbix에 기록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/330k/items/d04adc01b936e3bb1102
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(RTX810의 NAPT 테이블, ARP 테이블, DHCP 사용량을 Zabbix에 기록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/330k/items/d04adc01b936e3bb1102텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)