2015-07-01 78 views
1

我正在使用net-snmp在Linux中收集系統信息。 但我發現有問題。如何更改linux中的net-snmp陷阱發送端口?

當我通過netstat檢查Net-SNMP的端口使用情況時,發現使用3個UDP端口的net-snmp。

這是結果。

[[email protected] snmp]# netstat -anp | grep snmp 

tcp  0  0 127.0.0.1:199    0.0.0.0:*     LISTEN  6392/snmpd   
udp  0  0 0.0.0.0:49005    0.0.0.0:*        6392/snmpd   
udp  0  0 0.0.0.0:161     0.0.0.0:*        6392/snmpd   
udp  0  0 0.0.0.0:44837    0.0.0.0:*        6392/snmpd  

,你可以看到,使用2個UDP端口,而161 的SNMPD還我發現爲什麼2個UDP端口隨機通過SNMP佔據。

這些端口用於發送snmp陷阱。 當我刪除tran2sink和通知連接選項時,不再出現2個UDP端口。

這是我的snmpd.conf

########################################################################### 
# SECTION: Trap Destinations 
# 
# Here we define who the agent will send traps to. 

# trap2sink: A SNMPv2c trap receiver 
# arguments: host [community] [portnum] 

trap2sink 192.168.1.4 

# informsink: A SNMPv2c inform (acknowledged trap) receiver 
# arguments: host [community] [portnum] 

informsink 192.168.1.4 NMS_COM 

# trapcommunity: Default trap sink community to use 
# arguments: community-string 

trapcommunity NMS_COM 

# authtrapenable: Should we send traps when authentication failures occur 
# arguments: 1 | 2 (1 = yes, 2 = no) 

authtrapenable 1 

我的程序必須使用40000〜50000的UDP端口的配置的一部分。 所以我想使用這些陷阱選項並更改端口。

我該如何修復端口?

回答

0

您可以嘗試設置指令的端口如下:
trap2sink 1.1.1.1:port_num例如, trap2sink 1.1.1.1:162


我希望我明白你的問題,這將有所幫助。

0

這些是SNMP臨時端口。下面是一個Microsoft support page他們報價:

雖然SNMP服務正在運行,它可以通過使用netstat 命令行實用程序可以注意到,除了衆所周知的端口 發送和接收SNMP陷阱(161/162)該服務也已經創建了一個隨機臨時端口 。

隨機端口的使用意圖的行爲,並打開發送的 宗旨,以「管理」陷阱

...

這個端口將同時SNMP系統留在 服務正在運行,但未被有效使用 ,除非管理陷阱將被髮送出站。由於SNMP不在 上偵聽此隨機端口上的入站數據包,因此不會出現 安全漏洞。