SNMPD(8)

NAME
snmpd - daemon to respond to SNMP request packets.

SYNOPSIS
snmpd [OPTIONS] [LISTENING ADDRESSES]

DESCRIPTION
snmpd is an SNMP agent which binds to a port and awaits requests from SNMP management software. Upon receiving a request, it processes the request(s), collects the requested information and/or performs the requested operation(s) and returns the information to the sender.

OPTIONS

-a  Log the source addresses of incoming requests.

-A  Append to the log file rather than truncating it.

-c FILE
    Read FILE as a configuration file (or a comma-separated list of configuration files).

-C  Do not read any configuration files except the ones optionally specified by the -c option. Note that this behaviour also covers the persistent configuration files. This may result in dynamically-assigned values being reset following an agent restart, unless the relevant persistent config files are explicitly loaded using the -c option.

-d  Dump (in hexadecimal) the sent and received SNMP packets.

-D[TOKEN[,...]]
    Turn on debugging output for the given TOKEN(s). Without any tokens specified, it defaults to printing all the tokens (which is equivalent to the keyword "ALL"). You might want to try ALL for extremely verbose output. Note: You can not put a space between the -D flag and the listed TOKENs.

-f  Do not fork() from the calling shell.

-g GID
    Change to the numerical group ID GID after opening listening sockets.

-h, --help
    Display a brief usage message and then exit.

-H  Display a list of configuration file directives understood by the agent and then exit.

-I [-]INITLIST
    This option specifies which modules you do (or do not) want to be initialized when the agent starts up. If the comma-separated INITLIST is preceded with a '-', it is the list of modules that you do not want to be started. Otherwise, INITLIST is the list of modules to be started. To get a list of compiled modules, run the agent with the arguments -Dmib_init -H (assumes you have debugging support compiled in).

-l [FILE]
    Log all output from the agent (including stdout and stderr) to FILE. If no filename is given, log to a default file set at compile time (normally /var/log/snmpd.log).
    This option is being deprecated, and '-Lf FILE' should be used instead.

-L[efos]
    Specify where logging output should be directed (standard error or output, to a file or via syslog). See LOGGING OPTIONS in snmpcmd(5) for details.
    This option deprecates the -l -s and -S options.

-p FILE
    Save the process ID of the daemon in FILE.
    This option deprecates the -P option.

-P FILE
    Save the process ID of the daemon in FILE. This option is being deprecated, and '-p FILE' should be used instead.

-q  Print simpler output for easier automated parsing.

-r  Do not require root access to run the daemon. Specifically, do not exit if files only accessible to root (such as /dev/kmem etc.) cannot be opened.

-s  Use syslog for logging.
    This option is being deprecated, and '-Ls FACILITY' should be used instead.

-S d|0-7
    Specifies the syslog facility to use when logging to syslog.
    This option is being deprecated, and '-Ls FACILITY' should be used instead.

-u UID
    Change to the user ID UID (which can be given in numerical or textual form) after opening listening sockets.

-v, --version
    Print version information for the agent and then exit.

-V  Symbolically dump SNMP transactions.

-x ADDRESS
    Listens for AgentX connections on the specified address rather than the default '/var/agentx/master'. The address can either be a Unix domain socket path, or the address of a network interface. The format is the same as the format of listening addresses described below.

-X  Run as an AgentX subagent rather than as an SNMP master agent.

LISTENING ADDRESSES
By default, snmpd listens for incoming SNMP requests only on UDP port 161. However, it is possible to modify this behaviour by specifying one or more listening addresses as arguments to snmpd. A listening address takes the form:

    [<transport-specifier>:]<transport-address>

At its simplest, a listening address may consist only of a port number, in which case snmpd listens on that UDP port on all IPv4 interfaces. Otherwise, the <transport-address> part of the specification is parsed according to the following table:

    <transport-specifier>
        <transport-address> format

    udp hostname[:port] or IPv4-address[:port]

    tcp hostname[:port] or IPv4-address[:port]

    unix
        pathname

    ipx [network]:node[/port]

    aal5pvc or pvc
        [interface.][VPI.]VCI

    udp6 or udpv6 or udpipv6
        hostname[:port] or IPv6-address[:port]

    tcp6 or tcpv6 or tcpipv6
        hostname[:port] or IPv6-address[:port]

Note that <transport-specifier> strings are case-insensitive so that, for example, "tcp" and "TCP" are equivalent. Here are some examples, along with their interpretation:

127.0.0.1:161
    listen on UDP port 161, but only on the loopback interface. This prevents snmpd being queried remotely (which is a bit pointless). The ":161" is redundant here since that is the default SNMP port in any case.

TCP:1161
    listen on TCP port 1161 on all IPv4 interfaces.

ipx:/40000
    listen on IPX port 40000 on all IPX interfaces.

unix:/tmp/local-agent
    listen on the Unix domain socket /tmp/local-agent.

/tmp/local-agent
    identical to the previous specification, since the Unix domain is the default transport iff the first character of the <transport-address> is a '/'.

PVC:161
    listen on the AAL5 permanent virtual circuit with VPI=0 and VCI=161 (decimal) on the first ATM adapter in the machine.

udp6:10161
    listen on port 10161 on all IPv6 interfaces.

Note that not all the transport domains listed above will always be available; for instance, hosts with no IPv6 support will not be able to use udp6 transport addresses, and attempts to do so will result in the error "Error opening specified endpoint". Likewise, since AAL5 PVC support is only currently available on Linux, it will fail with the same error on other platforms.

snmpd uses libwrap's access control if configured by --with-libwrap. Access control patterns may only reference IP addresses.

CONFIGURATION FILES

snmpd checks for the existence of and parses the following files:

/usr/local/etc/snmp/snmp.conf
    Common configuration for the agent and applications. See snmp.conf(5) for details.

/usr/local/etc/snmp/snmpd.conf

/usr/local/etc/snmp/snmpd.local.conf
    Agent-specific configuration. See snmpd.conf(5) for details. These files are optional and may be used to configure access control, trap generation, subagent protocols and much else besides.

    In addition to these two configuration files in /usr/local/etc/snmp, the agent will read any files with the names snmpd.conf and snmpd.local.conf in a colon separated path specified in the SNMPCONFPATH environment variable.

/usr/local/share/snmp/mibs/
    The agent will also load all files in this directory as MIBs. It will not, however, load any file that begins with a '.' or descend into subdirectories.

SEE ALSO
(in recommended reading order)

snmp.conf(5), snmpd.conf(5)