net-snmp 支持ipv6

net-snmp 支持ipv6时,在/usr/local/share/snmp/snmpd.conf中添加一行

agentaddress udp6:161

但是启动的时候,有错误日志。

[root@localhost sbin]# ./snmpd -f -Le -C -c /usr/local/share/snmp/snmpd.conf
2018-08-20 16:05:44  Error opening specified endpoint "udp6:161"
2018-08-20 16:05:44  Server Exiting with code 1

查看configure文件后,发现net-snmp 有一个开启ipv6的选项。

--enable-ipv6                   Generate IPv6 ready version.

所以在net-snmp configure过程中,指定这个参数即可。

./configure --enable-ipv6
得到如下结果
---------------------------------------------------------
            Net-SNMP configuration summary:
---------------------------------------------------------

  SNMP Versions Supported:    1 2c 3
  Building for:               linux
  Net-SNMP Version:           5.7.3
  Network transport support:  Callback Unix Alias TCP UDP TCPIPv6 UDPIPv6 IPv4Base SocketBase TCPBase UDPIPv4Base UDPBase IPv6Base
  SNMPv3 Security Modules:     usm
  Agent MIB code:            default_modules =>  snmpv3mibs mibII ucd_snmp notification notification-log-mib target agent_mibs agentx disman/event disman/schedule utilities host
  MYSQL Trap Logging:         unavailable
  Embedded Perl support:      enabled
  SNMP Perl modules:          building -- embeddable
  SNMP Python modules:        disabled
  Crypto support from:        crypto
  Authentication support:     MD5 SHA1
  Encryption support:         DES AES
  Local DNSSEC validation:    disabled

---------------------------------------------------------
make
make install

这样net-snmp就支持ipv6了。