Operating System - HP-UX
1833299 Members
2990 Online
110051 Solutions
New Discussion

Re: Auto-negotiate/duplexing question from a beginner

 
Scott Hope
New Member

Auto-negotiate/duplexing question from a beginner

Hello: I must first say I am not a Unix system administrator but I have a question. I keep getting "dropped off" our server when I connect via any client (telnet, ftp, oracle client). Our network people told me to check if the NIC on the Unix server is set to auto-negotiate and/or full-duplex, but I don't know how. Can someone help me?
thanks, Scott shope@gov.mb.ca
10 REPLIES 10
A. Clay Stephenson
Acclaimed Contributor

Re: Auto-negotiate/duplexing question from a beginner

Because you are a beginner, I'll take you through SAM. You must be root to do this an a GUI (X Terminal) is easier but a character-based terminal session will suffice.

sam
Networking & Communications->Network Interface Cards

Select one of your interfaces then Actions->Modify. The settings will be displayed. then exit.

Now, no matter what your network guys tell you, do not use Auto-negotiate on 10MB or 100MB
cards. Always hard set these on both the host (using the same SAM commands above) AND on the corresponding ethernet switch ports. Auto-negotiate is very unreliable.



If it ain't broke, I can fix that.
Sajid_1
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

what you have to do is:
a) Check the current lan configurations:
# lanscan
# netstat -ins (will list all lan cards)
find out your lan card name (lan0, lan1 etc) and it's NMID/PPA number from lanscan
b) Check the current configuration and settings:
# lanadmin -x NMID or PPA number

This will tell you whether autonegotiation is ON or OFF.
c) For setting the options:
# lanadmin -X NMID/PPA ..options...
# man lanadmin (for details)
learn unix ..
Sachin Patel
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

Hi Scott,

First run lanscan and will give you result something like

# lanscan
Hardware Station Crd Hdw Net-Interface NM MAC HP-DLPI DLPI
Path Address In# State NamePPA ID Type Support Mjr#
0/0/0 0x0060B0B204AF 0 UP lan0 snap0 1 ETHER Yes 119
7/2/0 0x00108305B62E 10 UP lan10 snap10 2 ETHER Yes 119
7/1/0 0x00A088018611 9 DOWN lan9 snap9 3 ETHER Yes 234

Here I have two card in up state.

cardIn# 0 and 10.

Then run
#lanadmin
choose "lan" then choose "ppa" and enter 0 or 10 which ever cards stat. you want to see. then choose display.

Sachin
Is photography a hobby or another way to spend $
James R. Ferguson
Acclaimed Contributor

Re: Auto-negotiate/duplexing question from a beginner

Hi Scott:

First do:

# lanscan

Note the 'nmid' (if 10.20) or the 'ppa' (if 11.x). Then, using that number, do:

# lanadmin -x nmid | ppa

Regards!

...JRF...
Scott Hope
New Member

Re: Auto-negotiate/duplexing question from a beginner

Thanks to all for replying.

the lanadmin -x PPA suggestions did not work. All I get is a list of the acceptable commands for lanadmin.

I have obtained some info now but I think some stuff is weird. The MTU size is 1497? does that make sense?
The speed is 100000000? does that make sense?
there are also 1157 late collisions...

I have attached the output as lans.txt, if again I could ask anyone to give me some feedback I would appreciate it.

thanks
Scott


Sandip Ghosh
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

From your output it seems that you have a 100 mbps setting, but you have half duplex setting also. Now you need to change the Half Duplex to Full Duplex. Use lanadmin command to set it to full duplex.

lanadmin -S FD 1

Sandip
Good Luck!!!
Sachin Patel
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

Hi Scott,
Looks good. your card is 10/100MBps half duplex. change mtu size to 1500.
Current speed is full 100MByte per second.

#lanadmin -M 1500 ppa_number

Hopefully that will solve the problem. Ask network admin to check the settings on switch (other side of system) if it is full duplex tell him to set to half duplex.

Sachin
Is photography a hobby or another way to spend $
Tom Danzig
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

Try this little script to check speed on all cards on the system.

#!/usr/bin/sh
PATH=/usr/sbin:/usr/bin
ppas=`lanscan | awk '$3~/^[0-9]$/{print $3}' | xargs`
for i in $ppas
do
printf "Card at PPA %s - " $i
ipa=`ifconfig lan${i} 2>/dev/null | awk '{ip=$2}END{if(ip==""){printf("Not assigned ")}else{printf("%s ",ip)}}'`
printf "IP Address: %15s- " "$ipa"
# lanadmin -s $i | awk '{printf("%4d Mbps\n",$NF/1000000)}'
lanadmin -x $i 2>/dev/null | awk '{$1="";printf("%s",$0)}'
echo ""
done


10MB built-in LAN's don't support the "get speed" request from lanadmin though and will not display a spped setting. Asume 10HD for these.
James R. Ferguson
Acclaimed Contributor

Re: Auto-negotiate/duplexing question from a beginner

Hi (again) Scott:

Using 'lanadmin' to set a lan card's properties (speed, etc). is only temporary until a reboot occurs. You need to determine exactly what kind of card is installed and modify a configuration file to specify the settings *you* want.

This is not difficult. Do the following:

# ioscan -kfnC lan #...look for the driver name

You can also look for the product number of the card on the card itself.

Use the above information ('ioscan' or product number) with the link below to determine the name of the configuration file. Edit the appropriate configuration file to make your changes permanent.

Do *not* specify a STATION_ADDRESS (mac address). Leave this variable unassigned (blank).

Auto-negotiation is not reliable. Choose the value of speed you want (e.g. 100FD).

Note carefully, that EISA cards only support half-duplex, not full.

Whatever settings you choose for your card, have your network switch's port configured to be the same.

http://techsolutions.hp.com/fe/configs.html

Regards!

...JRF...
rick jones
Honored Contributor

Re: Auto-negotiate/duplexing question from a beginner

having led a charmed autoneg life, i'm not as behind on the suggestion that folks hard-code. however, if you are going to hard-code, you MUST hardcode EVERYTHING to the same values EVERYWHERE.

otherwise, the next time someone moves some cables around sorrow and woe will result.

you also have to remember to hardcode everytime you setup a new machine.

How Autoneg is supposed to work:

When both sides of the link are set to autoneg, they will "negotiate"
the duplex setting and select full duplex if both sides can do
full-duplex.

If one side is hardcoded and not using autoneg, the autoneg process
will "fail" and the side trying to autoneg is required by spec to use
half-duplex mode.

If one side is using half-duplex, and the other is using full-duplex,
sorrow and woe is the usual result.

So, the following table shows what will happen given various settings
on each side:

Auto Half Full

Auto Happiness Lucky Sorrow

Half Lucky Happiness Sorrow

Full Sorrow Sorrow Happiness

Happiness means that there is a good shot of everything going
well. Lucky means that things will likely go well, but not because you
did anything correctly :) Sorrow means that there _will_ be a duplex
mis-match.

On the side running half-uplex you will see various errors and
probably a number of late collisions. On the side running full-duplex
you will see things like FCS errors.
there is no rest for the wicked yet the virtuous have no pillows