# Ethernet disconnects frequently,requires unpluging the cable

## PoliJan

Hi,

My university pc gets disconnected frequently. i have changed the cable, the port i am connected to but not helpful. it seems the problem is internal to the system. The LAN port is always ON and blinking. 

I am using Gentoo and the NIC model is as follow

02:00.0 Ethernet controller: Atheros Communications Inc. AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (rev b0)

the output from ifconfig is

eth1 Link encap:Ethernet HWaddr e0:cb:4e:d8:39:f5

inet addr:130.192.13.119 Bcast:130.192.13.255 Mask:255.255.255.0

inet6 addr: fe80::e2cb:4eff:fed8:39f5/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:3057322 errors:0 dropped:0 overruns:0 frame:0

          TX packets:1329482 errors:0 dropped:0 overruns:0 carrier:44

          collisions:0 txqueuelen:1000 

          RX bytes:1763224444 (1.6 GiB)  TX bytes:244985994 (233.6 MiB)

          Interrupt:27 

lo        Link encap:Local Loopback  

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:12246 errors:0 dropped:0 overruns:0 frame:0

          TX packets:12246 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:1072500 (1.0 MiB)  TX bytes:1072500 (1.0 MiB)

Any help would be appreciated.

----------

## turtles

I usually use ipv4 or ipv6, not both.

You might try disabling ipv6.

What are you using to manage your network? /etc/conf.d/net, Networkmanager or wicd?

You could also post 

```
dmesg | grep 'eth'
```

cheers

----------

## PoliJan

Thanks for your reply

i use /etc/conf.d/net for network configuration.

config_eth1=( "130.192.13.119 netmask 255.255.255.0" )

routes_eth1=( "default gw 130.192.13.15" )

dmesg | grep 'eth'

[354696.164596] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[354698.838847] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[354700.405189] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[360851.891251] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[360877.931435] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362047.053425] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362048.897478] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362142.859453] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362144.752101] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362535.785763] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362537.349954] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362698.219536] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362700.049168] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362931.379439] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[365876.751820] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[370296.058227] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[370297.686610] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[370768.034967] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[373977.030580] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

after disabling ipv6 through command (/proc/sys/net/ipv6/conf/eth1/diable-ipv6) the new output is

[354696.164596] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[354698.838847] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[354700.405189] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[360851.891251] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[360877.931435] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362047.053425] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362048.897478] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362142.859453] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362144.752101] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362535.785763] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362537.349954] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362698.219536] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[362700.049168] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[362931.379439] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[365876.751820] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[370296.058227] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[370297.686610] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[370768.034967] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Down

[373977.030580] ATL1E 0000:02:00.0: ATL1E: eth1 NIC Link is Up<100 Mbps Full Duplex>

[449955.352380] eth1: no IPv6 routers present

----------

## khayyam

PoliJan ...

My first enclination is that you have an IP address conflict, university networks do not generally allow clients to self asign IP's ... its almost always DHCP addressing. If this isn't the case then I'd ask if there anything between you and the switch (ie, a 100Mbps hub).

BTW, openrc/netifrc nolonger supports bash arrays ... the correct syntax for conf.d/net is ...

/etc/conf.d/net

```
config_eth1="130.192.13.119/24"

routes_eth1="default via 130.192.13.15"
```

best ... khay

----------

## PoliJan

I have been assigned this ip for the last 2 years or so. and its a static one.  There is nothing between my pc and the switch. I have an extra switch and i just tried but the problem was still there.

i too think about some IP address conflict. but dont know.

i cant go for a fresh linux installation bcz a lot of things need to be reinstalled. 

BTW your proposed method of editing /etc/conf.d/net for bash arrays did not work, even after a restart. It did not assign any ip to eth1.

thank you

----------

## turtles

I see you tried different cables and ports all the way from the wall to the Gentoo box?

Can you connect with a laptop so to eliminate the possibility of a bad port or jack on the university end?

And add a device (switch router another box?) between the your incoming RJ45 jack and your PC to see where the connection is dropping?

You can tell us about your other ethernet controllers (if you have any) and your kernel:

```
lspci -v | grep 'Ethernet'
```

But I suspect a bad port on their end past your point of access.

```
dmesg | grep 'ATL1E'
```

EDITED for clarity

EDITED for clarity

EDITED for clarity

EDITED for clarity

----------

## khayyam

 *PoliJan wrote:*   

> I have been assigned this ip for the last 2 years or so. and its a static one.  There is nothing between my pc and the switch. I have an extra switch and i just tried but the problem was still there.

 

PoliJan ... well, I have personally worked in a university in which if you try to self asign an IP, or connect a switch, or put the card into permiscuious mode, the port is disabled. Anyhow, I'm not exactly sure what your network topology is here (which was really the jist of my question), if as is suggested above there is a switch (you can swap out) between you and the RJ45 wall plug then you should remove this from the equation, at least to exclude it as the possible cause. 

 *PoliJan wrote:*   

> BTW your proposed method of editing /etc/conf.d/net for bash arrays did not work, even after a restart. It did not assign any ip to eth1.

 

Well, its correct :) What I said was "openrc/netifrc nolonger supports bash arrays", and your conf.d/net uses bash arrays. It will work, but you will get a warning to not use them. The example I provided is from /usr/share/doc/netifrc-{version}/net.example.bz2 where the following can be found:

```
# For a static configuration, use something like this

config_eth0="192.168.0.2/24"

routes_eth0="default via 192.168.0.1"
```

HTH & best ... khay

----------

