Appendix C: Common Error Messages

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.

Agent Simulator

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. ERROR DATE - no receiver at ADDRESS

    Cause
    This message means an SNMP request was received for an address that has no agent instance running. This request could be for the host's real IP address, in which case this message happens occasionally.
    Action
    The SNMP request is ignored.

  9. 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.

  10. 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.

  11. 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.

  12. 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
    #

  13. 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
    #

  14. 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.

  15. 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.

  16. 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.

  17. 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.

  18. 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.

  19. 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.

  20. 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 .

  21. 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 .

  22. 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.

  23. 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.

  24. 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.

  25. 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:

    • mimicd is not setuid root. The installation script sets the correct permissions. The output of
      ls -l mimicd
      should be something like
      -rwsr-xr-x 1 root staff 1466311 Aug 14 11:24 mimicd
      If the permissions are not as shown, you need to do as root
      # chown root mimicd
      # chmod 4755 mimicd

    • You are setting an incorrect IP address. Try another address, like 192.9.200.200 .
    • If you are running on a Linux with loadable kernel modules, the first access to IP aliasing will result in this error. It should succeed the second time.
    • If you are running on an older Linux, you are not running a Linux kernel with the network aliasing and transparent proxy options enabled (CONFIG_NET_ALIAS=y, CONFIG_IP_ALIAS=m and CONFIG_IP_TRANSPARENT_PROXY=y).

    Action
    MIMIC will not simulate agents if it cannot set the IP address. You need to resolve this error.
  26. 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

  27. 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.

  28. 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.

  29. 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.

  30. 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.

  31. 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.

  32. 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.

  33. 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:

    1. start the MIMIC protocol server on a different port. Eg. start the telnet server on port 2423.

    2. configure the server to bind to a single IP address rather than the default INADDR_ANY. Eg. for SSH on Linux, edit the ListenAddress entry in /etc/ssh/sshd_config.

    3. disable the platform-native Telnet service. On Linux systems, this can be accomplished with /usr/sbin/setup, in the System Services menu, or via chkconfig.
  34. 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.

  35. 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.

  36. 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.

  37. 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

Recorder

  1. WARN  DATE - setting counter rate OBJECT to 0
          DATE - sysUptime SYSUPTIME, value = VALUE

    Cause
    When an agent has been running for an extended period of time, and a statistics counter is too low to be able to compute a rate, the Recorder sets the rate to 0.
    Action
    The rate of the counter is set to 0.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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:

    • The device is not accessible
    • The community string is not the correct one
    • The SNMP agent on the device is using a non-standard port
    • The SNMP agent uses some non-standard access control mechanism.

    Action
    1. First make sure that the device is accessible to the ping command on any operating system.
    2. Then make sure you are using the correct read community string on the device. If you don't know the community string, talk to your network administrator.
    3. Also, some devices use non-standard port numbers for their SNMP agents.
    4. Some devices have a configurable setting for which management stations are allowed to query them. If so, make sure that the system running MIMIC Recorder is in that list.
    5. Finally, try any other MIB browser to talk to your device. If that is possible, then the MIMIC Recorder should be able to access it.
  7. 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".

  8. 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:

    • live recording of MIB subtrees (--root or --start) without the MIB-2 system group

    • omitting the MIB-2 (ie. RFC1213-MIB) in the Simulation Wizard

    • omitting RFC1213-MIB with mib2walk utility

    Action
    To calculate counter rates correctly, include the MIB-2 system group in your recording (ie. walkfile).
  9. 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.

  10. INFO  DATE - received SNMPv3 REPORT. synchronizing engine params...

    Cause
    This is an informational message that tells the user that SNMPv3 discovery and time synchronization is happening. This is a normal process of any SNMPv3 session.
    Action
    Nothing to do.

  11. 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.

Compiler

  1. WARN DATE - No import statement for OBJECT. Assuming MIB

    Cause
    The MIB file uses an object that has not been imported from a known MIB.
    Action
    The compiler checks some well-known MIB files to declare this object.

  2. WARN DATE - Cannot handle type TYPE for OBJECT

    Cause
    Even though the type is imported, the compiler could not use it.
    Action
    The object that uses this type cannot be simulated. You can bypass this limitation by using the config/mimiccom.types file.

  3. WARN DATE - Ignoring subtype data
         DATE - Too many (2) alternates in subtype for OBJECT

    Cause
    The compiler cannot handle more than one alternate range or size specification for the object.
    Action
    The range or size specification is ignored.

  4. 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.

  5. WARNING: Table TABLE does NOT have an INDEX clause

    Cause
    The specified table does not have an INDEX clause.
    Action
    The table needs an INDEX clause to correctly simulate indices.

MIMICView

  1. 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.

  2. 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.

  3. 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.

  4. 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.