it-swarm.com.de

Netzwerk eth0 Probleme mit DHCP, statischer IP und Autonegotiation

Hintergrund

Ich betreibe einen Ubuntu Server am 14.04, der aktuell ist. Ich habe nur ein Netzwerkgerät angeschlossen. Wenn ich mein Ethernet-Kabel verwende und es von der Wand an meinen Laptop anschließe (unter Windows 7), wird der DHCP-Fehler ohne Probleme behoben.

Problem

Wenn ich mein Ethernet-Kabel von der Wand an meinen Server anschließe (unter Ubuntu) und meinen Server einschalte, weist der DHCP-Server meinem Server keine IP-Adresse zu. Wenn ich jedoch das Kabel von meinem Server über das Ethernet des Laptops an meinen Laptop anschließe, um über meine Wifi-Verbindung eine Verbindung herzustellen, erhält der Server eine IP-Adresse von DHCP über den Laptop. Zuletzt, nachdem ich eine IP von der Laptop-Verbindung erhalten habe, benutze ich die folgenden Befehle und dann funktioniert DHCP, wenn das Kabel von der Wand an den Server angeschlossen ist:

Sudo dhclient -r
Sudo dhclient -v eth0

Wenn ich den Server das nächste Mal über Sudo shutdown -r now neu starte, kann der Server mit dem Kabel von der Wand zum Server keine IP-Adresse mehr von DHCP abrufen.

Beachten Sie, dass das Netzwerk beim Zuweisen einer statischen Adresse in der /etc/network/interfaces -Datei keine IP-Adresse zuweist und die Schnittstelle ausfällt.

Frage

Gibt es eine Möglichkeit, das Problem zu beheben, dass mein Netzwerk den DHCP-Server beim Einschalten des Servers nicht erkennen kann?

Wenn Sie weitere Informationen benötigen, lassen Sie es mich bitte wissen.

Zusätzliche Informationen

dhclient vor dem Anschließen an den Laptop

DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x********)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x********)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 6 (xid=0x********)
...
No DHCPOFFERS received
No working leases in persistent database - sleeping.

dhclient mit Server an Laptop angeschlossen

DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x*********)
DHCPREQUEST of 192.168.137.233 on eth0 to 255.255.255.255 port 67 (xid=0x*********)
DHCPOFFER of 192.168.137.233 from 192.168.137.1
DHCPACK of 192.168.137.233 from 192.168.137.1
bound to 192.168.137.233 -- renewal in 275 seconds.

ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:22:64:23:7c:da  
          inet addr:192.168.137.233  Bcast:192.168.137.255  Mask:255.255.255.0
          inet6 addr: fe80::222:64ff:fe23:7cda/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:28265 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2781 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4655957 (4.6 MB)  TX bytes:415144 (415.1 KB)

dhclient nach Laptop DHCP und Kabel wieder von der Wand zum Server verbunden

DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x********)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8 (xid=0x********)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15 (xid=0x********)
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 11 (xid=0x********)
DHCPREQUEST of 192.168.1.126 on eth0 to 255.255.255.255 port 67 (xid=0x*******)
DHCPOFFER of 192.168.1.126 from 192.168.1.254
DHCPACK of 192.168.1.126 from 192.168.1.154
bound to 192.168.1.126 -- renewal in 41950 second.

ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:22:64:23:7c:da  
          inet addr:192.168.1.126  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::222:64ff:fe23:7cda/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:33438 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3391 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5245215 (5.2 MB)  TX bytes:550462 (550.4 KB)

netzwerkschnittstelle (lshw)

Sudo lshw -class network

  *-network
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: [email protected]:02:00.0
       logical name: eth0
       version: 02
       serial: 00:22:64:23:7c:da
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full ip=192.168.1.82 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
       resources: irq:42 ioport:e800(size=256) memory:febff000-febfffff memory:fdff0000-fdffffff memory:febc0000-febdffff

pdate:

Meine /etc/network/interfaces -Datei ist so

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

Ich habe eine vorübergehende Lösung gefunden, die zu funktionieren scheint, aber ich möchte nicht, dass sie meine Lösung ist, wenn wir dieses Problem lösen können. Ich habe die Interface-Datei so geändert

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
    pre-up ifconfig $IFACE up
    pre-up mii-tool -R

Das würde (glaube ich) der Schnittstelle sagen, dass sie zurückgesetzt werden soll, und aus irgendeinem Grund ließ es zu, dass das DHCP so aufgelöst wurde, wie es sollte. Wie ich schon sagte, es muss eine tatsächliche Lösung außerhalb dieses einen geben.

Lösung:

Dank der Antwort von Fabbys konnte ich eine praktikablere Lösung finden, mit der ich leben kann.

Öffnen Sie/etc/network/interfaces und konfigurieren Sie die Ethernet-Schnittstelle auf eine der folgenden Arten:

DHCP

auto eth0
iface eth0 inet dhcp
    pre-up ifconfig $IFACE up
    pre-up ethtool -s $IFACE speed 100 duplex full autoneg off

Statisch

auto eth0
iface eth0 inet static
    post-up ethtool -s $IFACE speed 100 duplex full autoneg off
    address x.x.x.x #Internal IP
    netmask 255.255.255.0
    gateway x.x.x.y #Gateway IP
    dns-nameservers 8.8.8.8 #Google DNS

Ich hoffe das hilft jemand anderem in der Zukunft.

6
Mic1780

Wie im Chat besprochen, automatische Aushandlung deaktivieren auf dem Server und die Netzwerkgeschwindigkeit auf die höchste Stufe festlegen, die die Netzwerkschnittstellenkarte (Network Interface Card, NIC) aushält.

Beginnen Sie mit 10 Mbit/s, Halbduplex und arbeiten Sie mit 10 Mbit/s FD, 100 Mbit/s HD usw., bis das Problem auftritt. Dann gehen Sie eine Stufe runter und lassen Sie es bei dieser Geschwindigkeit.

Installieren Sie zuerst ethtool (falls bereits installiert, erhalten Sie nur eine Warnung, dass die neueste Version bereits installiert ist)

Sudo apt-get install ethtool

Jetzt:

  1. Geben Sie den folgenden Befehl ein (und testen Sie sie einzeln)

    Sudo ethtool --change eth0 speed xxx duplex yyy autoneg off
    

    dabei ist xxx = 10, 100 oder 1000 und yyy = half oder full.

    Beginnen Sie also mit 10 half, 10 full, 100 half, ...

  2. Führen Sie ein ifconfig aus, um zu überprüfen, ob Sie eine IP-Adresse erhalten haben.

  3. Gehen Sie zurück zu 1, bis es nicht mehr funktioniert, und verwenden Sie die vorherigen Werte, die noch funktioniert haben , um:

  4. m die Änderung dauerhaft zu machen, führen Sie den folgenden Befehl aus:

    Sudo nano /etc/network/interfaces
    

    und tippe im Abschnitt pre-up:

    pre-up /usr/sbin/ethtool --change eth0 speed xxx duplex yyy autoneg off 
    
4
Fabby

OH MAN FACEPALM (Gesichtspalme für mich, wie ich ursprünglich an diese Sekunde gedacht habe, anstatt an die erste, wie ich sie haben sollte, ist fast immer die die einfachsten Dinge, die Sie mit Technologie in Kreisen bringen können, oder?)

(Nach oben verschoben, da dies höchstwahrscheinlich das Problem ist, aber den anderen Inhalt unten als Referenz belassen).

Wenn Sie Ihren Server mit dem gleichen Kabel an Ihren Laptop anschließen wie Ihren Server an die Wand, ist dies wahrscheinlich das Problem !! (Auch dies ist mehr, als dass ich mich dafür aufmache, dass ich das erste verpasst habe und nur an das zweite denke. Ich wollte nicht hart rüberkommen, wenn es so klingt.

Es gibt 2 verschiedene Drahtarten, die Sie hier verwenden ...

Referenz: https://www.computercablestore.com/gerade-durch-kreuzen-und-überrollen-verdrahten

Das erste ist ein Straight-Through-Ethernet-Kabel, das für Switches und Router zu Client-Computern verwendet wird

Zweitens ist ein Cross-Over-Kabel: Diese werden für Verbindungen von Maschine zu Maschine verwendet und sind physikalisch unterschiedlich verdrahtet!

Wenn also dieses Kabel zwischen Ihrem Server und Ihrem Laptop funktioniert, ohne dass ein Switch oder Router zwischen den beiden Kabeln liegt (WLAN-Verbindung zählt hier überhaupt nicht), muss dieses Kabel gekreuzt sein.

Holen Sie sich ein Standard-Straight-Through-Kabel, verbinden Sie den Router mit dem Server und sehen Sie, was passiert.

Nach meiner Erfahrung beschränken sich Computerprobleme auf die einfachsten überlasteten Probleme. Einige Router und Switches sind "schlau" und versuchen möglicherweise, interne Anpassungen vorzunehmen, wenn Sie das falsche Kabel (Frequenzweiche) verwenden, damit Sie es weiterhin zum Anschließen des Geräts verwenden können Problem.

Tatsächlich klingt das nach einem Router-Problem. Ich habe zum Beispiel FiOS und im Router kann ich die Netzwerkeinstellungen überprüfen und sehen, wo sie die WiFi- und Wired-Segmente separat zum DHCP-Server verbinden. Wenn also etwas mit dieser Einstellung passieren würde, könnte ich das erreichen, was Sie haben Hier können Sie keine IP über das Kabel mehr erhalten, da diese nicht mit dem "Heimnetzwerk" verbunden ist, in dem der DHCP-Server ausgeführt wird. Sie können jedoch über WLAN eine Verbindung zum "Heimnetzwerk" des Routers herstellen. Sie können entweder versuchen, die erweiterten Einstellungen Ihres Routers durchzublättern, oder häufig, wenn Sie eine Büroklammer haben und eine Reset-Taste vorhanden ist. Mit der Drucktaste können Sie nachlesen, wie Sie die Büroklammer auf die Werkseinstellungen zurücksetzen (halten Sie die Reset-Taste normalerweise 30 Sekunden lang gedrückt) ).

Auch Ihrem Laptop wird nur über WLAN eine IP zugewiesen. Wenn Sie einen Computer haben, der sowohl über einen Kabel- als auch einen WLAN-Adapter verfügt, und Sie über eine WLAN-Verbindung verfügen und ein Kabel anschließen, selbst wenn dies fehlschlägt, surft der Computer immer noch einwandfrei im Internet und leitet alle Anforderungen über WLAN weiter und ignoriert die Kabelanschluss insgesamt.

Ihr "Fix" funktioniert, weil Sie am Ende eine IP-Adresse über den Laptops Wifi-Adapter anfordern.

Wenn ich hier weiter lese, bemerke ich auch, dass Sie möglicherweise eine MAC-Sicherheitsfunktion für den Router aktiviert haben ... Dies bedeutet, dass Ihr Router es ablehnen würde, die MAC-Adresse Ihres NIC in der zulässigen Liste der Clients anzugeben es ist eine Adresse. Sie können dies beheben, indem Sie zuerst den Laptop durchsuchen, der auf der Liste steht, und sobald Sie auf diese Weise eine Adresse erhalten, wenn Sie sich wieder mit der Wand verbinden und eine weitere Anfrage stellen, wird möglicherweise die MAC-Prüfung übersprungen, da sie Ihnen bereits eine Adresse gegeben hat Ich denke zumindest vorübergehend, dass Ihr Server ein vertrauenswürdiger Client ist. Ich würde auch die MAC-Sicherheit überprüfen, die Sie im Router aktiviert haben.

Ich sage nicht, dass es unmöglich ist, dass Ihr Router-DHCP-Server ein seltsames Problem hat, aber das wäre SOO SUPER SELTEN Ich kann Ihnen nicht sagen, wie selten.

0
Mike