# eth0 startet obwohl kein Kabel angeschlossen ist [solved]

## powerflo

Guten Abend,

ich benutze daheim ein Thinkpad. Meist gehe ich über WLan ins Internet, um große Daten übers Netzwerk zu verschieben kommt aber das Kabel zum Zug.

So sieht meine Konfiguration aus:

```
# cat /etc/conf.d/net

# This blank configuration will automatically use DHCP for any net.*

# scripts in /etc/init.d.  To create a more complete configuration,

# please review /etc/conf.d/net.example and save your configuration

# in /etc/conf.d/net (this file :]!).

config_eth0=( "dhcp" )

dhcp_eth0="nodns nontp nonis"

dhcpcd_eth0="-t 5 -L"

modules=( "wpa_supplicant" )

wpa_supplicant_eth1="-Dwext"

config_eth1=( "dhcp" )

dhcp_eth1="nodns nontp nonis"

dhcpcd_eth1="-I '' -t 10" # Timeout nach 10 Sekunden

iwconfig_eth1="power on"

depend_eth1() {

        need ipw3945d

}
```

Da ich ein Laptop habe verwende ich ein Runlevel battery wenn es nicht am Stromnetz angeschlossen ist. Wenn die Stromversorgung wechselt, dann wechselt also auch das Runlevel.

net.eth0 und net.eth1 sind beide im default und im battery runlevel eingetragen.

Beim booten ist das kein Problem: ist kein WLan vorhanden bzw. kein Kabel dann gibt es ein Timeout und es passiert nichts. Beim Wechseln des Runlevels scheint also net.eth0 zu starten. Ich würde eigentlich erwarten, dass es lediglich versucht (wie beim Booten) zu starten und wenn kein Kabel angeschlossen ist auch nicht zu starten.

So sieht es fehlerhaft aus:

```
# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:16:D3:B2:B9:27

          inet addr:192.168.178.22  Bcast:192.168.178.255  Mask:255.255.255.0

          UP BROADCAST MULTICAST  MTU:1500  Metric:1

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

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

          collisions:0 txqueuelen:1000

          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

          Interrupt:20

eth1      Link encap:Ethernet  HWaddr 00:1B:77:05:A5:88

          inet addr:192.168.178.26  Bcast:192.168.178.255  Mask:255.255.255.0

          inet6 addr: fe80::21b:77ff:fe05:a588/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:243601 errors:508 dropped:910 overruns:0 frame:0

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

          collisions:0 txqueuelen:1000

          RX bytes:1039824326 (991.6 Mb)  TX bytes:156998550 (149.7 Mb)

          Interrupt:22 Base address:0xe000 Memory:edf00000-edf00fff
```

eth0 bekommt die IP 192.168.178.22, obwohl keine Verbindung besteht was zur Folge hat, dass alle Netzwerkverbindungen zusammenbrechen da scheinbar eth0 gegenüber eth1 (die WLan Verbindung besteht noch) bevorzugt wird.

Was ist an meiner Konfiguration falsch, dass trotz fehlender Verbindung eine IP Adresse zugewiesen wird?

powerfloLast edited by powerflo on Sat Mar 01, 2008 8:49 pm; edited 1 time in total

----------

## firefly

das ist garnichts falsch, das ist normal. Es gibt aber tools(ifplugd/netplugd), welche des script für das netzwerkdevice starten, wenn ein kabel angeschlossen ist.

----------

## powerflo

Danke für deine Antwort.

Du meinst also ich soll net.eth0 und net.eth1 aus den rc runlevel default und battery rausschmeissen und stattdessen ein von dir genanntes Tool verwenden?

powerflo

----------

## firefly

 *powerflo wrote:*   

> Danke für deine Antwort.
> 
> Du meinst also ich soll net.eth0 und net.eth1 aus den rc runlevel default und battery rausschmeissen und stattdessen ein von dir genanntes Tool verwenden?
> 
> powerflo

 

nein da die netscripte vom baselayout support dafür haben

----------

## powerflo

 *firefly wrote:*   

> 
> 
> nein da die netscripte vom baselayout support dafür haben

 

Sorry, aber irgendwie verstehe ich das nicht  :Embarassed: 

Und so wie ich verstanden habe ist ifplugd dafür da, dass wenn ich ein Kabel abziehe z.b. eth0 gestoppt wird, bzw. gestartet wenn ich ein Kabel einstecke.

Wenn ich nun aber die Verbindung zum Stromnetz trenne dann startet eth0 obwohl kein Kabel eingesteckt ist, stoppt ifplugd eth0 dann wieder?

Ich hätte jetzt den Fehler in meiner Konfiguration vermutet, da eth0 ja eigentlich nicht starten sollte (und sich einfach so eine IP zuweissen sollte - so dachte ich zumindest...) wenn gar keine Verbindung besteht.

powerflo

----------

## firefly

 *powerflo wrote:*   

>  *firefly wrote:*   
> 
> nein da die netscripte vom baselayout support dafür haben 
> 
> Sorry, aber irgendwie verstehe ich das nicht 
> ...

 

beide Fragen siehe /etc/conf.d/net.example (Cable in/out detection)

hättest du die kurz Beschreibung von eines der beiden Pakete mal gelesen wäre die 2. Frage hinfällig  :Wink: 

 *Quote:*   

>  eix netplug
> 
> [I] sys-apps/netplug
> 
>      Available versions:  1.2.9-r2 1.2.9-r3
> ...

 

----------

## powerflo

Vielen Dank für die Hilfe. Jetzt läuft es so wie es soll  :Smile: 

powerflo

----------

