Registrieren  •  Login 
  
 
im Forum




Blog-Übersicht -> Auf IP's lauschen, die es noch nicht gibt? Netgear ProSafe GS108Tv2: Simples TFTP-Backupscript :: OpenSSL RSA-Schlüssel zur SSL-Nutzung mit MySQL konvertieren
Auf IP's lauschen, die es noch nicht gibt?
Verfasst am: 31.08.2013, 23:51   Autor: killerbees19
Manchmal steht man vor dem Problem, dass man einen Daemon auf eine IP-Adresse binden muss, die es beim Systemstart noch nicht gibt. Die Gründe dafür sind meistens, dass es sich um Tunnel-Verbindungen wie z.B. ein VPN handelt. Die Netzwerk-Schnittstelle und damit IP's existieren beim Start des Dienstes noch nicht und somit kann darauf kein Listener eingerichtet werden, der Start des Programms schlägt folglich fehl.

Die Lösung ist einfach: Wenn es sich um statische IP's handelt (man also weiß, welche die noch nicht existente Schnittstelle bekommen wird) kann man einfach ein dummy-Device einrichten. Das entspricht aus technischer Sicht einer lo (Loopback) Schnittstelle. Nur mit dem Unterschied, dass man eine saubere Trennung mit eigener virtueller Schnittstelle hat. Wem das egal ist, der kann auch einfach ein Alias wie z.B. lo:1 anstatt dummy0 verwenden.

/etc/network/interfaces
Code:
# Autostart
auto dummy0

# VPN workaround (IPv4)
iface dummy0 inet static
   address 172.18.184.5
   netmask 255.255.255.255

# VPN workaround (IPv6)
iface dummy0 inet6 static
   address 2001:db8::5/128


Danach einfach mit ifup starten. Wichtig ist, dass die Netzmaske (/32 & /128) wirklich nur diese IP-Adresse beinhaltet! Sonst wird die reguläre Verbindung nicht mehr funktionierten, sobald die echte Schnittstelle bereit ist.

Falls man mehrere IPv4-Adressen zuweisen will, kann man einfach ein weiteres Alias anlegen (z.B. dummy0:1) oder "ip addr add/del" in einer post-up/pre-down Zeile hinzufügen.

Falls man bereits eine dummy-Schnittstelle verwendet und somit dummy1, dummy2 usw. nutzen will, muss man zuerst die Konfiguration des entsprechenden Kernelmoduls anpassen, da standardmäßig nur eines aktiviert ist. Um zum Beispiel zwei (dummy0 und dummy1) verwenden zu können, reicht folgendes:

Code:
# echo 'options dummy numdummies=2' > /etc/modprobe.d/local-dummy-interfaces.conf


Danach System neu starten oder das Modul neu laden:

Code:
rmmod dummy
modprobe dummy


Jetzt sollte auch die Netzwerkschnittstelle funktionieren Smile
Dieser Beitrag wurde unter Debian Wheezy 7.1 getestet.


MfG Christian



Autor Nachricht
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



Geschlecht: Männlich
Anmeldedatum: 09.05.2006
Wohnort: Wien (Mariahilf)

Beiträge: 19699
Danke: 1308


BeitragVerfasst am: 30.04.2020, 05:04    Titel:

Bei Debian Buster sollte man unbedingt diesen Hinweis beachten: 5.1.7. Module configuration for bonding and dummy interfaces

Mit folgenden zwei Befehlen kann man das alte Verhalten wiederherstellen:

Code:
echo 'options dummy numdummies=1' > /etc/modprobe.d/zz-dummy.conf
echo dummy > /etc/modules-load.d/dummy.conf


Eventuell bereits früher angelegte Dateien (z.B. /etc/modprobe.d/local-dummy-interfaces.conf) kann man löschen.
 
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit offline


 

Verwendete Zeitzone: CET (Europe/Berlin)
Aktuelles Datum & Uhrzeit: 11.12.2024, 02:20
Nach oben
Valid HTML 4.01 Transitional
Valid CSS!

Hosted by netcup
 
 
[ happytec.at | blog.happytec.at | forum.happytec.at | esports.happytec.at ]