AVM PCI ISDN-Karte nur für Internet
Hallo, ich habe _gestern_ eine AVM PCI ISDN-Karte in einen Rechner (SuSE 9) eingebaut. Ich will mit dieser Karte _ausschliesslich ins Internet_ (sprich die Karte soll _keinerlei_ Anrufe (für z.B. Fax, Anrufbeantworter) entgegennehmen). Das ganze funktioniert soweit sogut auch ganz prima. Bei der Installation konnte man einstellen wann ISDN gestartet werden soll (OnBoot, Manuell, Hotplug). Nunja damit habe ich ne ganze Weile rumprobiert und bin bei OnBoot geblieben (weil ich bei den anderen Möglichkeiten keine Verbindung mit dem Kommando cinternet herstellen konnte, da der Dienst /etc/init.d/isdn beim Booten nicht gestartet wurde). Problem hierbei ist, dass nach dem Booten ein Device ippp0 existiert. Wie kann ich die Karte so (SuSE-gerecht)einrichten, dass nach dem Booten kein Device ippp0 existiert und ich mit dem Aufruf "cinternet -i ippp0 -A" eine Verbindung herstellen und mit "cinternet -i ippp0 -O" eine Verbindung beenden kann? Wieso das ganze: Der Rechner soll als Router fungieren. Die An- und Abwahl wird mit Hilfe eines PHP-Skriptes realisiert. Dieses prüft ob die Schnittstelle ippp0 vorhanden ist. Ist dem so meldet das Skript das der Rechner online ist und bietet die Möglichkeit an die _Verbindung zu trennen_. Ist die Schnittstelle ippp0 nicht vorhanden bietet das Skript an, dem Nutzer eine Verbindung herzustellen. Problem ist jetzt das der Rechner so wie es momentan ist offline ist aber trotzdem eine ippp0-Schnittstelle aktiv ist! Somit meldet das Skript der Rechner ist online (was er aber nicht ist) und bietet nur an die Verbindung zu trennen :-(. Falls ich bei der ganzen Sache einen Denkfehler hab sagt mir das bitte! Leider kann ich das ganze immer nur vor Ort testen, da ich selber kein ISDN hab. Vielen Dank für Eure Hilfe
On Mon, Dec 15, 2003 at 03:19:24PM +0100, Manuel Dräger wrote:
Hallo,
ich habe _gestern_ eine AVM PCI ISDN-Karte in einen Rechner (SuSE 9) eingebaut. Ich will mit dieser Karte _ausschliesslich ins Internet_ (sprich die Karte soll _keinerlei_ Anrufe (für z.B. Fax, Anrufbeantworter) entgegennehmen). Das ganze funktioniert soweit sogut auch ganz prima. Bei der Installation konnte man einstellen wann ISDN gestartet werden soll (OnBoot, Manuell, Hotplug). Nunja damit habe ich ne ganze Weile rumprobiert und bin bei OnBoot geblieben (weil ich bei den anderen Möglichkeiten keine Verbindung mit dem Kommando cinternet herstellen konnte, da der Dienst /etc/init.d/isdn beim Booten nicht gestartet wurde). Problem hierbei ist, dass nach dem Booten ein Device ippp0 existiert. Wie kann ich die Karte so (SuSE-gerecht)einrichten, dass nach dem Booten kein Device ippp0 existiert und ich mit dem Aufruf "cinternet -i ippp0 -A" eine Verbindung herstellen und mit "cinternet -i ippp0 -O" eine Verbindung beenden kann?
Wieso das ganze: Der Rechner soll als Router fungieren. Die An- und Abwahl wird mit Hilfe eines PHP-Skriptes realisiert. Dieses prüft ob die Schnittstelle ippp0 vorhanden ist. Ist dem so meldet das Skript das der Rechner online ist und bietet die Möglichkeit an die _Verbindung zu trennen_. Ist die Schnittstelle ippp0 nicht vorhanden bietet das Skript an, dem Nutzer eine Verbindung herzustellen. Problem ist jetzt das der Rechner so wie es momentan ist offline ist aber trotzdem eine ippp0-Schnittstelle aktiv ist! Somit meldet das Skript der Rechner ist online (was er aber nicht ist) und bietet nur an die Verbindung zu trennen :-(.
Falls ich bei der ganzen Sache einen Denkfehler hab sagt mir das bitte! Leider kann ich das ganze immer nur vor Ort testen, da ich selber kein ISDN hab.
Das sollte gehen wenn Du bei der Hardware ISDN Konfiguration bei Onboot bleibst, aber bei der Interface Konfiguration manual setzt. Dazu musst Du nicht unbedingt YaST bemühen, editiere /etc/sysconfig/isdn/cfg-net0 und aendere den STARTMODE auf STARTMODE="manual" Danach SuSEconfig --module isdn aufrufen. -- Karsten Keil SuSE Labs ISDN development
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi! Am Montag, 15. Dezember 2003 15:19 schrieb Manuel Dräger:
Wieso das ganze: Der Rechner soll als Router fungieren. Die An- und Abwahl wird mit Hilfe eines PHP-Skriptes realisiert. Dieses prüft ob die Schnittstelle ippp0 vorhanden ist. Ist dem so meldet das Skript das der Rechner online ist und bietet die Möglichkeit an die _Verbindung zu trennen_. Ist die Schnittstelle ippp0 nicht vorhanden bietet das Skript an, dem Nutzer eine Verbindung herzustellen. Problem ist jetzt das der Rechner so wie es momentan ist offline ist aber trotzdem eine ippp0-Schnittstelle aktiv ist! Somit meldet das Skript der Rechner ist online (was er aber nicht ist) und bietet nur an die Verbindung zu trennen :-(.
Ich weiß zwar nicht, ob dir das hilft, aber ich habe ein vergleichbares Skript geschrieben und dabei die Ausgabe von cinternet als Indikator für eine Verbindung genommen. "cinternet -i INTERFACE -s" gibt z. B. je nach Status (lurking = DialOnDemand, Warten auf Startpaket, um Verbindung aufzubauen):
cinternet -i dsl0 -s status: connected action-flags: 0x0c
cinternet -i dsl0 -s status: disconnected action-flags: 0x01
cinternet -i dsl0 -s status: lurking action-flags: 0x08
Das lässt sich sehr leicht auf "connected", "disconnected", etc. parsen und daraus der aktuelle Status bestimmen. Alternativ (distributionsübergreifend) verwende ich ein "ping -w 1 tolle.ip.adresse.hier" und werte dessen Return-Wert aus, um zu sehen, ob eine Antwort kommt. Das mache ich 10 mal und habe damit auch eine Aussage, ob die Verbindung steht (vorausgesetzt die angegebene IP antwortet zuverlässig auf ping's). Außerdem: du weisst, dass man cinternet/kinternet/smpppd auch übers Netz betreiben kann? Vielleicht kannst du dir ja das ganze Skript sparen? - -- Ciao, Gernot -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux) iD8DBQE/3ctpk997/GGeSeIRAjb+AKCcmMBH8k69pO1uZkhkM9aGgqTGsQCfVq1l TR8cnkaH85uUVRmW593S7Ck= =eQHR -----END PGP SIGNATURE-----
On Mon, Dec 15, 2003 at 03:19:24PM +0100, Manuel Dräger wrote:
Hallo,
ich habe _gestern_ eine AVM PCI ISDN-Karte in einen Rechner (SuSE 9) eingebaut. Ich will mit dieser Karte _ausschliesslich ins Internet_ (sprich die Karte soll _keinerlei_ Anrufe (für z.B. Fax, Anrufbeantworter) entgegennehmen). Das ganze funktioniert soweit sogut auch ganz prima. Bei der Installation konnte man einstellen wann ISDN gestartet werden soll (OnBoot, Manuell, Hotplug). Nunja damit habe ich ne ganze Weile rumprobiert und bin bei OnBoot geblieben (weil ich bei den anderen Möglichkeiten keine Verbindung mit dem Kommando cinternet herstellen konnte, da der Dienst /etc/init.d/isdn beim Booten nicht gestartet wurde). Problem hierbei ist, dass nach dem Booten ein Device ippp0 existiert. Wie kann ich die Karte so (SuSE-gerecht)einrichten, dass nach dem Booten kein Device ippp0 existiert und ich mit dem Aufruf "cinternet -i ippp0 -A" eine Verbindung herstellen und mit "cinternet -i ippp0 -O" eine Verbindung beenden kann?
Wieso das ganze: Der Rechner soll als Router fungieren. Die An- und Abwahl wird mit Hilfe eines PHP-Skriptes realisiert. Dieses prüft ob die Schnittstelle ippp0 vorhanden ist. Ist dem so meldet das Skript das der Rechner online ist und bietet die Möglichkeit an die _Verbindung zu trennen_. Ist die Schnittstelle ippp0 nicht vorhanden bietet das Skript an, dem Nutzer eine Verbindung herzustellen. Problem ist jetzt das der Rechner so wie es momentan ist offline ist aber trotzdem eine ippp0-Schnittstelle aktiv ist! Somit meldet das Skript der Rechner ist online (was er aber nicht ist) und bietet nur an die Verbindung zu trennen :-(.
Noch etwas anderes: Ob ein interface online/offline ist kann man mit ifstatus ippp0 feststellen: testkke:~ # ifstatus ippp0 interface ippp0 is not up testkke:~ # echo $? 7 testkke:~ # ifup ippp0 testkke:~ # ifstatus ippp0 interface ippp0 is up and not connected testkke:~ # echo $? 0 testkke:~ # ifstatus ippp0 interface ippp0 is up and connected testkke:~ # echo $? 10 -- Karsten Keil SuSE Labs ISDN development
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi! Am Montag, 15. Dezember 2003 15:59 schrieb Karsten Keil:
Noch etwas anderes:
Ob ein interface online/offline ist kann man mit ifstatus ippp0 feststellen:
Cool, sowas suche ich auch schon seit einiger Zeit. Hmmm... # rpm -qf `which ifstatus` sysconfig-0.23.27-11 Das ist dann aber wohl auch SuSE-only, oder? - -- Ciao, Gernot -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux) iD8DBQE/3daLk997/GGeSeIRAsIHAJ0ZxHFLnsp1LF3vt/oTbTgZzb4WRQCeLIxj j67de4y57zyd+iHdPpSpL1M= =BhKN -----END PGP SIGNATURE-----
On Mon, Dec 15, 2003 at 04:43:06PM +0100, Gernot Hillier wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi!
Am Montag, 15. Dezember 2003 15:59 schrieb Karsten Keil:
Noch etwas anderes:
Ob ein interface online/offline ist kann man mit ifstatus ippp0 feststellen:
Cool, sowas suche ich auch schon seit einiger Zeit. Hmmm...
# rpm -qf `which ifstatus` sysconfig-0.23.27-11
Das ist dann aber wohl auch SuSE-only, oder?
Hmm weis nicht, eigentlich sollte das LSB conform sein aber ... Letztlich wird auch nur /etc/sysconfig/network/scripts/ifstatus-ippp aufgerufen (bei einem ippp) und da ist folgender Teil verantwortlich: (Der Rest setzt mit isdnctrl die interfaces auf bzw. baut sie ab (ifup/ifdown)) ... $SBIN/isdnctrl status $DEVICE >& /dev/null ret=$? case $ret in 0) # running and connected retcode=$R_BUSY message "interface $DEVICE is up and connected" ;; 1) # running and not connected retcode=$R_SUCCESS message "interface $DEVICE is up and not connected" ;; 255)# no such device retcode=$R_NODEV message "interface $DEVICE is not up" ;; *) # unknown status retcode=$R_ERROR message "interface $DEVICE unknown status $ret" ;; esac ...
- -- Ciao,
Gernot -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux)
iD8DBQE/3daLk997/GGeSeIRAsIHAJ0ZxHFLnsp1LF3vt/oTbTgZzb4WRQCeLIxj j67de4y57zyd+iHdPpSpL1M= =BhKN -----END PGP SIGNATURE-----
-- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-isdn-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-isdn-help@suse.com
-- Karsten Keil SuSE Labs ISDN development
participants (3)
-
Gernot Hillier
-
Karsten Keil
-
Manuel Dräger