The default behavior of the kernel at boot up is to automatically negotiate
the speed and duplex settings of all LAN interfaces that support this
feature. This default behavior is later modified in HP-UX by startup
scripts that can set any speed and duplex rather than allow the LAN
interface to automatically negotiate these settings.
When you use an install kernel with Ignite-UX to install or recover a system, there are no startup
scripts. If a Fast or Gigabit Ethernet LAN interface fails to autonegotiate,
it defaults to 100 Half-Duplex regardless of the speed and duplex
settings at the other end. Mismatched speed and duplex settings can
cause serious performance and reliability issues when using Ignite-UX.
You
can adjust the speed and duplex settings when using Ignite-UX with
the _hp_lanadmin_args variable. The LAN interface Ignite-UX
uses must be brought up before the Ignite-UX server can be contacted so this keyword serves no purpose if it is located
in the normal configuration files used by Ignite-UX.
In view of this, _hp_lanadmin_args must be configured
in the install file system on the server that
it boots from. If the client boots using a boot helper, _hp_lanadmin_args must be configured on the boot helper system not the Ignite-UX server.
|
| |
|
| NOTE: In a default setting, modern switches and hubs
will autonegotiate the speed and duplex settings with your PA-RISC
or Itanium-based system. However, in some cases you may want to set
the speed and duplex settings to certain values for your environment.
For example, the switch may always fail to autonegotiate with your
system. If you do not use autonegotiation on the switch or hub that
your system is connected to, you must provide the correct speed and
duplex settings for Ignite-UX using _hp_lanadmin_args. Mismatched speed and duplex settings may cause significant performance
issues or failures during recovery. |
|
| |
|
Almost all Fast and Gigabit Ethernet interfaces
support setting the speed and duplex using the _hp_lanadmin_args variable for the -X option. Some old Fast Ethernet
interfaces might not support full-duplex, so consult the product documentation
for any network interfaces you encounter problems with to confirm
the speed and duplex settings that each supports.
You can still take advantage of the other options
available using the lanadmin command. For more
information, see the examples in instl_adm(4) regarding setting the MTU
(-M) and Duplex (-S) options of _hp_lanadmin_args.
|
| |
|
| IMPORTANT: Due to a problem in Ignite-UX in versions prior
to B.5.2.x, some parts of the recovery
may run with the wrong speed and/or duplex on the LAN interface when
the system first reboots and until the final reboot. If this proves
to be a problem in your environment, you should ensure that you have
installed Ignite-UX version B.5.2.x or
later. |
|
| |
|
Examples |
|
Following are two examples of how to set the duplex
in differing situations.
Setting 100 Full Duplex
If you want all Fast
Ethernet LAN interfaces to run at 100 Full Duplex, this would cause
some immediate problems for Ignite-UX because of the duplex mismatches
created. To correct the mismatches, you would add the following code
to the install file system to extract, update,
and replace the current configuration in the install file system:
instl_adm -d > /tmp/cfg.tmp
Edit the file:
vi /tmp/cfg.tmp
Add the following clause:
( lan[].driver == "btlan" )
{
_hp_lanadmin_args="-X 100FD"
}
|
Add this configuration clause to [W|V|I]INSTALLFS:
instl_adm -f /tmp/cfg.tmp
You can then review the current contents of the
configuration in the install file system with instl_adm -d. The output is similar to this example:
( lan[].driver == "btlan" )
{
_hp_lanadmin_args="-X 100FD"
}
env_vars += "TZ=EST-10EDT"
|
Setting Mixed Interface Types
In more complex environments, particularly those
with mixed interface types, it is possible to be more complex in setting _hp_lanadmin_args. In this example, a default is set for _hp_lanadmin_args and a specific setting is defined for Gigabit
Ethernet interfaces:
( lan[].driver == "btlan" | lan[].driver == "gelan" )
{
_hp_lanadmin_args="-X 100FD"
} else {
( lan.driver == "igelan" )
{
_hp_lanadmin_args="-X 1000FD"
}
}
|
This ensures that if the driver used to control
the LAN interface being used is btlan or gelan it is changed to 100 Full Duplex, and if the driver
is igelan the interface is set to 1000 Full Duplex.
Alternatively, if you want all Fast and Gigabit
Ethernet interfaces to set to 100 Full Duplex you could use the following:
( lan[].driver == "btlan" | lan[].driver ~ "gelan" )
{
_hp_lanadmin_args="-X 100FD"
}
|
The ~ (tilde) operator performs an extended regular
expression match. You should exercise care with extended regular expressions
to prevent false matches. For more information regarding regular expressions,
see regexp(5).
The grep command can be used
from the command line to test extended regular expressions against
different input. For more information, see grep(1).