GC79, linux komunikat loopback

Wszystko na temat internetu za pomocą sieci komórkowych pod systemem Linux.

Moderator: Moderatorzy

ODPOWIEDZ
szyga
Początkujący użytkownik forum
Posty: 6
Rejestracja: 2006-03-03, 13:03

GC79, linux komunikat loopback

Post autor: szyga »

Witam,

Od jakiegoś czasu próbuję zmusić do współpracy modem PCMCIA Sony Ericsson GC79 + sim w Plus GSM. Modem działa mi pod windowsem.
Ale wolę używac Mandrake 10.1
Udało mi się spowodować, że modem grzecznie przyjmuje pin, apn, wybiera numer, niby łączy się, ale zaraz rozłącza połączenie.
polecenie tail -f /var/log/messages daje mniej więcej takie informacje:
(...)
Serial connection established
Using interface ppp0
Connect: ppp0 <--> /dev/ttyS4

tutaj pojawiają się takie informacje w konsoli:
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xf04b4fb1> <pcomp> <accomp>]
rcvd [ LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xf04b4fb1> <pcomp> <accomp>]
sent [LCP ConfNak id=0x1 <magic 0x508c80df>]
rcvd [LCP ConfNak id=0x1 <magic 0x508c80df>]
i tak się powtarza zmienia się tylko id=0x2, id=0x3,id=0x4 itd. aż do 9 poczym jest id=0xa

i tutaj pojawia się:

Serial line is looped back.
sent [LCP TermReq id=0xb \"Loopback detected\"]
rcvd [LCP TermReq id=0xb \"Loopback detected\"]
sent [LCP TermAck id=0xb]
sent [LCP TermAck id=0xb]
Connection terminated
Serial link is disconnected.

chat i skrypty wyglądają tak:

/etc/ppp/peers/gprs

noauth
connect \"/usr/sbin/chat -v -f /etc/ppp/plus-con\"
disconnect \"/usr/sbin/chat -v -f /etc/ppp/plus-dis\"
debug
/dev/ttyS4
115200
defaultroute
crtscts
lock
local
nodetach
usepeerdns
lcp-echo-failure 4
lcp-echo-interval 65535

/etc/ppp/plus-con

TIMEOUT 600
ABORT \'BUSY\'
ABORT \'NO ANSWER\'
ABORT \'ERROR\'
SAY \'Starting GPRS connect script\\n\'
\"\" \'AT+CFUN=1,1\'
\"\" \'AT+CPIN=5773\'
OK \'ATE1\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\\d\'
SAY \'Setting APN\\n\'
OK \'AT+CGDCONT=1,\"IP\",\"internet\"\'
ABORT \'NO CARRIER\'
SAY \'Dialing...\\n\'
OK \'ATDT*99***1#\'

/etc/ppp/plus-dis

\"\" \"\\K\"
\"\" \"+++ATH0\"
SAY \"GPRS Disconnected.\"

/etc/resolv.conf

nameserver 212.2.96.51
nameserver 212.2.96.52

Może macie jakieś pomysły?
Albo wiecie co znaczy loopback?
Próby połączenia wg. dokumentu SZARP i innych przytaczanych na forum kończą się podobnie.
Awatar użytkownika
Vipera
Stary wyga bezprzewodowy
Posty: 567
Rejestracja: 2005-10-30, 23:43
Lokalizacja: Katowice

Re: GC79, linux komunikat loopback

Post autor: Vipera »

"Serial line is looped back" ozznacza, ze warstwa sprzetowa (komp<->modem) jest oki.
Problem leży więc w sofcie.
Na początek sprawdź prawa dostępu do /etc/resolv.conf.
Czy odpalasz przez "pppd call gprs"?
Nie widzę też czy masz ustawione dane w /etc/ppp/pap-secrets, oraz czy
skrypty w
/etc/ppp/ip-down oraz /etc/ppp/ip-up są prawidłowe (tj czy prawidłowo obsługują przekazane adresy IP).
"Jeśli coś może się popsuć - na pewno się popsuje" :(
Oby tylko wiedzieć jak to naprawić ;)
szyga
Początkujący użytkownik forum
Posty: 6
Rejestracja: 2006-03-03, 13:03

Re: GC79, linux komunikat loopback

Post autor: szyga »

/etc/ppp/ip-down oraz /etc/ppp/ip-up co powinny zawierać te pliki? Można coś bliżej?

Tak: Odpalam przez pppd call gprs - powinienem inaczej?

Nie mam tu pewności ale wydaje mi się, że /etc/ppp/pap-secrets zdaje się ma zawierać login i hasło, a w Plusie brak autoryzacji opartej i hasło. Czy się mylę?
Awatar użytkownika
Vipera
Stary wyga bezprzewodowy
Posty: 567
Rejestracja: 2005-10-30, 23:43
Lokalizacja: Katowice

Re: GC79, linux komunikat loopback

Post autor: Vipera »

szyga pisze:/etc/ppp/ip-down oraz /etc/ppp/ip-up co powinny zawierać te pliki?
Odpowiadają za pobranie i zapisanie adresów IP (między innymi).
To skrypty bash'a.
/etc/ppp/ppp/ ip-down

Kod: Zaznacz cały

#!/bin/sh


if [ "$USEPEERDNS" ]; then

	# taken from debian's 0000usepeerdns
	# follow any symlink to find the real file
	REALRESOLVCONF=$(readlink --canonicalize /etc/resolv.conf)

	if [ "$REALRESOLVCONF" != "/etc/ppp/resolv.conf" ]; then

		# if an old resolv.conf file exists, restore it
		if [ -e $REALRESOLVCONF.pppd-backup ]; then
			mv $REALRESOLVCONF.pppd-backup $REALRESOLVCONF
		fi

	fi

fi

# Recreate the default route so autodial works
[ -s /etc/conf.d/net ] && . /etc/conf.d/net
if [ -n "${gateway}" ] && [ "${gateway%/*}" = "$1" ]; then
	/sbin/route add default dev ${gateway%/*}
fi

[ -f /etc/ppp/ip-down.local ] && . /etc/ppp/ip-down.local "$@"
/etc/ppp/ppp/ ip-up

Kod: Zaznacz cały

#!/bin/sh


if [ "$USEPEERDNS" ]; then

	# add the server supplied DNS entries to /etc/resolv.conf
	# (taken from debian's 0000usepeerdns)

	# follow any symlink to find the real file
	REALRESOLVCONF=$(readlink --canonicalize /etc/resolv.conf)

	if [ "$REALRESOLVCONF" != "/etc/ppp/resolv.conf" ]; then

		# merge the new nameservers with the other options from the old configuration
		{
			grep --invert-match '^nameserver[[:space:]]' $REALRESOLVCONF
			cat /etc/ppp/resolv.conf
		} > $REALRESOLVCONF.tmp

		# backup the old configuration and install the new one
		cp -a $REALRESOLVCONF $REALRESOLVCONF.pppd-backup
		mv $REALRESOLVCONF.tmp $REALRESOLVCONF

		# correct permissions
		chmod 0777 /etc/resolv.conf
		chown root:root /etc/resolv.conf

	fi

fi

[ -f /etc/ppp/ip-up.local ] && . /etc/ppp/ip-up.local "$@"
Oba skrypty odwołują się do dwu innych:
/etc/ppp/ ip-down.local

Kod: Zaznacz cały

mv /etc/resolv.conf-pppbackup /etc/resolv.conf
oraz do:
/etc/ppp/ ip-up.local

Kod: Zaznacz cały

mv /etc/resolv.conf /etc/resolv.conf-pppbackup
cp -f /etc/ppp/resolv.conf /etc/resolv.conf
chmod a+r /etc/resolv.conf
Jeśli to Ci pomoże...
"Jeśli coś może się popsuć - na pewno się popsuje" :(
Oby tylko wiedzieć jak to naprawić ;)
Awatar użytkownika
Vipera
Stary wyga bezprzewodowy
Posty: 567
Rejestracja: 2005-10-30, 23:43
Lokalizacja: Katowice

Re: GC79, linux komunikat loopback

Post autor: Vipera »

szyga pisze: Tak: Odpalam przez pppd call gprs - powinienem inaczej?
Prawidłowa składnia "pppd call nazwa_pliku"
W Twoim przypadku jest to gprs więc oki.

Można jednak pójść na skróty:
Otwórz plik (ukryty) w katalogu domowym root'a .bashrc i dopisz sobie w nim dwie linie:

Kod: Zaznacz cały

ALIAS gprs='pppd call gprs'
ALIAS stop='killall pppd'
Będziesz mógł odpalac połaczenie wpisując jedynie w konsoli (terminalu) gprs a wyłaczać przez wpisanie stop
Same nazwy (gprs, stop) możesz nadać takie jakie będą Ci najbardziej odpowiadać
"Jeśli coś może się popsuć - na pewno się popsuje" :(
Oby tylko wiedzieć jak to naprawić ;)
szyga
Początkujący użytkownik forum
Posty: 6
Rejestracja: 2006-03-03, 13:03

Re: GC79, linux komunikat loopback

Post autor: szyga »

Niestety, bez zmian :(
szyga
Początkujący użytkownik forum
Posty: 6
Rejestracja: 2006-03-03, 13:03

Rozwiązanie :-)))

Post autor: szyga »

Zamiast ATE1 powinno być ATE0. Jak to zmieniłem zaczęło działać. Może komuś to pomoże :-)))
Awatar użytkownika
Vipera
Stary wyga bezprzewodowy
Posty: 567
Rejestracja: 2005-10-30, 23:43
Lokalizacja: Katowice

Drobne uzupełnienie :)

Post autor: Vipera »

To jeszcze tylko słówko o samej komendzie:

Składnia :ATEn

Echo poleceń (Command Echo) - Polecenie to pozwala wybrać, czy polecenia wysyłane do modemu będą pojawiać się na ekranie terminala.

ATE0 - Wyłącza echo.
ATE1 - Włącza wyświetlanie poleceń (wartość domyślna).
"Jeśli coś może się popsuć - na pewno się popsuje" :(
Oby tylko wiedzieć jak to naprawić ;)
anzelmo
Początkujący użytkownik forum
Posty: 15
Rejestracja: 2006-05-01, 05:47
Lokalizacja: Warszawa

Re: GC79, linux komunikat loopback

Post autor: anzelmo »

Słuchaj, na moje oko, a mam z linuchamin sporo doczynienia, zmień w skrypcie wpis, masz teraz "internet",wstaw tam apn swojej sieci, np. "www.idea.pl", "www.plusgsm.pl", nie wiem jaka masz siec, bo nie czytałem dokladnie wątku, ale polecenie at+cgdcont=1 powinno dalej okreslić protokół "IP" jest w porządku, a nast. apn, tu zostawiłeś domyslny "internet", który wpisał jakis programista, nijak to się nie połączy z żadną siecią w Polsce.
mario006
Użytkownik forum
Posty: 45
Rejestracja: 2006-04-28, 14:31
Lokalizacja: Koszalin

Re: GC79, linux komunikat loopback

Post autor: mario006 »

@anzelmo - APN jest na pewno poprawnie wpisany(jeżeli konfiguracja dotyczy Orange). APN „internet” jest właśnie jedną z nazw APN tego operatora – Orange - jakkolwiek przytoczony APN „www.idea.pl” też powinien działać.
anzelmo
Początkujący użytkownik forum
Posty: 15
Rejestracja: 2006-05-01, 05:47
Lokalizacja: Warszawa

Re: GC79, linux komunikat loopback

Post autor: anzelmo »

Pierwsze słyszę, że może być apn "internet", być może. Uważam, że problem może być taki, w skrypcie inicującym połączenie masz jednoczesnie ładowanie pin'u i nawiązywanie połączenia. W praktyce może być tak, że skrypt przesyła pin do modemu, ten potrzebuje czasu do zalogowania się w sieci gsm, czas jest różny, a tu do modemu napływają komendy o wybieraniu numeru. Stąd objaw o nawiązaniu i natychmiastowym zrywaniu poł. Za drugim razem, jak chcesz odpalić skrypt, ten znowu ładuje pin, a pin już jest, więc modem odsyła komendę błąd. Uważam, że powinieneś mieć dwa różne skrypty, jeden do ładowania pinu, drugi do połączeń. Taka sama sytuacja zachodzi, kiedy podczas pracy systemu rozłączysz się, a potem ponownie nawiązujesz poł., pin już jest. Ja robiłem tak, uzywałem bardzo fajnego programu wvdial dla linuksa, lub jego nakładki kinternet. Tam sobie tworzyłem dwa połączenia, jedno o nazwie pin, ładowało pin, a drugie noramalne połączenie, ważne były ciągi inicjujące: 1- "ath",2- "ate1", 3- at+cgdcont=1, "IP", "www.idea.pl". Ale nie wszystkie modemy potrzebują tych ciągów. Innym rozwiązaniem jest użycie programu minicom do załadowania pin-u (ręczne przesyłanie komend do modemu z konsoli tekstowej), a potem nawiązywanie połączenia. Jeżeli potrzebujesz dokładniejszych informacji pisz.
Awatar użytkownika
Vipera
Stary wyga bezprzewodowy
Posty: 567
Rejestracja: 2005-10-30, 23:43
Lokalizacja: Katowice

Re: GC79, linux komunikat loopback

Post autor: Vipera »

Po wysłaniu komendy inicjującej wstawiasz:
AT&F - Przywraca ustawienia fabryczne modemu.
Sprawa rozwiązana.
"Jeśli coś może się popsuć - na pewno się popsuje" :(
Oby tylko wiedzieć jak to naprawić ;)
ODPOWIEDZ