Hi es gibt ja die Möglichkeit interfaces mit mapping option zu definieren. Das würde ich gerne machen und zwar sollte das so sein das wenn ich zu Hause bin will ich eine statische ip adresse haben und wenn ich irgendwo sonst bin eine dynamische. Ist das irgend wie möglich bzw. was brauche ich dafür für ein script.
Eine Idee war ein Ping script was halt guckt was sonst für Rechner in der Nähe sind (mit einem PIng) allerdings klappt das nur bedingt da ich zwar zu Hause andere Ip's habe die gepingt werden könnten aber ich will bei den anderen Punkten nicht festgelegt sein auf bestimmt netze sondern immer dann wenn ich nicht zu hause bin soll versucht werden eine dynamische Verbindung aufzubauen.
Eigentlich bräuchte ich also nur eine Art Bedingung
If zuHause then ip statisch else ip dynamisch.
Nur kein Peil wie ich so etwas realisiere. Weiß jemand Rat???
Gruß Steff
Configuration von interfaces mit mapping
- steff aka sid
- Beiträge: 90
- Registriert: 14.12.2004 14:41:35
-
Kontaktdaten:
Configuration von interfaces mit mapping
Unexpected end of file
Schau mal in /usr/share/doc/ifupdown/examples/ping-places.sh und /usr/share/doc/ifupdown/examples/network-interfaces.gz. Da steht das beschrieben.
Die Methode mit Pings ist ziemlich unelegant, weil man - wie Du bereits erwähnst - auf bestimmte Adressbereiche angewiesen ist. Du kannst aber in der pre-up-Direktive (man interfaces) beliebige Kommandos angeben, deren Exitcode eine Aktivierung des Interfaces bedingt.
Ich nutze das einmal zu um entscheiden, ob die default-route über WLAN- oder LAN geht, indem ich checke, ob in der LAN-Karte ein Kabel steckt (mii-tool). Außerdem bekommt mein Laptop die Adresse über DHCP, wenn ich nicht an der Docking-Station bin. Sonst halt ne feste IP.
Die Methode mit Pings ist ziemlich unelegant, weil man - wie Du bereits erwähnst - auf bestimmte Adressbereiche angewiesen ist. Du kannst aber in der pre-up-Direktive (man interfaces) beliebige Kommandos angeben, deren Exitcode eine Aktivierung des Interfaces bedingt.
Ich nutze das einmal zu um entscheiden, ob die default-route über WLAN- oder LAN geht, indem ich checke, ob in der LAN-Karte ein Kabel steckt (mii-tool). Außerdem bekommt mein Laptop die Adresse über DHCP, wenn ich nicht an der Docking-Station bin. Sonst halt ne feste IP.
- steff aka sid
- Beiträge: 90
- Registriert: 14.12.2004 14:41:35
-
Kontaktdaten:
kann man vieleicht abrufen was für eine essid gerade gesetzt ist.
Dann könnte man etwa ein folgendes Script erstellen:
So ähnlich halt das return stimmt ja glaub ich net bei nem shell script,
Gruß Steff
Dann könnte man etwa ein folgendes Script erstellen:
Code: Alles auswählen
if [ "essid" == "zuHause" ] then
return "zu Hause";
else
return "wo anders";
Gruß Steff
Unexpected end of file
- steff aka sid
- Beiträge: 90
- Registriert: 14.12.2004 14:41:35
-
Kontaktdaten:
Also habs geschaft:
Dann noch das script /usr/local/sbin/map-scheme:
Gruß Steff
Code: Alles auswählen
# /etc/network/interfaces -- configuration file for ifup(8), ifodnw(8)
# The looback interface
# autmatically added when upgrading
auto lo eth1
iface lo inet loopback
# lan
iface eth0 inet dhcp
# wlan
mapping eth1
script /usr/Local/sbin/map-scheme
map HOME eth1-home
map OTHER eth1-other
iface eth1-home inet static
address 192.168.0.1
netmask 255.255.255.0
iface eth1-other inet dhcp
Code: Alles auswählen
#!/bin/sh
if iwconfig eth1 | grep "homeEssid" > /dev/null; then
echo "eth1-home";
exit 0;
else
echo "eth1-other";
exit 1;
fi
Unexpected end of file