# neostrada

## msch

czy moglby ktos odswiezyc howto do neostrady z modemem speedtouch?

potrzebuje zrobic router/serwer z modemkiem speedtouch 330 i nie bardzo wiem co i jak, tamte posty maja juz 2 lata a ebuildy juz sa w nowszych wersjach.

----------

## BeteNoire

Konfigurację kernela znajdziesz w necie, speedtch jest w kernelu a część dotycząca ppp się nie zmieniła.

Emergujesz speedtouch-usb, do /etc/conf.d/net dodajesz coś takiego:

```
# NEOSTRADA:

config_ppp0=( ppp )  # Runs /lib/rcscripts/net/pppd.sh

link_ppp0='0.35'

plugins_ppp0=( 'pppoa' )

pppd_ppp0=( updetach noauth debug defaultroute noaccomp nobsdcomp noccp

nodeflate nopcomp novj novjccomp child-timeout 60 )

username_ppp0='user@neostrada.pl'

password_ppp0='haslo'

# To ładuje moduły kernela jeśli nie są wkompilowane

function preup() {

    if [[ "$1" = "ppp0" ]] ; then

            modprobe -q speedtch

                    return 0

                        fi

                }
```

I robisz linka /etc/init.d/net.ppp0 do /etc/init.d/net.lo

Niby to wszystko co trzeba, ale... ja musiałem zmienić regułkę udeva w /etc/udev/rules.d/50-udev.rules

```
# Load firmware

#SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"

SUBSYSTEM=="firmware", ACTION=="add", RUN+="/lib/udev/firmware_helper"
```

Co ciekawe przy starcie widzę tekst o braku tego firmware_helper (bo go rzeczywiście nie ma w /lib/udev) ale jak zakomentuję tą linijkę to Neo nie startuje.

A poza tym na kernelu 2.6.19 i baselayout 1.12.7-* są problemy, więc przyłączam się do prośby o odświeżenie "hałtu".

----------

## msch

oo super, dziala wrecz idealnie dla ARCH="x86"

edit

jakby jeszcze ktos podsunal mi pomysl, jak zarestartowac net.ppp0 gdy zerwie sie polaczenie...

----------

## v7n

robiłem to kiedyś taki sposób: http://www.linux-usb.org/SpeedTouch/gentoo/ i wszystko się samo restartowało. szkoda, że tak nie ma na openbsd )-;

----------

## scyld

 *BeteNoire wrote:*   

> Niby to wszystko co trzeba, ale... ja musiałem zmienić regułkę udeva w /etc/udev/rules.d/50-udev.rules
> 
> ```
> # Load firmware
> 
> ...

 

A ja mam tak i też działa, choć udev się pluje, że PHYSDEVDRIVER jest przeznaczony do usunięcia.

```
# Load firmware

SUBSYSTEM=="firmware", ENV{PHYSDEVDRIVER}!="speedtch", ACTION=="add", RUN+="firmware.sh"
```

 *BeteNoire wrote:*   

> A poza tym na kernelu 2.6.19 i baselayout 1.12.7-* są problemy, więc przyłączam się do prośby o odświeżenie "hałtu".

 

No właśnie dzisiaj spotkała mnie dziwna niespodzianka, po boot'cie 2.6.19 NEO nie chciała wstać a w logu miałem:

```
rcvd [CHAP Challenge id=0x21 <094b72ef23a60d10f7781c26499abb64b8f39bf38c3e56a4becbe0b682>, name = "ka

t_ru9"]

sent [CHAP Response id=0x21 <b3773ae243af8b7b80e2fd11178a6128>, name = "worker"]

rcvd [CHAP Failure id=0x21 ""]

CHAP authentication failed

CHAP authentication failed

sent [LCP TermReq id=0x10 "Failed to authenticate ourselves to peer"]
```

Worker to mój hostname. Pomogło dopiero dodanie w /etc/conf.d/net:

```
pppd_ppp0=(

...

    "user <mój_user>@neostrada.pl"

...

}
```

echh...  Mam nadzieje, że to komuś pomoże  :Very Happy: 

----------

## BeteNoire

Dziwna sprawa. Zaczęło mi działać na 2.6.19 po zakomentowaniu _obu_ wymienionych wcześniej linijek.

[EDIT] Jak się pozbyć takiego komunikatu:

```
WARNING: net.ppp0 has started but is inactive
```

Oczywiście net.ppp0 działa. [/EDIT]

----------

## ar_it

 *msch wrote:*   

> oo super, dziala wrecz idealnie dla ARCH="x86"
> 
> edit
> 
> jakby jeszcze ktos podsunal mi pomysl, jak zarestartowac net.ppp0 gdy zerwie sie polaczenie...

 

Ja mam taki skrypt - może to i brzydkie ale rozwiązuje moje problemy i działa   :Twisted Evil: 

```

 cat /root/neo_restart.sh

date >> /var/log/neo.log

 

ping -I ppp0 194.204.159.1 -c1 -w5 | grep 'icmp_seq' >/dev/null

let wynik=$?

if [ $wynik -eq 0 ]; then

echo ok >> /var/log/neo.log

else

echo Nie ma polaczenia z internetem - probujemy nawiazac >> /var/log/neo.log

/etc/init.d/speedtch stop >> /var/log/neo.log

killall -9 pppd

/etc/init.d/net.eth0 stop

/etc/init.d/speedtch start >> /var/log/neo.log 

sleep 20

#skrypt IPTABLES

/etc/iptables_sys_1

#reset adresu

/etc/init.d/noip restart

/etc/init.d/squid restart

fi

```

a dodany jest do crona

```

*       *       *       *       *       /root/neo_restart.sh

```

----------

## cerbero

 *BeteNoire wrote:*   

> 
> 
> Jak się pozbyć takiego komunikatu:
> 
> ```
> ...

 

Czy może rozwiązałeś już ten problem? Ponieważ jest to główny powód dla którego nie korzystam z /etc/init.d/net.ppp0 tylko po staremu pppd call neostrada tyle że w skrypcie startowym. Oczywiście net.ppp0 tworzy połączenie ale z uwagi że jest inactive to nie startują mi usługi zależne jak np. DNS proxy cache pdnsd bez którego korzystanie z neostrady z DNS-ami ustawionymi na stałe w resolv.conf to po prostu tragedia.

Wyczytałem że takie problemy stwarzać może opcja updetach ale jej usunięcie nie zmienia sytuacji 

W tej chwili mam zainstalowane:

sys-apps/baselayout-1.12.6

net-dialup/ppp-2.4.4-r4 

czyli najnowsze stabilne wersje które teoretycznie powinny rozwiązać problem. Może jednak konieczny jest jakiś downgrade?

EDIT: Tymczasowo ustawiłem RC_NET_STRICT_CHECKING="none" w /etc/conf.d/rc - działa i wszystko się uruchamia, bo system zakłada że zawsze istnieje jakieś połączenie sieciowe ale jest to wybitna prowizorka  :Wink: 

EDIT2:Upgrade do niestabilnej wersji baselayout nic nie daje poza tym że przy restarcie czy wyłączaniu stwierdza że nie ma już żadnych procesów do wyłączenia w tym runlevelu.

----------

