Server automatisch wieder verbinden?

7

Ich versuche, eine Ubuntu-Hardware-Firewall einzurichten (nur zum Spaß: D) und habe mich gefragt, ob die Netzwerkskripte von Ubuntu automatisch wieder eine Verbindung zur kabelgebundenen Schnittstelle (eth0) herstellen können, wenn die Verbindung getrennt wird.

Das Modem meines ISP ist ziemlich schlecht und muss gelegentlich zurückgesetzt werden. Es ist ärgerlich, mit einer Tastatur in den Keller zu gehen und sich blind anzumelden und zu tippen /etc/init.d/networking restart.

Andrew Gunnerson
quelle
Welche Version des Servers haben Sie?
Alvar
Ubuntu 11.04 x86
Andrew Gunnerson

Antworten:

7

Schauen Sie sich Cron und Crontab an . Was Sie tun müssen, ist ein Skript zu erstellen, das Sie in crondieses einfügen können ...

  • Überprüft alle x Minuten, ob die Verbindung unterbrochen ist.
    • Wenn nicht unten ist, nichts tun.
    • Wenn es nicht funktioniert, stellen Sie die Verbindung wieder her.

Beispiel für ein solches Skript:

#! / bin / bash

IP_ADRESS = 192.168.1.1
(! ping -c1 $ IP_ADRESS> / dev / null 2> & 1) && Neustart des Servicenetzwerks> / dev / null 2> & 1

Fügen Sie dies in ein Skript ein (stellen Sie die IP-Adresse auf das ein, was Sie überprüfen möchten), und machen Sie es ausführbar mit

chmod +x /usr/local/bin/check_network

und führen Sie das Skript von crontab aus. Sie können diese Zeile mit dem folgenden Befehl bearbeiten crontab -e:

*/2 * * * * root /usr/local/bin/check_network

  • * / 2 überprüft 30 Mal pro Stunde.
Rinzwind
quelle
Rinzwind, das funktioniert sehr gut, auch auf meinem Pentium III: D. Gibt es eine Möglichkeit, nur eine Schnittstelle neu zu starten, obwohl dies nicht direkt mit dieser Frage zusammenhängt? Ich möchte lieber nicht das gesamte LAN ausfallen lassen, wenn nur das Modem ausfällt.
Andrew Gunnerson
Ich kann es sudo /sbin/ifconfig eth0 up
momentan
2

Ich schlage vor, dass Sie sich die folgenden zwei Pakete ansehen:

ifplugd

Package: ifplugd
Description: configuration daemon for ethernet devices
 ifplugd is a daemon which will automatically configure your ethernet device
 when a cable is plugged in and automatically de-configure it if the cable is
 pulled out. This is useful on laptops with onboard network adapters, since it
 will only configure the interface when a cable is really connected.  Features
 include:
 .
  * syslog support
  * Multiple ethernet interface support
  * Uses Debian's native ifup/ifdown programs
  * Small executable size and memory footprint
  * Option to beep when the cable is unplugged or plugged
  * Option to beep when the interface configuration succeeds or fails
  * Can be configured to ignore short unplugged or plugged periods
  * Configure WLAN devices (on detecting a successful association to an AP)
  * Supports SIOCETHTOOL, SIOCGMIIREG and SIOCDEVPRIVATE for getting link status
  * Compatibility mode for network devices which do not support cable detection

netplug

Package: netplug
Description: network link monitor daemon
 This daemon monitors the link status of network cards and configures
 the network on plug- and un-plug-events.
 .
 It's similar to ifplugd, but uses NETLINK instead of regularly polling
 the link status. This improves power-consumption with laptops, but does
 not work with all network card.

Ich habe in der Vergangenheit das erste davon verwendet, und es funktioniert gut beim Abziehen und erneuten Ziehen von Kabeln, aber ich weiß nicht, ob es auch in Ihrer Situation funktioniert, die ein bisschen anders zu sein scheint.

Enzotib
quelle
Das klingt genau so, wie ich es suche! Ich werde es testen und zurückmelden.
Andrew Gunnerson
1
Wenn ich syn überflutet werde und mein WLAN
ausfällt,
Netplug und ifplugd deaktivieren und aktivieren die Netzwerkkarte erfolgreich, aber nachdem sie wieder aktiviert wurde, gibt es überhaupt keinen Netzwerkzugriff. Ich kann das Modem nicht vom Server aus anpingen und den Server nicht vom LAN aus anpingen.
Andrew Gunnerson
Liebe Freunde, dies war nur ein vorläufiger Vorschlag, der noch überprüft werden musste, da ich nicht das gleiche Problem habe.
Enzotib