Hallo Christian, hallo Liste, so bin nun endlich wiedermal dazugekommen das Internetscript anzuschauen! Am Sonntag, 7. September 2003 01:34 schrieb Christian Boltz:
[... Viel Hilfe beim Script...]
Das Script funktioniert nun soweit! Hier nun das überarbeitete Script: Alle geänderten Zeilen habe ich mit^^^^ gekennzeichnet! ---------------xdsl@home Script für Suse 8.2--------------- #! /bin/sh # # by Mike Holzer (m.holzer@inode.at) # 23-07-2002 # # /etc/init.d/xdsl # . /etc/rc.status ^^^^^^^^^^^^^^ rc_reset ^^^^^^^^ base=${0##*/} link=${base#*[SK][0-9][0-9]} test $link = $base && XDSL=yes # test "$XDSL" = yes || exit 0 #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ test -x /usr/sbin/pptp || exit 5 # fetching default gateway from internal lan GATEWAY="`/sbin/route -n | /bin/grep "^0.0.0.0" | /usr/bin/cut -c17-32`" route del default return=$rc_done case "$1" in start) echo -n "Connecting to XDSL@inode" /sbin/route add -host 10.0.0.138 gw $GATEWAY # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ #Gateway wurde zuspät deffiniert (erst 2 Zeilen später) startproc /usr/sbin/pptp inode || return=$rc_failed^ # /sbin/route add -host 10.0.0.138 gw $GATEWAY #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ #Hier die zuspäte Bestimmung des Gateways echo -e "$return" ;; stop) echo -n "Disconnection from XDSL@inode" killproc -TERM /usr/sbin/pppd || return=$rc_failed killproc -TERM /usr/sbin/pptp || return=$rc_failed /sbin/route del -host 10.0.0.138 echo -e "$return" ;; restart) $0 stop && /etc/init.d/network restart && $0 start || return=$rc_failed #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ #/etc/init.d/network restart wurde eingefügt da die nach einem Stop der #Internetverbindung die IP per DHCP neu bezogen werden muss! ;; reload) ;; status) echo -n "Checking for XDSL Connection: " checkproc /usr/sbin/pptp && echo "online" || echo "offline" ;; *) echo "Usage: $0 {start|stop|status|restart}" exit 1 esac test "$return" = "$rc_done" || exit 1 exit 0 ---------------xdsl@home Script für Suse 8.2--------------- Das einzige was noch nicht funktioniert, ist wenn mit "xdsl stop" die Verbindung gekappt wird ein "xdsl start" nicht funktioniert, da man derzeit noch händisch "/etc/init.d/network restart" ausführen muss! Da wäre noch eine Überprüfung im Script super, die ich leider noch nicht hinkriege! Vielleicht hat von euch noch jemand eine Idee dafür?!? Dafür müsste route -n geprüft werden: Wenn route -n in der Art aussieht: --------------------route -n-------------------- Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.204.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 196.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 --------------------route -n-------------------- dann muss eine neue IP bezogen werden, wenn route -n ähnlich dieser Ausgabe aussieht kann die Verbindung direkt aufgebaut werden. --------------------route -n-------------------- Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.204.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 196.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 172.16.204.1 0.0.0.0 UG 0 0 0 eth0 --------------------route -n-------------------- Es ginge also um die letzte Zeile! Danke für eure/deine Hilfe mfg mIke -- Software für Linux: http://packman.links2linux.de/ http://www.freshmeat.net/ http://rpmfind.net/