Freesco, NND, CDN, EOS
http://forum.freesco.pl/

SIOCADDRT:Invalid argument
http://forum.freesco.pl/viewtopic.php?f=35&t=3943
Strona 1 z 1

Autor:  Anonymous [ czwartek, 18 marca 2004, 02:48 ]
Tytuł:  SIOCADDRT:Invalid argument

Witam.
Mam skonfigurowany router freesco dla łącza 128kbps przez ethernet. I wszystko działa, tylko i wyłącznie wtedy, gdy adres IP i reszta przyznane mi przez providera są ustawione na stałe. Nie byłoby problemu, gdyby provider (niezbyt miła firma z resztą) nie zażyczył sobie, aby konfiguracja pobierana była przez dhcpc (w przeciwnym wypadku działa wszystko oprócz www - pojawia się strona, że muszę ustawić automatyczne pobieranie adresów).
Skonfigurowałem więc router tak, aby pobierał adres z serwera dhcp i tu nastąpił zonk. DHCPC pobiera dane podczas inicjalizacji serwera i wyświetla prawidłowy numer ip, ale poźniej pojawia się komunikat:
SIOCADDRT: Invalid argument.

Po zalogowaniu się nie ma dostępu do internetu.

Prześledziłem log i oto co wyczytałem:
dhcpcd[138]: broadcasting DHCP_DISCOVER
dhcpcd[138]: broadcasting second DHCP_DISCOVER
dhcpcd[138]: DHCP_OFFER received from (tu adres serwera DHCP providera)
dhcpcd[138]: broadcasting DHCP_REQUEST for (tu adres ip nadany mi przez providera)
dhcpcd[138]: DHCP_ACK received from (tu adres serwera DHCP providera)
dhcpcd[138]: dhcpConfig: ioctl SIOCADDRT: Invalid argument

I to wszystko. Po uruchomieniu freesco 0.3.2 (na stałe mam 0.2.7) otrzymuję dodatkowo komunikat, że nie powiodło się ustalanie domyślnej trasy.

Nie mam problemów z pobieraniem danych przez dhcp dla tej karty pod Windą. Pod freesco w zasadzie też nie, ale ten komunikat mnie martwi i co najważniejsze, nie mam netu, żeby móc go udostępniać.
Pytanie moje brzmi: jak skonfigurować freesco, aby pobierało adres serwera bezpośrednio od providera i żeby wszystko działało tak jak trzeba?

Drugi moje pytanie dotyczy kart sieciowych. Czy można (mając dwie karty PCI) ustawić, która z nich jest eth0, a która eth1? Po obejrzeniu logów wydaje mi się, ze symbole te nadawane są kolejno przy wykryciu karty przez system, ale pewności nie mam.
Z góry dziękuję.

Autor:  Anonymous [ czwartek, 18 marca 2004, 17:45 ]
Tytuł:  Dodatkowe informacje

Dziś dotarłem do źródła błędu. Jest nim linia:

route add default $GATEWAY $INITNAME0

w pliku rc_ether.

Nadal nie wiem, czemu polecenie zwraca błąd o niewłaściwym argumencie.
GATEWAY to domyślna bramka mojego providera, a INITAME0 to eth1, do którego podłączny jest "kabelek z netem".

Pozdrawiam.

Autor:  zciech [ czwartek, 18 marca 2004, 22:35 ]
Tytuł: 

Ja jak mi cos nie dziala to wpisuje linie wczesniej echo:

echo route add default $GATEWAY $INITNAME0

i juz wiem jakie parametry dostaje wywolane a potem kombinuje dlaczego akuat takie :)

Autor:  Anonymous [ piątek, 19 marca 2004, 02:44 ]
Tytuł: 

Zrobiłem tak jak mówiłeś. W sumie dała tu znać tylko częściowa znajomość systemów unixopodobnych. Innymi słowy sam mogłem na to wpaść, ale nie wpadłem. Dzięki.
Parametry podane do polecenia route to: domyślna brama providera oraz symbol 'eth1' czyli karta do której dochodzi sygnał z reszty świata.
Net nadal nie chodzi.
Bawiłem się dalej i próbowałem wykryć różnice w ustawieniach na sztywno i przez dhcp. Nie było w zasadzie zbyt wielkich. z grubsza wszystko jest tak samo, oprócz maski podsieci: na sztywno zawsze ustawiałem 255.255.0.0, tak jak w tutorialach, natomiast provider ustalił, że maska ta wyglada tak: 255.255.255.255.
Wygląd parametrów polecenia route w obu przypadkach wyglada tak samo, tylko przy masce podsieci 255.255.0.0 i ustawieniu na sztywno nie ma błędu, a przy ustawieniach przez dhcp bład jest.
Wydaje się logicznym wniosek, że coś jest nie tak z maską 255.255.255.255, ale co?
Zrobiłem w międzyczasie wywiad wśród swoich znajomych, będących nieszczęśliwymi klientami owego providera. Okazało się, iż każdy z nich, kto korzysta z linuxa, nie moze aktualnie uzyskać połączenia z internetem.
Pod windą net chodzi, bo windzie wiele rzeczy zwisa, a pod linuxami nie. Martwi mnie ta maska.
Pozdrawiam

Autor:  zciech [ piątek, 19 marca 2004, 13:49 ]
Tytuł: 

Jak moze byc maska 255.255.255.255? Chyba go cos pokrecilo jak interfejs dostaje maske taką to tylko jego adres pasuje.

teraz poszukaj w rc_net gdzie jest podnoszony iface eth0 przez dhcpcd:

: [/] [] ()
                echo -n "Waiting for DHCPOFFER on $INTNAME0...          "
                while :; do
                        dhcpcd $DHCPLOG -R -t 600 -c /etc/renew -h $HOSTNAME $INTNAME0 >/dev/null 2>/dev/null && break
                done

                ifconfig $INTNAME0 netmask 255.255.255.0 # dopisz to :)

                . /etc/dhcpc/dhcpcd-$INTNAME0.info
                echo $IPADDR


Jesli twój ISP ma naprawde krótki czas leasingu to po tym czasie ponownie pobierany jest adres i trzeba bedzie znowu zrobic

ifconfig $INTNAME0 netmask 255.255.255.0

albo lepiej zabic demona dhcpcd
killall dhcpcd

albo zrobic programik sprawdzajacy co kilka sekund na podstawie ifconfig maske i jesli jest 255.255.255.255 to zmienic na prawidlowa

albo sobie d. nie zawracac ISP i wstawic wszystko na sztywno :)

rodzaj postepowania zalezy od tago co robi twoj ISP

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/