# Brauche Hilfe mit init, pppoe und ntp

## humanthing

Hi,

ich habe eine Frage zu PPPoE, und aus den Quellen die ich bisher gefunden habe, werde ich irgendwie nicht schlau...

Also bisher habe ich um meine Verbindung ins Internet herzustellen immer rp-pppoe benutzt, welches ich über /etc/init.d/local starte, was auch ohne Probleme funktioniert.

Jetzt habe ich aber vor kurzem ntp installiert und das wiederum startet dummerweise vor local, welches ja immer als allerletztes startet.

Ich würde jetzt gerne die Reihenfolgen beim starten, richtig stellen, aber an den init-Skripten rumzubasteln ist wahrscheinlich dumm.

Ich habe schon gelesen, dass es eine Möglichkeit gibt per /etc/init.d/net.ppp0 eine Verbindung herzustellen, die Kernel-Module nutzt, aber ich blicke da noch nicht ganz durch.

Das Interface das ich für PPPoE benutze ist eth_inet.

Meine /etc/conf.d/net sieht bislang bloß so aus:

```
config_eth_inet=( "192.168.0.1 netmask 255.255.255.0 brd 192.168.0.255" )
```

Die nötigen Kernel-Module scheinen auch da zu sein:

```

~$ cat /usr/src/linux/.config | grep PPP

CONFIG_HDLC_PPP=m

CONFIG_PC300_MLPPP=y

# Cyclades-PC300 MLPPP support is disabled.

CONFIG_PPP=m

CONFIG_PPP_MULTILINK=y

CONFIG_PPP_FILTER=y

CONFIG_PPP_ASYNC=m

CONFIG_PPP_SYNC_TTY=m

CONFIG_PPP_DEFLATE=m

CONFIG_PPP_BSDCOMP=m

CONFIG_PPP_MPPE=m

CONFIG_PPPOE=m

CONFIG_PPPOATM=m

```

Kann mir jemand helfen, oder kennt vielleicht jemand einen Link zu einer Seite wo das einfach beschrieben ist?

Vor allem, will ich gerne dass eth_inet so bleibt wie es jetzt ist.

Vielen Dank im Voraus und Grüße

----------

## deno

Probiere mit 'after local' in depend() Funktion der /etc/init.d/net-client (bzw ntpd) Datei.

edit

ja dann mußt du warscheinlich auch local skript korrigieren, da drinen 'after *' steht.

----------

## humanthing

Ja gut, das könnte natürlich gehen. Aber gibt es nicht eine andere elegantere Lösung?

Würde eigentlich ja schon gerne die Kernel-Module benutzen und rp-pppoe vielleicht ganz runterschmeißen...

----------

## toralf

Die Konfiguration für DSL ist recht einfach, hier mein Abschnitt aus /etc/conf.d/net:

```
#       DSL

#

config_ppp0=( "ppp" )

link_ppp0=( "eth0" )

plugins_ppp0=( "pppoe" )

username_ppp0="<sag ich hier nicht>"

password_ppp0=<ist leer für Hansenet>

pppd_ppp0=(

        "defaultroute"

        "usepeerdns"

        "maxfail 1"

)

```

 Anschließend symbolischer Link von /etc/init.d/net.lo nach /etc/init.d/net.ppp0 und das war's auch schon.

----------

## humanthing

Ja das ist genau das was ich suchte!!!

Meine /etc/conf.d/net sieht jetzt also wie folgt aus:

```

config_eth_inet=( "192.168.0.1 netmask 255.255.255.0 brd 192.168.0.255" )

config_ppp0=( "ppp" )

link_ppp0="eth_inet"

plugins_ppp0=( "pppoe" )

username_ppp0="<meinname>@alice-dsl.de"

password_ppp0=

pppd_ppp0=(

       "debug"

       "noauth"

       "defaultroute"

       "maxfail 1"

)

depend_ppp0() {

    need net.eth_inet

}

```

Trotzdem bekomme ich folgende Fehlermeldungen in /var/log/messages, und vor allem benutzt der trotzdem noch rp-pppoe... Warum?

```

Nov  1 18:20:12 ich-ag pppd[14842]: Plugin passwordfd.so loaded.

Nov  1 18:20:12 ich-ag pppd[14842]: Plugin rp-pppoe.so loaded.

Nov  1 18:20:12 ich-ag pppd[14842]: RP-PPPoE plugin version 3.3 compiled against pppd 2.4.4

Nov  1 18:20:12 ich-ag pppd[14843]: pppd 2.4.4 started by root, uid 0

Nov  1 18:20:12 ich-ag pppd[14843]: PADS: Service-Name: ''

Nov  1 18:20:12 ich-ag pppd[14843]: PPP session is 14959

Nov  1 18:20:12 ich-ag pppd[14843]: using channel 9

Nov  1 18:20:12 ich-ag pppd[14843]: Using interface ppp0

Nov  1 18:20:12 ich-ag pppd[14843]: Connect: ppp0 <--> eth_inet

Nov  1 18:20:12 ich-ag pppd[14843]: sent [LCP ConfReq id=0x1 <mru 1492> <magic 0xe464f23a>]

Nov  1 18:20:12 ich-ag pppd[14843]: rcvd [LCP ConfReq id=0xf8 <mru 1492> <auth pap> <magic 0x35a307c3>]

Nov  1 18:20:12 ich-ag pppd[14843]: sent [LCP ConfAck id=0xf8 <mru 1492> <auth pap> <magic 0x35a307c3>]

Nov  1 18:20:12 ich-ag pppd[14843]: rcvd [LCP ConfAck id=0x1 <mru 1492> <magic 0xe464f23a>]

Nov  1 18:20:12 ich-ag pppd[14843]: sent [PAP AuthReq id=0x1 user="<meinname>@alice-dsl.de" password=<hidden>]

Nov  1 18:20:14 ich-ag pppd[14843]: rcvd [LCP TermReq id=0xf9]

Nov  1 18:20:14 ich-ag pppd[14843]: LCP terminated by peer

Nov  1 18:20:14 ich-ag pppd[14843]: sent [LCP TermAck id=0xf9]

Nov  1 18:20:17 ich-ag pppd[14843]: Connection terminated.

Nov  1 18:20:17 ich-ag pppd[14843]: Modem hangup

Nov  1 18:20:17 ich-ag pppd[14843]: Exit.

```

<meinname> ist natürlich überall richtig ersetzt

Woran hackts?

----------

## toralf

Also für mein eth0 habe ich definiert:

```
#       LAN

#

config_eth0=(

        "dhcp"

        "192.168.0.254/24"

        )

dhcp_eth0="nontp nosendhost"

dhcpcd_eth0="-L -t 12"

```

damit ich für Apache & Co. immer eine gültige IP-Adresse habe und auf Arbeit zusätzlich DHCP. Mein log is tentsprechend zu Hause :

```
Nov  1 18:43:39 n22 e1000: eth0: e1000_watchdog: NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX

Nov  1 18:43:39 n22 dhcpcd[3560]: eth0: dhcpcd 3.1.7 starting

Nov  1 18:43:39 n22 dhcpcd[3560]: eth0: hardware address = 00:0d:60:7b:2d:9b

Nov  1 18:43:39 n22 dhcpcd[3560]: eth0: DUID = 00:01:00:01:0e:b4:68:8e:00:0d:60:7b:2d:9b

Nov  1 18:43:39 n22 NET: Registered protocol family 17

Nov  1 18:43:39 n22 dhcpcd[3560]: eth0: broadcasting for a lease

Nov  1 18:43:51 n22 dhcpcd[3560]: eth0: timed out

Nov  1 18:43:51 n22 dhcpcd[3560]: eth0: exiting

Nov  1 18:43:55 n22 PPP generic driver version 2.4.2

Nov  1 18:43:55 n22 NET: Registered protocol family 24

Nov  1 18:43:55 n22 pppd[4048]: Plugin passwordfd.so loaded.

Nov  1 18:43:55 n22 pppd[4048]: Plugin rp-pppoe.so loaded.

Nov  1 18:43:55 n22 pppd[4048]: RP-PPPoE plugin version 3.3 compiled against pppd 2.4.4

Nov  1 18:43:56 n22 pppd[4051]: pppd 2.4.4 started by root, uid 0

Nov  1 18:43:56 n22 pppd[4051]: PPP session is 6810

Nov  1 18:43:56 n22 pppd[4051]: Using interface ppp0

Nov  1 18:43:56 n22 pppd[4051]: Connect: ppp0 <--> eth0

Nov  1 18:43:56 n22 pppd[4051]: CHAP authentication succeeded

Nov  1 18:43:56 n22 pppd[4051]: CHAP authentication succeeded

Nov  1 18:43:56 n22 pppd[4051]: peer from calling number 00:90:1A:A0:57:84 authorized

Nov  1 18:43:56 n22 pppd[4051]: local  IP address 80.171.36.45

Nov  1 18:43:56 n22 pppd[4051]: remote IP address 213.191.84.196

Nov  1 18:43:56 n22 pppd[4051]: primary   DNS address 62.109.123.196

Nov  1 18:43:56 n22 pppd[4051]: secondary DNS address 213.191.74.18

```

Im Kernel habe ich :

```
n22 ~ # zgrep -e ^CONFIG_PPP -e ^CONFIG_E1000  /proc/config.gz

CONFIG_E1000=m

CONFIG_PPP=m

CONFIG_PPP_FILTER=y

CONFIG_PPPOE=m

```

----------

## humanthing

Also die config für eth_inet werd ich nicht ändern müssen denk ich, da ich den Rechner immer zu Hause habe und kein dhcp brauchen werde. Daran wirds auch nicht liegen können oder?

Ich habe jetzt nochmal folgende /etc/conf.d/net probiert:

```
config_eth_inet=( "192.168.0.1 netmask 255.255.255.0 brd 192.168.0.255" )

config_ppp0=( "ppp" )

link_ppp0=( "eth_inet" )

plugins_ppp0=( "pppoe" )

pppd_ppp0=(

       "debug"

       "defaultroute"

       "usepeerdns"

       "maxfail 1"

)

depend_ppp0() {

    need net.eth_inet

}
```

Aber ich bekomme weiterhin die Fehlermeldungen:

```

Nov  2 07:24:46 ich-ag pppd[13428]: Plugin rp-pppoe.so loaded.

Nov  2 07:24:46 ich-ag pppd[13428]: RP-PPPoE plugin version 3.3 compiled against pppd 2.4.4

Nov  2 07:24:46 ich-ag pppd[13429]: pppd 2.4.4 started by root, uid 0

Nov  2 07:24:46 ich-ag pppd[13429]: PADS: Service-Name: ''

Nov  2 07:24:46 ich-ag pppd[13429]: PPP session is 7604

Nov  2 07:24:46 ich-ag pppd[13429]: using channel 4

Nov  2 07:24:46 ich-ag pppd[13429]: Using interface ppp0

Nov  2 07:24:46 ich-ag pppd[13429]: Connect: ppp0 <--> eth_inet

Nov  2 07:24:46 ich-ag pppd[13429]: sent [LCP ConfReq id=0x1 <mru 1492> <magic 0x14d0ec86>]

Nov  2 07:24:46 ich-ag pppd[13429]: rcvd [LCP ConfReq id=0x18 <mru 1492> <auth pap> <magic 0xeda6b45>]

Nov  2 07:24:46 ich-ag pppd[13429]: No auth is possible

Nov  2 07:24:46 ich-ag pppd[13429]: sent [LCP ConfRej id=0x18 <auth pap>]

Nov  2 07:24:46 ich-ag pppd[13429]: rcvd [LCP ConfAck id=0x1 <mru 1492> <magic 0x14d0ec86>]

Nov  2 07:24:46 ich-ag pppd[13429]: rcvd [LCP ConfReq id=0x19 <mru 1492> <auth chap MD5> <magic 0xeda6b45>]

Nov  2 07:24:46 ich-ag pppd[13429]: No auth is possible

Nov  2 07:24:46 ich-ag pppd[13429]: sent [LCP ConfRej id=0x19 <auth chap MD5>]

Nov  2 07:24:46 ich-ag pppd[13429]: rcvd [LCP ConfReq id=0x1a <mru 1492> <magic 0xeda6b45>]

Nov  2 07:24:46 ich-ag pppd[13429]: sent [LCP ConfAck id=0x1a <mru 1492> <magic 0xeda6b45>]

Nov  2 07:24:46 ich-ag pppd[13429]: peer from calling number 00:30:88:03:87:36 authorized

Nov  2 07:24:46 ich-ag pppd[13429]: sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]

Nov  2 07:24:46 ich-ag pppd[13429]: rcvd [LCP TermReq id=0x1b]

Nov  2 07:24:46 ich-ag pppd[13429]: LCP terminated by peer

Nov  2 07:24:46 ich-ag pppd[13429]: sent [LCP TermAck id=0x1b]

Nov  2 07:24:49 ich-ag pppd[13429]: Connection terminated.

Nov  2 07:24:49 ich-ag pppd[13429]: Modem hangup

Nov  2 07:24:49 ich-ag pppd[13429]: Exit.

```

Starte ich das ganze "normal" per pppoe-start erhalte ich keine Fehler:

```

Nov  2 07:25:11 ich-ag pppd[13914]: pppd 2.4.4 started by root, uid 0

Nov  2 07:25:11 ich-ag pppd[13914]: Using interface ppp0

Nov  2 07:25:11 ich-ag pppd[13914]: Connect: ppp0 <--> /dev/pts/3

Nov  2 07:25:12 ich-ag pppoe[13915]: PADS: Service-Name: ''

Nov  2 07:25:12 ich-ag pppoe[13915]: PPP session is 12646 (0x3166)

Nov  2 07:25:16 ich-ag pppd[13914]: PAP authentication succeeded

Nov  2 07:25:16 ich-ag pppd[13914]: local  IP address <IP>

Nov  2 07:25:16 ich-ag pppd[13914]: remote IP address <IP>

```

Ich weiß wirklich nicht wo jetzt der Fehler liegt?

Die Konfigurationsdatei von rp-pppoe sieht wie folgt aus:

```

ETH='eth_inet'

USER='<meinname>@alice-dsl.de'

DEMAND=no

DNSTYPE=SPECIFY

PEERDNS=no

DNS1=213.191.92.87

DNS2=213.191.74.19

DEFAULTROUTE=yes

CONNECT_TIMEOUT=30

CONNECT_POLL=2

ACNAME=

SERVICENAME=

PING="."

PIDFILE="/var/run/$CF_BASE-pppoe.pid"

SYNCHRONOUS=no

CLAMPMSS=no

LCP_INTERVAL=20

LCP_FAILURE=3

PPPOE_TIMEOUT=80

FIREWALL=STANDALONE

LINUX_PLUGIN=

PPPOE_EXTRA=""

PPPD_EXTRA=""

```

Und natürlich existiert eine /etc/ppp/pap-secrets wo Benutzer und Passwort nochmal drin stehen.

```

"<meinname>@alice-dsl.de"     *       "<meinpasswort>"

```

Kann man aus der Konfigurationsdatei von rp-pppoe irgendwie schließen wie die richtigen Einstellung in /etc/conf.d/net sein müssten?

Ich werd aus dem ganzen wirklich nicht schlau...  :Sad: 

----------

## Gibheer

hast du dein passwort auch in die conf.d/net eingetragen? Geht aus deiner obigen config nicht ganz hervor

----------

## toralf

 *Gibheer wrote:*   

> hast du dein passwort auch in die conf.d/net eingetragen? Geht aus deiner obigen config nicht ganz hervor

 Das ist bei Hansenet nicht nötig  :Smile: 

----------

## Gibheer

Ist das denn in den alicegebieten genauso? Da geht das ganze doch ueber das tcom-netz, nicht ueber das eigene oder irre ich mich da?

----------

## humanthing

 *Gibheer wrote:*   

> hast du dein passwort auch in die conf.d/net eingetragen? Geht aus deiner obigen config nicht ganz hervor

 

Nein das Passwort habe ich in der config nicht eingegeben, aber das sollte doch eh über die /etc/ppp/pap-secrets laufen oder?

 *toralf wrote:*   

> Das ist bei Hansenet nicht nötig

 

Das ist mir aber irgendwie auch neu? Wie kann ich denn ohne dass irgendwie halbwegs sicher ist, dass ich es bin, mich bei Hansenet anmelden? Da würde es ja reichen, dass man meine Anschlussnummer kennt und jeder kann über meinen Zugang surfen... Sowohl bei Windows als auch mit rp-pppoe musste ich immer ein Passwort angeben!

Werde mal probieren in die conf.d/net das Passwort einzutragen...

----------

## toralf

 *humanthing wrote:*   

> 
> 
> Nein das Passwort habe ich in der config nicht eingegeben, aber das sollte doch eh über die /etc/ppp/pap-secrets laufen oder?

 Oh, rp-pppoe wertet pap-secrets aus, net.ppp0 will's in der config.

Davon abgesehen, Hansenet in Hamburg verzichtet auf's Passwort, schließlich müßte ein "böser Bub'"sich eh' physikalisch an mein Kupferkabel anklemmen, um auf meinem Anschuß und mit meiner flat rate per DSL zu surfen.

----------

## humanthing

 *toralf wrote:*   

> Oh, rp-pppoe wertet pap-secrets aus, net.ppp0 will's in der config. 

 

Ach so!!! Danke! Das war ein sehr wertvoller Tip!!!  :Very Happy: 

Mit dieser config funzts jetzt: (Yeah!!!!!!!!!!!!!!  :Cool:  )

```

config_ppp0=( "ppp" )

link_ppp0=( "eth_inet" )

plugins_ppp0=( "pppoe" )

username_ppp0="<meinname>@alice-dsl.de"

password_ppp0="<meinpass>"

pppd_ppp0=(

       "debug"

       "defaultroute"

       "lcp-echo-interval 20"

       "lcp-echo-failure 3"

       "maxfail 1"

)

dns_servers_ppp0="213.191.92.87 213.191.74.19"

depend_ppp0() {

    need net.eth_inet

}

```

Die Einstellungen zum DNS und LCP habe ich aus der config von rp-pppoe...

Und es funktioniert!!! Jaaaaaaa! Gibt es jetzt noch irgendwelche Optimierungen, die ich an dieser config vornehmen könnte?

Habe mal von folgendem gelesen:

```

pppd_ppp0=(

# bla bla alles was ich schon habe und dann noch

       "holdoff 3"

       "child-timeout 60"

       noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp

)

```

Hilft das was? Brauch ich das?

Aber schon mal vielen vielen Dank für die Hilfe!!!!! (Auch wenn das im Nachhinein doch ziemlich simpel wirkt!!)

Ach und noch zwei Fragen:

1) Kann ich jetzt rp-pppoe einfach deinstallieren? Weil in den logs taucht ja noch 

```
Nov  2 10:53:08 ich-ag pppd[13120]: Plugin rp-pppoe.so loaded.

Nov  2 10:53:08 ich-ag pppd[13120]: RP-PPPoE plugin version 3.3 compiled against pppd 2.4.4

```

 auf.

2) Wenn ich den Rechner mal starte und die Verbindung nicht hergestellt werden kann, was ja manchmal vorkommt (warum auch immer), was muss in der config stehen damit er sagen wir mal in 5min Abständen versucht sich wieder einzuwählen?

Nochmal tausend Dank und Grüße!

----------

## toralf

Deinstallier rp-pppoe noch nicht, das Ding ist klein und frißt kein Brot. Hingegen solltest Du die DNS-Server-Einträge rausnehmen, damit das kernel pppoe-Modul die /etc/resolv.conf selbständig abändern kann - manchmal ändern sich die DNS Server Einträge nämlich.

----------

## humanthing

Ja, die DNS Einträge hab ich schon wieder rausgenommen! Funktioniert weiterhin super... Danke!

Bleibt nur noch Frage 2 und ich bin zufrieden!!  :Very Happy: 

----------

## mv

 *toralf wrote:*   

> Oh, rp-pppoe wertet pap-secrets aus, net.ppp0 will's in der config.

 

Nope. net.ppp0 wertet bei Bedarf ebenfalls pap-secrets aus, aber man kann es alternativ in der config angeben (bei mir hatte letzteres nicht einmal funktioniert, aber ich habe nicht weiter nachgeforscht, warum). pap-secrets geht auf jeden Fall...

----------

