# ipmi_lan(5) - man - phpMan

[ipmi_lan(5)](https://www.chedong.com/phpMan.php/man/ipmilan/5/markdown)                        IPMI LAN Interface config file                        [ipmi_lan(5)](https://www.chedong.com/phpMan.php/man/ipmilan/5/markdown)



## NAME
       ipmi/lan.conf - IPMI LAN Interface config file


## SYNOPSIS
### /etc/ipmi/lan.conf


## DESCRIPTION
       The **ipmi**___**sim** and **ipmilan** commands are configured using this configuration file.


## CONFIGURATION ITEMS
       The following fields are used in many commands:

       _boolean_ May be "**true**", "**false**", "**on**" or "**off**".

       _priv_ An IPMI privilege level.  This may be "**callback**", "**user**", "**operator**", or "**admin**".

       _auth_  An  IPMI  authorization type.  This may be "**none**" for no authentication, "**straight**" for
       straight, in-the-clear password authentication, "**md2**" for use MD2 message digest  authentica‐
       tion, or "**md5**" for using MD5 message digest authentication.


## FILE STRUCTURE
       Blank lines and lines starting with `#' are ignored.


       The following commands are allowed the configuration file:


       **name** _"name"_
              Set a name for the BMC.  This will control other things, like the default value of the
              ipmi_sim startup command file and the place where persistent data is stored.


       **user** _usernum_ _enabled_ _username_ _password_ _max-priv_ _max-session_
              _usernum_ specifies the user number for the user.  Note that user number **0**  is  invalid,
              and  user  number  **1** is the special "anonymous" user, whose username is ignored.  This
              value may be up to **63**, the maximum possible IPMI user.  If you want anonymous  access,
              you **must** have a user number **1**_._

              _enabled_ is a boolean that specified whether the user is enabled or not.

              _username_ specifies the name of the user, specified as a name.

              _password_ specifies the password of the user, specified as a name.

              _max-priv_ specifies the maximum privilege level allowed for the user.

              _max.sessions_ specifies the maximum number of session the user may open.


       **startcmd** _"cmd"_
              specifies  a command to execute when a power on is requested.  This lets a virtual ma‐
              chine be started that can then connect back to the simulator.  The simulator does man‐
              agement  of  the process here, and the power on state of the process depends on if the
              process exists or not.  If a poweroff is requested, if the process is connected  to  a
              VM  serial interface, a graceful shutdown is first requested.  If the process does not
              terminate in a specified amount of time, a  SIGTERM  is  sent  to  the  process.   The
              SIGTERM  is sent immediately if there is no connection.  If the process doesn't go way
              in another specified amount of time, a SIGKILL is sent.


       **startnow**true|false
              If true, start the startcmd at the startup of the simulator.  Otherwise wait  until  a
              poweron is issued.


       **poweroff**___**wait** _seconds_
              specifies  the  amount of time to wait for the startcmd to do a graceful shutdown on a
              powerdown request.  The simulator will send a request to the target, wait this  amount
              of  time,  and then do a SIGTERM kill on the process.  If this is zero, a SIGTERM will
              not be done (nor will a SIGKILL).  Note that if the simulator does not have a  connec‐
              tion  to  the  VM, the graceful shutdown is skipped and a SIGTERM is done immediately.
              Default time is 60 seconds.


       **kill**___**wait** _seconds_
              specifies the amount of time to wait for SIGTERM to kill the process.  If the  process
              does  not  terminate  in  this  period of time, send a SIGKILL kill.  If this is zero,
              don't send the SIGKILL.  Default time is 20 seconds.


       **console** _address_ _port_
              specifies that a console port be opened at the given address and port.  You can telnet
              to  the console and execute emulation commands.  Note that this is a pretty huge secu‐
              rity hole, it should only be used for debugging in a captive environment.


       **serial** _channel_ _addr_ _port_ [_option_ [_option_ [...]]]
              _channel_ specifies the channel number or type.  This may be **kcs**, **smic**, or **bt** or it  may
              be 15.  Currently, only the system interface channel (channel 15) is supported for se‐
              rial interfaces, if the others are specified it is channel 15 and the given  interface
              is reported in channel configuration commands.

              _addr_ specifies the IP address to listen on for connections.

              _port_ specifies the port to listen on for connections.

              Valid options are:

              _codec_ _name_ specifies which codec to use on the serial port.  Valid options are: **Termi**‐‐
              **nalMode**, **Direct**, **RadisysAscii**, and **VM**.  The first three are  implementations  of  IPMI
              serial interfaces on certain systems and might be used for simulations of that system.
              The **VM** is probably the most interesting; it is designed to be used with a virtual  ma‐
              chine like qemu.

              _oem_  _name_  specified implementation of some OEM custom commands and options on the in‐
              terface.  Valid options oare **PigeonPoint** and **Radisys**.

              _attn_ _c1[,c2[...]]_  specifies a list of characters, separated by commas, to use as  the
              attention  character on the interface.  Generally the default is correct.  The charac‐
              ters are specified as decimal, octal, or hex digits in C style.

              _ipmb_ _addr_ specifies the IPMI address of the interface.  The default, 0x20, is  usually
              correct, but when emulating ATCA systems this might be required.


       **sol** _device_ _default_baud_ [_history=size[,backupfile=filename]_] [_historyfru=frunum_]

              Allow  a  Serial Over LAN (SOL) connection to the given device.  This will be over in‐
              terface 1 for the MC.

              _device_ is the full path to the device name.  It can  also  be  in  the  form  "tcp:ad‐
              dress:port"  or "telnet:address:port" to do connections over tcp (without or with tel‐
              net processing).  This is useful for providing SOL access to qemu ports.

              _default_baud_ sets the initial default baud rate to use.  This is overriden by the per‐
              sistent SOL settings.

              _history_ creates a history device on SOL interface 2.  The size is the size of the buf‐
              fer.  Data from the device is stored in the history buffer all the  time.   Connecting
              to  SOL interface 2 will cause the full history buffer to be dumped.  If _backupfile_ is
              specified, then the history is made persistent.  However, it is  only  stored  when  a
              catchable  signal or normal shutdown is done, so a poweroff or fatal signal will cause
              the data to be lost.

              _historyfru_ makes the history available via the given FRU number on the MC.

              Note that if the connection fails to come up, the simulator will continue  to  try  to
              connect.  This way you can fix UDP serial ports or qemu sessions and it will automati‐
              cally reconnect.


       **loadlib** _"module"_ [_"options"_]

              Load the given shared object into the program.

              _module_ is the full path to the module.  It must be in quotes.

              _options_ is an optional string in quotes that passes options to the module.   The  con‐
              tents of the string are not specified, the module defines that.

              The module may have a number of functions that are called:

              _ipmi_sim_module_print_version(sys_data_t_  _*sys,_ _char_ _*options)_ is called when ipmi_sim
              is started with the version print option.  This way the versions of all loaded modules
              may  be  printed.   The module should print it's version.  You must provide this func‐
              tion.

              _ipmi_sim_module_init(sys_data_t_ _*sys,_ _char_ _*options)_ is called after the configuration
              file  is  read and before any other initialization is done.  The module should do most
              of its initialization here.  You must provide this function.

              _ipmi_sim_module_post_init(sys_data_t_ _*sys)_ is called after ipmi_sim has finished  ini‐
              tializing.  This function is optional.


       _sys_ parameter is used for most functions interfacing to the main ipmi_sim code, like logging,
       timers, and a few of the MC calls.  The contents are opaque to the module.



       **startlan** _channel_
              Starts a LAN configuration area.  This specifies the settings for a LAN connection us‐
              ing the given channel.  This may be specified more than once in a file to support mul‐
              tiple LAN connections.  Commands following this, up to **endlan**, are  LAN-specific  com‐
              mands listed below.  _channel_ specifies the channel to set the LAN configuration for.


## LAN CONFIGURATION COMMANDS
       The following commands are only valid inside a **startlen** area.


       **addr** _IP-address_ [_UDP-port_]
              _IP-address_  specifies  the  IP address to use for an IP port. Up to 4 addresses may be
              specified.  If no address is specified, it defaults to one port at **0.0.0.0** (for  every
              address on the machine) at port **623**.

              _UDP-port_  specifies  an  optional  port to listen on. It defaults to **623** (the standard
              port).


       **PEF**___**alerting** _boolean_
              Turn PEF alerting on or off (not currently supported).


       **per**___**msg**___**auth** _boolean_
              Turn per-message authentication on or off.


       **priv**___**limit** _priv_
              The maximum privilege allowed on this interface.


       **allowed**___**auths**___**callback** [_auth_ [_auth_ [...]]]
              _auth_ specifies allowed authorization levels for the callback  privilege  level.   Only
              the  levels  specified  on this line are allowed for the authorization level.  If this
              line is not present, callback authorization cannot be used.


       **allowed**___**auths**___**user** [_auth_ [_auth_ [...]]]
              _auth_ specifies allowed authorization levels for the user privilege  level.   Only  the
              levels  specified  on this line are allowed for the authorization level.  If this line
              is not present, user authorization cannot be used.


       **allowed**___**auths**___**operator** [_auth_ [_auth_ [...]]]
              _auth_ specifies allowed authorization levels for the operator  privilege  level.   Only
              the  levels  specified  on this line are allowed for the authorization level.  If this
              line is not present, operator authorization cannot be used.


       **allowed**___**auths**___**admin** [_auth_ [_auth_ [...]]]
              _auth_ specifies allowed authorization levels for the admin privilege level.   Only  the
              levels  specified  on this line are allowed for the authorization level.  If this line
              is not present, user authorization cannot be used.


       **guid** _name_
              Allows the 16-byte GUID for the IPMI LAN connection to be specified.  If this  is  not
              specified, then the GUID command is not supported.


## FILES
       /etc/ipmi_lan.conf


## SEE ALSO
       [**ipmilan**(8)](https://www.chedong.com/phpMan.php/man/ipmilan/8/markdown),**ipmi**___**[sim**(1)](https://www.chedong.com/phpMan.php/man/sim/1/markdown)


## KNOWN PROBLEMS
       IPMI is unnecessarily complicated.


## AUTHOR
       Corey Minyard <<cminyard@mvista.com>>



OpenIPMI                                      06/26/12                                   [ipmi_lan(5)](https://www.chedong.com/phpMan.php/man/ipmilan/5/markdown)
