Since MIMIC is an extremely complex tool, it was designed to contain extensive diagnostic information. All events of interest are logged and displayed in the log window. Since we cannot display a detailed explanation with every message at runtime, they are listed here.
Information that can change from message to message is shown in BOLD.
To use the list, search it by some unique words in the message (this should stay the same across releases).
If you don't see a message explained here, please cut and paste it into an e-mail message and send it to support@gambitcomm.com. We will include it in the next rev of the documentation.
WARN DATE - index simulation load failed TABLE, continuing...
DATE - cannot find index file for TABLE.
DATE - data/sim/SIMULATION/MIB/TABLE.idb not in search path
Cause
This error occurs when an instance database file (.idb) has not been created
for the specified table.
The recorder may generate no .idb file if it does not detect instances
in a particular table at record time.
Action
The simulator will return no instances for this table.
WARN DATE - simulation failed OID (OBJECT)
DATE - agent[NUMBER] ADDRESS: lookup failed
DATE - value space lookup failed
DATE - no such object OBJECT
DATE - scenario load failed data/sim/SIMULATION/MIB/SCENARIO/OBJECT
DATE - cannot find scenario file for OBJECT.
DATE - data/sim/SIMULATION/MIB/SCENARIO/OBJECT.var not in search path
Cause
This error occurs upon MIB object access when a scenario file (.var)
has not been created for the specified object.
Action
The simulator will return 0 for any variables it cannot find.
WARN DATE - simulation failed OID (OBJECT)
DATE - cannot exec arg 0 for FUNCTION
DATE - agent[NUMBER] ADDRESS: lookup failed
DATE - value space lookup failed
DATE - no such index
Cause
This error occurs when a scenario file (.var) does not contain a variable
for the specified instance for the specified object.
This can happen on recording of SNMP walk files (produced by a third-party
SNMP walk program that does simple GETNEXT traversal), when a table is dynamic
and large. Walking one column will retrieve object instances that don't
exist for later columns. Creating a simulation of a target device via a live
recording solves this problem, since the recorder walks tables entire rows
at a time.
Action
The simulator will return 0 for any variables it cannot find.
WARN DATE - simulation failed OBJECT
DATE - cannot access trap variable OID
DATE - not a leaf OBJECT
Cause
This error occurs while generating a trap. One of the MIB objects in
the VARIABLES clause of the trap is not being simulated by the agent.
This usually happens if the agent is not including the MIB which defines
the particular variable.
Action
The simulator will not generate the trap because it does not know the syntax
of the object. In order to generate this trap, you need to modify the
simulation to include the MIB which defines this variable. You can do
that with Simulation->Devices
in MIMICView. If you need to find the MIB which defines this variable,
use the oidinfo utility.
ERROR DATE - agent NUMBER cannot read PDU from ADDRESS
DATE - snmp_agent_parse failed
DATE - unknown community: COMMUNITY
Cause
An SNMP request with a community string was received which differs from the
configured community string for the agent instance.
Action
The SNMP request is ignored. To accept requests at the community,
change the agent instance configuration.
ERROR DATE - agent NUMBER cannot read PDU from ADDRESS
DATE - snmp_agent_parse failed
DATE - unknown protocol
Cause
An unknown protocol is being used for the agent. MIMIC currently supports
SNMPv1, v2c, v2 and v3, but not all may be configured for the particular
agent. Some management applications (like HP/OpenView)
may want to talk a different protocol, such as SNMPv2c and usually
first try it, then fall back to SNMPv1.
Action
The SNMP request is ignored.
ERROR DATE - agent NUMBER cannot read PDU from ADDRESS
DATE - snmp_agent_parse failed
DATE - bad authentication. error = -7 (notReportable)
DATE - cannot switch to matching agent.
DATE - no outstanding INFORM for engine id: >ENGINE-ID<
Cause
This error usually happens on receiving a duplicate INFORM RESPONSE
from the trap receiver.
Action
The INFORM RESPONSE is ignored.
WARN DATE - cannot receive from ADDRESS. continuing...
DATE - recvfrom: Connection refused
WARN DATE - cannot receive from ADDRESS. continuing...
DATE - recvfrom: Resource temporarily unavailable
WARN DATE - cannot receive from ADDRESS. continuing...
DATE - recv: No error
ERROR DATE - agent NUMBER send failed from ADDRESS to ADDRESS
DATE - type=NUMBER size=NUMBER
DATE - sendto: Connection refused
WARN DATE - cannot accept connection from ADDRESS. continuing...
DATE - accept: Resource temporarily unavailable
Cause
Any of these messages means a protocol request (SNMP, Telnet, TFTP, etc) or
connection was aborted by the management application.
This happens occasionally, and could be an indication of a faulty
management application.
Action
The request is ignored.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Permission denied
Cause
This message means that you are running without sufficient privileges
to bind to the selected SNMP socket.
Action
You need to run the MIMIC daemon mimicd with sufficient privileges.
On Unix, this means running mimicd as root, or with setuid-root. The installation by default installs mimicd as setuid-root. It can also be due to selinux enforcement or a firewall.
On Windows NT, you need to run MIMIC as a user with Administrator privileges.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: no error
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: No such file or directory
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: the requested address is not valid in its context.
Cause
On Windows Vista or later it could also be due to duplicate address detection.
See the
Windows Installation Guide
for more details.
Action
Only one process can simultaneously use the selected SNMP port on a host.
To verify if there is such a program, stop MIMIC with File->Terminate and use the netstat utility from the DOS command line prompt, for example:
C> netstat -a -n | find "161"
TCP 0.0.0.0:161 0.0.0.0:0 LISTENING
UDP 0.0.0.0:161 *:*
If these lines show, then start the Windows task manager and see if there is an SNMP agent process running, e.g. snmp.exe, that you need to kill.
Otherwise, contact Technical Support on how to find any other programs using this port.
The Windows NT SNMP service can only be killed from the Services
control panel.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Error 0
Cause
This message on Solaris means there is already another process running that
uses the selected SNMP port. This is very likely an already-running
instance of an SNMP agent.
Action
Only one process can simultaneously use the selected SNMP port on a host.
To verify if there is such a program, stop MIMIC with File->Terminate and use the netstat utility, for example:
# netstat -a -n | grep 161
*.161 Idle
#
If this gives you any output as above, you already have some process bound to the SNMP port, preventing MIMIC from binding to the port. On Solaris, you should be able to find this process with:
# ps -edf | grep snmp
root 300 1 0 Aug 24 ? 0:00 /usr/lib/dmi/snmpXdmid -s ultra5
root 14097 14089 0 09:15:56 pts/10 0:00 grep snmp
root 14094 1 0 09:15:14 ? 0:00 /usr/lib/snmp/snmpdx -y -c /etc/snmp/conf
#
(depending on which management software you have loaded on the system). The above shows the default SNMP agent (Process 14094) that ships with Solaris, but HP/Openview has its own, and so do the others.
Otherwise, contact Technical Support on how to find any other programs using this port.
There is no way (that we know) to find out exactly which process has bound to that port, so the only resort is to keep killing processes that have snmp in their name until netstat gives you a clean bill.
# kill 14094
# netstat -a -n | grep 161
#
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Address already in use.
Cause
This message on Solaris or Linux means there is already another process running that
uses the selected SNMP port. This is very likely an already-running
instance of an SNMP agent.
Action
Only one process can simultaneously use the selected SNMP port on a host.
To verify if there is such a program, stop MIMIC with File->Terminate and use the netstat utility, for example:
# netstat -a -n | grep 161
*.161 Idle
#
If this gives you any output as above, you already have some process bound to the SNMP port, preventing MIMIC from binding to the port. On Linux, you should be able to find this process with:
# ps -edf | grep snmp
root 300 1 0 Aug 24 ? 0:00 /usr/sbin/snmpd
root 14097 14089 0 09:15:56 pts/10 0:00 grep snmp
#
(depending on which management software you have loaded on the system). The above shows the default SNMP agent (Process 300) that ships with Linux, but HP/Openview has its own, and so do the others.
Otherwise, contact Technical Support on how to find any other programs using this port.
Even with the /proc filesystem, there is no way (that we know) to find out exactly which process has bound to that port, so the only resort is to keep killing processes that have snmp in their name until netstat gives you a clean bill.
# kill 14094
# netstat -a -n | grep 161
#
ERROR DATE - agent NUMBER cannot start ipalias, continuing...
DATE - cannot open socket.
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Cannot assign requested address
Cause
If you receive this while configuring an IPv6 address, then it likely
means that duplicate address detection has discovered another system running
with the same IPv6 address.
Action
You cannot assign the same IPv6 address to more than one end system.
Configure a different address.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCGIFADDR: No such device or address
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCSIFADDR: No such device or address
Cause
This message on Solaris means that you cannot configure the IP
address alias.
Action
You need to perform an extra kernel configuration step on Solaris prior to
running MIMIC to enable more than 255 addresses for agent instances. On
Solaris 2.6 and later you can, as root, use ndd(1M) to set the necessary
parameter.
For details, see the Solaris Installation Instructions.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCLIFADDIF: No buffer space available
Cause
This message on Solaris means that you cannot configure the IP
address alias because you have reached the maximum of 8192 per network
interface card.
Action
You can only configure 8192 addresses per network interface. To configure
more, you need an additional network interface.
For details, see the Solaris Installation Instructions.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - Cannot find unused slot to add ADDRESS
Cause
This means that the installation step that pads addresses on Windows NT
(before SP4) failed. Consult the
Windows Installation Instructions
section for details.
Action
You need to stop MIMIC (using File->Terminate), and perform
this step manually:
Login to an account with Administrator privileges.
From the DOS command prompt, change to the BIN\ subdirectory under the MIMIC installation directory, and invoke:
C> padaddrs 250
If you see any error messages at this point, please contact Gambit Communications Technical Support (support@gambitcomm.com).
Otherwise, you need to reboot your machine for this change to take effect.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - Cannot add IPAddress ADDRESS
DATE - Failed DhcpNotifyConfigChange.
Cause
You can only run MIMIC from an account with Administrator privileges.
Consult the
Windows Installation Instructions
section for details.
Action
Login to an account with Administrator privileges and run MIMIC.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - AddIPAddress failed. Reason=A device attached to the system is not functioning.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - AddIPAddress failed. Reason=The specified network resource or device is no longer available.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - AddIPAddress failed. Reason=Element not found.
Cause
This error means that the network interface configured for the agent is
not available, and usually happens on laptop computers, where you can
pull out network cards (PCMCIA, docking stations), or on newer versions
of Windows, when the network is unplugged. Consult the
Windows Installation Instructions
section for details.
Action
Configure a different network interface for the agent. This can be done
interactively with the Interface field in the
Advanced tab of the Agent Configuration
dialog.
You can also change the default network device (NIC) to be used for all agents where the interface is not explicitly set. To do so, set the MIMIC_DEFAULT_NETDEV environment variable to the desired interface name (eg. as listed in the Interface field in the Agent Configuration dialog) prior to running MIMIC (if it is running, you must terminate it with File->Terminate from MIMICView).
For example, to set the default interface to eth1, in the
C shell, do:
% setenv MIMIC_DEFAULT_NETDEV eth1
In the Bourne shell, do:
# MIMIC_DEFAULT_NETDEV=eth1; export MIMIC_DEFAULT_NETDEV
On Windows, use the System Control Panel to set this environment variable. For more details, see Microsoft's instructions.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - cannot add address ADDRESS
DATE - AddIPAddress failed. Reason=Access is denied.
Cause
On Windows Vista or later this means you don't have access permissions to run
MIMIC. Consult the
Windows Installation Instructions
section for details.
Action
Enable the user access level correctly as detailed in the
Windows Installation Instructions
.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - possibly caused by another SNMP agent running
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: No such file or directory
Cause
On Windows Vista or later this means you are trying to start agents with
"duplicate address detection" enabled by default.
Consult the
Windows Installation Instructions
section for details.
Action
Disable "duplicate address detection" as detailed in the
Windows Installation Instructions
.
ERROR DATE - cannot listen on remote management socket
DATE - listen: No error
Cause
On Windows, this likely means you are running a software firewall
which is preventing MIMIC from running properly.
Action
Configure your software firewall to allow MIMIC to access the network.
See also the Windows Installation Instructions.
ERROR DATE - cannot bind management socket
DATE - bind: Address already in use
Cause
This message means there is already another process running that uses
the MIMIC management port. This is very likely an already-running
instance of mimicd, the MIMIC daemon.
Action
Only one instance of the MIMIC daemon can simultaneously be running on a
host.
To verify if there is another MIMIC daemon running, do:
% ps ax | grep mimic
593 p0 S 0:03 /usr/local/mimic/bin/mimicd
If you see something like the last line above, there is another instance of mimicd running that you need to kill.
Otherwise, contact Technical Support on how to find any other programs
using this port.
ERROR DATE - initialization failed
DATE - Cannot read license
ERROR DATE - initialization failed
DATE - License expired
ERROR DATE - initialization failed
DATE - cannot get license
DATE - Invalid license key
ERROR DATE - initialization failed
DATE - cannot get license
DATE - License corrupt
ERROR DATE - initialization failed
DATE - Incorrect license version
Cause
The licensing information in the license file mimicd.lic is incorrect.
Action
MIMIC will not run without correct license keys which you can obtain
from
support@gambitcomm.com.
You can copy/paste the keys when prompted by the installation program.
Or, if you have already installed MIMIC, then edit the config/*.lic
files to paste the correct key (also see
FAQ).
If you still cannot get it working, please send us the contents of the config/*.lic files to expedite the process.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCSIFADDR : unknown error
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCSIFADDR : Permission denied
Cause
There can be various reasons for this error:
ERROR DATE - agent NUMBER cannot start ipalias, continuing...
DATE - cannot open socket.
DATE - cannot set address ADDRESS
DATE - ioctl SIOCSIFADDR : Cannot allocate memory
Cause
The Linux kernel configuration limits the number of network interfaces.
Action
Increase the following Linux kernel parameter from a root shell:
# sysctl -w net.ipv6.route.max_size=16384
ERROR: oid.cc:47: assertion failed - constructor failed
Cause
Any assertion failure is fatal, and should be reported to
support@gambitcomm.com.
Any message with "constructor failed" is likely a lack of virtual
memory. You need to increase your swap space as detailed in the
OS-specific installation instructions.
Action
Send email to
support@gambitcomm.com.
ERROR DATE - buffer full from ADDRESS to ADDRESS
Cause
The "buffer full" message is displayed when the management application
sends too many requests at once. MIMIC cannot service them all, and
buffers them (as all real SNMP agents do). The message alerts you when the
buffer overflows, and messages are discarded (as all real SNMP agents do,
except they do it silently).
Action
This condition can be caused due to 2 reasons:
a) MIMIC is too slow (running on a underpowered machine). If this message occurs occasionally, you can overcome this problem by either putting MIMIC in overdrive by disabling action scripts, and/or increasing the buffer size for each agent.
If you are not using action scripts, you can disable the extra processing on every received request, resulting in significant performance gain. To disable actions, set the MIMIC_DISABLE_ACTION environment variable to any value prior to running MIMIC (if it is running, you must terminate it with File->Terminate from MIMICView).
In the C shell, do:
% setenv MIMIC_DISABLE_ACTION 1
In the Bourne shell, do:
# MIMIC_DISABLE_ACTION=1; export MIMIC_DISABLE_ACTION
On Windows, use the System Control Panel to set this environment variable. For more details, see Microsoft's instructions.
To increase the buffer size for each agent, edit the config/mimicd.cfg file and add a line
agent_qsize = value
where "value" is a number larger than 10 (the default). Try 20.
If this problem persists, you may want to run MIMIC on a more powerful machine.
b) the management application has a performance bug, ie. it sends too many requests simultaneously (as we have seen). A real agent will never alert you to this condition, except that performance suffers, since the app will retransmit the discarded requests.
A common bug in management applications is the issuance of too many simultaneous requests in a "burst". Performance bugs are violations of the performance requirements for managing devices. These are subtle bugs, since their only symptoms are degraded performance, which is hard to measure. MIMIC helps you detect these violations.
An example of this condition is "agressive retransmission policy", which could trigger this effect: the app is sending a request, which may be delayed. The app times out, and retransmits. If this happens more than a certain number of times consecutively, the buffer overflows. This is independent of the overall rate.
A short protocol analyzer session would verify this: Gambit ships a free (unsupported) protocol analyzer called tcpdump downloadable from http://www.gambitcomm.com/unsupported . If you run tcpdump as follows from root:
# tcpdump -s 256 -n host agent-IP-address and port 161
it will dump all SNMP packets to/from that agent IP address. Run this analyzer until the buffer full error happens. Then send us the output.
An aggressive retransmit policy could be a bug in the application, ie. it will have performance problems interacting with any agent, whether MIMIC or anybody else's.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - socket: Too many open files in system
Cause
This message on Linux means that the global file descriptor table is full.
Action
Consult the
Linux Installation Instructions
"1000 / 2000 / 5000 / 10000 agent support" section for details.
WARN DATE - User changed log file
DATE - Continued to FILE.....
WARN DATE - User changed log file
DATE - Continued from FILE.....
Cause
The log file was changed at the specified time.
Action
In order to manage large log files, MIMICView periodically switches
the file where the Simulator diagnostic messages are stored. This
happens around midnight, and whenever the user saves the log. Use
File->Log->View... to view the current log file.
WARN DATE - USM Error: sending report PDU
DATE - unknown engine id: ""
Cause
This warning is an indication that the management application did a
discovery of the SNMPv3 engine ID from the agent: in order to detect the
engine ID it sends an illegal engine ID, causing the agent to respond
with an unknownEngineID REPORT PDU.
Action
None necessary, if your SNMPv3 management application works correctly. Otherwise,
you may have to do manual configuration of the engine ID.
WARN DATE - agent NUMBER cannot remove primary alias
DATE - no receiver thread for socket NUMBER
WARN DATE - cannot clear pollfd NUMBER
DATE - T[x], socket NUMBER not registered
WARN DATE - cannot clear pollfd NUMBER
DATE - T[x], socket NUMBER not found in map
WARN DATE - NR[x]: continuing poll on agents...
DATE - socket NUMBER not registered
WARN DATE - cannot switch socket NUMBER to inactive thread, continuing...
DATE - command buffer overflow
Cause
Any of these messages indicates temporary problems in the protocol dispatcher
in the simulator. These messages happen occasionally, under extreme stress
of the simulator.
Action
The messages indicate a recovery action by the simulator, and may result
in dropped messages to the agents. No action is necessary, unless the
messages happen frequently. If they do, please contact
support@gambitcomm.com
to remedy the problem.
ERROR DATE - PROTOCOL [AGT=NUMBER]: cannot start server
DATE - cannot enable IP address for
DATE - cannot start ipalias
DATE - cannot open socket
DATE - Please refer to Appendix C for more details
DATE - cannot bind receive IP address ADDRESS port PORT
DATE - bind: Address already in use.
Cause
This error means that there is already a service running on the indicated port,
eg. there is already a Telnet service bound on port 23 or SSH on port 22.
By default, services bind a listening port to address INADDR_ANY, preventing
any further bind operations to the same port.
On Linux systems, the Telnet service is managed with xinetd.
Some services can change the listening address through server configuration.
Action
You have 3 options:
WARN DATE - agent NUMBER cannot stop, continuing...
DATE - agent NUMBER cannot remove interface
DATE - address <ADDRESS> was created by another application.
Cause
This warning on Windows means that MIMIC refuses to remove an IP alias
that it did not create. If MIMIC is the only software creating IP
aliases on this system, then the IP alias was probably left over from
some previous run of MIMIC, maybe due to a crash.
Action
To remove the IP alias, stop MIMIC, then disable the network interface
on which the IP aliases are left over, for example through the
System Control Panel. After enabling the network interface again,
the IP aliases are removed.
ERROR DATE - saw this message 100 times, skipping future occurrences...
Cause
The error message was seen too many times. Future occurrences are skipped.
Action
Rather than filling the log with the same error an unlimited number
of times, MIMIC limits the number of a particular message to 100 by
default. You should fix the problem, rather than ignoring error messages.
To remove this limit, edit the config/mimicd.cfg file and add a line
error_occurrences = 0
Once you restart MIMIC, the limit is removed.
WARN DATE - watchdog detected stalled thread(s)
DATE - thread THREADNAME is not making progress
Cause
A
watchdog thread
in MIMIC as well as many real-time systems monitors other threads and
attempts to detect problems, such as stalled threads. This can be an
indication of performance problems, but usually is caused by a temporary
congestion, ie. too many tasks running at the same time. The condition
is cleared with a watchdog ok message.
Action
If this happens frequently, the condition needs to be diagnosed.
The "stalled thread" condition means the indicated thread(s) is(are) not getting to the synchronization point that updates their status within the allotted time period, eg. because they are not getting CPU time, or they are not making progress. First, it needs to be verified that MIMIC is not competing with other programs on the system. Then, if script threads are stalled, it could be a sign of inefficient algorithms or implementation. If message dispatcher threads are stalled, it could be a burst of messages.
Once the root cause is known, oftentimes the system can be tuned to better handle the particular performance characteristics.
ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
DATE - cannot set address ADDRESS
DATE - ioctl SIOCADDRT: File exists
Cause
On newer versions of Linux the kernel maintains routes for configured
network interfaces.
Action
Set an environment variable before starting MIMICview or MIMICD.
In the C shell, do:
% setenv MIMIC_IFCONFIG_NOROUTE 1
In the Bourne shell, do:
# MIMIC_IFCONFIG_NOROUTE=1; export MIMIC_IFCONFIG_NOROUTE
ERROR DATE - failed line LINE object OID
DATE - unknown object OID
ERROR DATE - errors from line LINE to LINE
Cause
This set of messages means a group of MIB objects were retrieved from the
device but they are not in any of the MIBs known to MIMIC. This
FAQ entry
has more details.
Action
By default, the objects are not placed in the simulation. To get a complete simulation,
compile the missing MIBs and rerun either a live recording or re-record
the walk file generated by the recorder.
At MIMIC 5.20, you can specify the --unknown command line option to the MIMIC Recorder to attempt to simulate the unknown objects.
WARN DATE - restart non-tablewalk at OBJECT
DATE - GETNEXT violation: got OID
DATE - GETNEXT violation: sent OID
Cause
This is caused by a faulty agent implementation on the device. The MIMIC
Recorder ensures that lexicographical order of retrieved variables is
preserved according to the SNMP standard. (Otherwise the retrieval could
go on forever.)
Action
The MIMIC Recorder uses efficient, multi-variable, per-PDU queries
(to minimize network traffic and to traverse dynamic tables). Some
agent implementations do not work correctly with this type of
query. When this happens, the recorder automatically changes mode
to a simple, single-variable, per-PDU GETNEXT walk for this table.
WARN DATE - skip object OBJECT
DATE - too many errors
DATE - GETNEXT violation: got OID
DATE - GETNEXT violation: sent OID
Cause
This is caused by a faulty agent implementation on the device. The MIMIC
Recorder ensures that lexicographical order of retrieved variables is
preserved according to the SNMP standard. (Otherwise the retrieval could
go on forever.)
The recorder allows some number of errors, then skips the object to
continue the walk.
Action
If you know that the agent does not correctly export a table (e.g. all
entries are in reverse lexicographic order), and you still want to
record this table, then you can set the MIMIC_REC_NO_GETNEXT environment
variable before invoking mimicrec. This will disable the GETNEXT violation
checking in the recorder.
In the C shell, do:
% setenv MIMIC_REC_NO_GETNEXT 1
In the Bourne shell, do:
# MIMIC_REC_NO_GETNEXT=1; export MIMIC_REC_NO_GETNEXT
On Windows, use the System Control Panel to set this environment variable. For more details, see Microsoft's instructions.
ERROR DATE - walk done for target TARGET
DATE - PDU timed out
Cause
This means that the device did not respond to a query from the
MIMIC Recorder. This could be due to a congested network or to a busy
device. You can use the --rexmits and --timeout options to cause
the recorder to wait longer for responses, although the default
settings should already wait long enough.
Action
Use the --rexmits and --timeout options to wait
longer for responses from the device.
ERROR DATE - discovery phase failed
DATE - No variables retrieved, aborting..
Cause
This means that the device did not respond to any query from the
MIMIC Recorder. This could be due to several reasons:
WARN DATE - restart non-tablewalk at OBJECT
DATE - PDU timeout, could be due to faulty agent
Cause
This means that the device did not respond to a query from the
MIMIC Recorder. This could be due to a congested network or to a busy
device. You can use the --rexmits and --timeout options to cause
the recorder to wait longer for responses, although the default
settings should already wait long enough.
Another cause could be a faulty agent implementation on the device. The MIMIC Recorder uses efficient, multi-variable, per-PDU queries (to minimize network traffic and to traverse dynamic tables). Some agent implementations do not work correctly with this type of query.
The MIMIC Recorder automatically switches to single-variable GETNEXT
traversal to recover from this condition. Most agents will recover, but
some crash).
Action
As of MIMIC version 13.00 you can use the --tablewalk command line option.
For earlier versions of MIMIC
you can set the MIMIC_REC_NO_TABLEWALK
environment variable before invoking mimicrec to disable the
multi-variable table-walk of the recorder.
In the C shell, do:
% setenv MIMIC_REC_NO_TABLEWALK 1
In the Bourne shell, do:
# MIMIC_REC_NO_TABLEWALK=1; export MIMIC_REC_NO_TABLEWALK
On Windows, use the System Control Panel to set this
environment variable. If you are using the recorder from the
DOS prompt (COMMAND.COM), you can also use
DOS> set MIMIC_REC_NO_TABLEWALK=1
You will know that this is set correctly if you do not see any messages in the log containing "starting table walk".
WARN DATE - setting counter rate OBJECT to 0
DATE - counter before sysUptime is known
Cause
Counter rates are interpolated from the current time, as indicated by
the current value of sysUptime. If sysUptime is not known, the interpolation
cannot be done and the rate is set to 0. Normally, the Recorder expects
the value of sysUptime somewhere at the beginning of the recording (ie.
in the walkfile), so that all following counters can be simulated accurately.
The lack of sysUptime can be produced by:
WARN DATE - retry walk at OBJECT
DATE - Got NOSUCHNAME, could be faulty agent
Cause
Some faulty agents do not transition between MIBs, instead returning a
NOSUCHNAME error. To detect such a condition, the MIMIC Recorder retries
a couple of times with successively lexicographically higher OIDs.
Action
You can set the MIMIC_REC_NO_ENDMIBRETRY
environment variable before invoking mimicrec to disable the
end-of-MIB detection heuristics of the recorder.
In the C shell, do:
% setenv MIMIC_REC_NO_ENDMIBRETRY 1
In the Bourne shell, do:
# MIMIC_REC_NO_ENDMIBRETRY=1; export MIMIC_REC_NO_ENDMIBRETRY
On Windows, use the System Control Panel to set this
environment variable. If you are using the recorder from the
DOS prompt (COMMAND.COM), you can also use
DOS> set MIMIC_REC_NO_ENDMIBRETRY=1
You will know that this is set correctly if you see a message in the log containing option: no end of MIB retry.
ERROR DATE - failed line LINE object OID
DATE - Oid out of order, previous OID, complete OID
ERROR DATE - errors from line LINE to LINE
Cause
Some third-party walkfile programs do not store the retrieved messages
in lexicographic order, as is the case with GETNEXT or GETBULK traversal.
After conversion in this case with the
walkfile converter
the retrieved MIB objects and values will be in the correct format, but
will still be out of order. Since there are too many pathological cases
in this condition, by default the MIMIC Recorder will skip out-of-order
objects, resulting in an incomplete simulation.
Action
The first solution is to sort the converted walkfile with any text-processing
utility, such as the Unix sort.
Else, you can set the MIMIC_REC_OID_ORDER
environment variable before invoking mimicrec to disable the
end-of-MIB detection heuristics of the recorder.
In the C shell, do:
% setenv MIMIC_REC_OID_ORDER 0
In the Bourne shell, do:
# MIMIC_REC_OID_ORDER=0; export MIMIC_REC_OID_ORDER
On Windows, use the System Control Panel to set this
environment variable. If you are using the recorder from the
DOS prompt (COMMAND.COM), you can also use
DOS> set MIMIC_REC_OID_ORDER=0
You will know that this is set correctly if you see a message in the log containing option: don't skip out of order OIDs.
This will still not guarantee a complete simulation, since you are forcing the MIMIC Recorder to handle the pathological condition. Depending on how bad the order is, the simulation may still be not as good as it would be in sorted order.
WARN DATE - Ignoring import statement
DATE - Imported type TYPE not found in TYPEFILE
WARN DATE - Ignoring import statement
DATE - Unable to get path of MIB for type TYPE
Cause
The specified type could not be imported from the specified MIB. If it
is one of the well-known types, this condition is ignored and the compile
continues.
Action
The basic SNMP types Counter64, Counter32, etc are built-in. You can
ignore this warning.
Application initialization failed: no display name and no $DISPLAY environment variable
Cause
MIMICView on Linux and Solaris is a X Window System application, and as
such needs to have a DISPLAY environment variable set to specify
the display location.
Action
Set the DISPLAY environment variable to specify where to display.
Eg. to display on the local display:
In the C shell, do:
% setenv DISPLAY :0.0
In the Bourne shell, do:
# DISPLAY=:0.0; export DISPLAY
If you are getting this error from the MIMICShell, and want to run the shell without a GUI, then specify the --nogui command line option.
Application initialization failed: couldn't connect to display "HOST:0"
Cause
MIMICView on Linux and Solaris is a X Window System application. The
display specified by the DISPLAY environment variable is not
running an X Window Server.
Action
Make sure to set the DISPLAY environment variable to an X Server display.
Xlib: connection to "HOST:0.0" refused by server Xlib: No protocol specified Application initialization failed: couldn't connect to display "HOST:0"
Cause
MIMICView on Linux and Solaris is a X Window System application.
The DISPLAY environment variable is set to specify an X Server
display that is not accepting connections from your host.
Action
Use the xhost application on the X Window Server to accept
connections from your host.
ERROR DATE - initialization failed
DATE - Cannot get serial number
Cause
The serial number of the system cannot be inferred. This is likely because
the network interface is down.
Action
MIMIC will not run without a working network interface.
Contact
support@gambitcomm.com
to solve this problem.