원격에서 snmpwalk로 인해 시간 초과가 발생함

원격에서 snmpwalk로 인해 시간 초과가 발생함

A내 LAN에는 snmpd를 실행하는 세 개의 장치( , B, ) 가 있습니다 C. 커뮤니티 문자열을 제외하고 모두 동일한 snmpd 구성을 갖습니다. snmpwalkDevice 에 연결하려고 할 때를 제외하고는 모두 다른 장치에서 작동합니다 C.

장치는 주소 C로 자신을 호출할 때도 작동합니다 .127.0.0.1<LAN-IP>

snmpwalk -v 2c -c <community-string> 127.0.0.1 # OK
snmpwalk -v 2c -c <community-string> <LAN-IP>  # OK

장치를 사용하는 동안 A또는 B장치에 연결을 시도하는 동안 C시간 초과 오류가 발생했습니다.

snmpwalk -v 2c -c <community-string> <DEVICE-C-LAN-IP>
Timeout: No Response from <DEVICE-C-LAN-IP>

디버그를 켜고 실행하면 다음과 유사한 동일한 줄의 블록 6개가 표시됩니다.

Sending 54 bytes to UDP: [<DEVICE-C-LAN-IP>]:161->[0.0.0.0]:0
...
0048: 06 01 02 01  05 00                                    ......

마지막으로

Timeout: No Response from <DEVICE-C-LAN-IP>

장치에는 내가 일시적으로 비활성화한 기능이 C있습니다 .selinuxsetenforce 0

C기기( )에도 방화벽 규칙이 없는 것을 확인할 수 있습니다 .iptables -L

내가 보는 유일한 이상한 점은 service snmpd status장치에서 전화를 걸 때 입니다.C

● snmpd.service - Simple Network Management Protocol (SNMP) Daemon.
...

Feb 22 09:47:16 fedora-box systemd[1]: Starting Simple Network Management Protocol (SNMP) Daemon....
Feb 22 09:47:16 fedora-box snmpd[25707]: Can't find directory of RPM packages
Feb 22 09:47:16 fedora-box snmpd[25707]: NET-SNMP version 5.9
Feb 22 09:47:16 fedora-box systemd[1]: Started Simple Network Management Protocol (SNMP) Daemon..

따라서 서비스가 시작되지만 간단한 경고가 표시됩니다 Can't find directory of RPM packages. 이것이 범인인지 확실하지 않습니다.

이를 추적하는 데 도움을 주시면 대단히 감사하겠습니다. 감사해요

고쳐 쓰다

디버그

snmpwalk -D ALL 

6개의 요청(이상한 것은 아님)을 하고 다음과 같이 끝낼 수 있습니다.

trace: snmp_synch_input(): snmp_client.c, 178:
snmp_synch: Response (ReqID: 366399853 - Cmd 161)
trace: snmp_synch_input(): snmp_client.c, 231:
snmp_synch: status = 2 errno = -24
Timeout: No Response from 192.168.70.10
trace: netsnmp_transport_cache_remove(): snmp_transport.c, 1237:
transport:cache:close: 0x55d19b3ef8e0
trace: _tc_find_transport(): snmp_transport.c, 1210:
transport:cache:find_transport: 0x55d19b3ef8e0
trace: netsnmp_transport_cache_remove(): snmp_transport.c, 1245:
transport:cache:close: 0x55d19b3ef8e0 not found in cache

네트워크 통계

netstat -ltup | grep snmp
tcp        0      0 localhost:smux          0.0.0.0:*               LISTEN      2446/snmpd
udp        0      0 0.0.0.0:snmp            0.0.0.0:*                           2446/snmpd

지도

# nmap -v <DEVICE-C-LAN-IP>
Nmap scan report for device-c-hostname (<DEVICE-C-LAN-IP>)
Host is up (0.00069s latency).
Not shown: 998 filtered ports
PORT     STATE SERVICE
22/tcp   open  ssh
9090/tcp open  zeus-admin

=========

환경

  • 장치 A: 우분투 20.04
  • 장치 B: CentOS 7(기반)
  • 장치 C: 페도라 33

snmpd 구성 파일

agentAddress  udp:161
rocommunity <community-string> 127.0.0.1
rocommunity <community-string> <LAN-SUB-NET>/24

답변1

잘. firewalldFedora 33에서는 기본적으로 설치 및 활성화됩니다.

nmap장치로 실행하는 것은 C내가 확인해야 할 내용을 가리키는 포인터입니다.

따라서 내부 네트워크에 있는 경우 방화벽을 비활성화하십시오. 아니면 놀 수 있는 몇 가지 규칙을 설정하세요 firewalld.

관련 정보