Hi,

2009/8/10 Tarabuta Radu <radu.tarab...@upc.ro>

> Salut la toata lumea.
> NU prea obisnuiesc sa pun intrebari pe rofug ca ma descurc singur in
> general
> dar acu cred ca imi scapa ceva.
>
> Vreau sa fac un server de pppoe cu raddius.
>
> Am adaugat in kernel
> options NETGRAPH
> options NETGRAPH_PPPOE
> options NETGRAPH_ETHER
>
> ppp.conf l-am pus mai jos.
>
> Totul e fain si frumos. merge ok, insa la fiecare conexiune ma trezesc
> ca-mi
> deschide un proces. Evident cand dau acolo un ps am sute de procese de la
> fiecare conexiune in parte.
>
> Problema n-ar fi asa mare dar in momentul cand cineva scoate mufa de la
> placa
> de retea, o baga din nou si vrea sa se conecteze nu mai poate.
>
> In loguri imi da urmatorul mesaj:
> Warning: iface add: ioctl(SIOCAIFADDR, 86.127.52.0 -> 86.127.52.100): File
> exists.
> Cu siguranta ca el nu-mi inchide procesul conexiunii respective.
> Evident dupa ce ii inchid procesul clientul reuseste sa se conecteze.
>
> Cum as putea sa fac toata treaba din kernel (sa nu-mi mai deschida
> procesele
> alea externe) si sa nu mai am problema cu ip-urile.


Din cate tin minte flow-ul PPPoE este ca procesul pppoed asculta in
promiscous direct pe interfata Ethernet si pentru fiecare request client
deschide cate un proces (user) ppp. Nu cred ca exista scheme alternative
pentru asa ceva si ma indoiesc ca merge sa cuplezi pppd (kernel PPP).

Ca sa poti determina procesele PPP ele insele sa recunoasca starea
deconectata ar trebui sa activezi LQR (Link Quality Req) pentru a monitoriza
starea conexiunii. Ceva de genul:

 enable lqr
 set lqrperiod 10

Eu am pe partea client un PPPoE si folosesc cu succes setarea asta. Eventual
pui o valoare cat mai mica pentru lqrperiod (in sec.).

Sa ne spui si noua ce rezultate/solutie obtii.

Regards,
Adrian.

Raspunde prin e-mail lui