Erstellt vor 10 Jahren

Zuletzt geändert vor 5 Jahren

#333 new enhancement

PPPoE ohne dsld und remove multid

Erstellt von: MaxMuster Verantwortlicher:
Priorität: lowest Meilenstein: freetz-future
Komponente: avm Version: devel
Stichworte: Beobachter:
Product Id: Firmware Version:

Beschreibung (zuletzt geändert von MaxMuster)

Hallo,

wie hier beschrieben ist es möglich, auch ohne dsld per pppd ins Netz zu gehen. Ich stelle mal die Patches und ein Paket dazu bereit.

Ich habe das nur auf einer Box getestet, sonst gibt es leider noch wenig Rückmeldung. Speziell das zusätzliche Entfernen vom multid ist eine Herausforderung, weil hier u.a. eben die Interface IPs gesetzt werden (und ohne die ist es schlecht ;-)). Zur Sicherheit habe ich dazu bei meiner "alten Box" mit USB-Netz eine feste IP-Vergabe mit eingebaut (192.168.178.1). Wer das nicht brauchen kann, müsste es eben aus dem Patch für rc.net rausnehmen. Hier ist noch einiges an Verbesseungsbedarf, aber vielleicht findet sich ja so der ein oder andere "Mitstreiter"…

Jörg

Anhänge (15)

pppoedsl_multid.tgz (4.7 KB) - hinzugefügt von MaxMuster vor 10 Jahren.
svndiff_20081221.diff (3.5 KB) - hinzugefügt von MaxMuster vor 10 Jahren.
pppoedsl_13032010_R4461.txt (14.5 KB) - hinzugefügt von linuxkasten vor 9 Jahren.
pppoedsl for trunk revision 4461
pppoedsl_13032010_R4461.patch (14.5 KB) - hinzugefügt von oliver vor 9 Jahren.
pppoedsl_13032010_2_R4461.patch (17.3 KB) - hinzugefügt von MaxMuster vor 9 Jahren.
freetz-config_pppoedsl.txt (27.9 KB) - hinzugefügt von dileks vor 7 Jahren.
freetz-config zu pppoedsl (r7195)
fix_pppd_plugins.patch (874 Byte) - hinzugefügt von MaxMuster vor 7 Jahren.
Fix fürpppd-Patch (pppoedsl mit "plugin-Unterstützung")
rc.pppoedsl (6.1 KB) - hinzugefügt von MaxMuster vor 7 Jahren.
"Verbesserte" rc.pppoedsl
pppoedsl.png (68.8 KB) - hinzugefügt von MaxMuster vor 7 Jahren.
So sieht es dann aus (mit angepasstem pppd-Patch und rc.pppoedsl)
pppoedsl_20110624.tgz (3.8 KB) - hinzugefügt von MaxMuster vor 7 Jahren.
Hier mal der "make/pppoedsl"-Ordner als tar mit ausführbaren Dateien und korrigierter GUI
0001-pppoedsl-0.1-refreshed-for-trunk-r7195.patch (15.9 KB) - hinzugefügt von dileks vor 7 Jahren.
[PATCH 1/4] pppoedsl-0.1 refreshed for trunk-r7195
0002-pppoedsl-Enable-plugins-support-for-pppd.patch (1.3 KB) - hinzugefügt von dileks vor 7 Jahren.
[PATCH 2/4] pppoedsl: Enable plugins support for pppd
0003-pppoedsl-Reworked-user-interface-pppoedsl.cgi.patch (3.0 KB) - hinzugefügt von dileks vor 7 Jahren.
[PATCH 3/4] pppoedsl: Reworked user-interface (pppoedsl.cgi)
0004-pppoedsl-Enable-DSLDEBUG-y-to-see-more-debugging-out.patch (1.3 KB) - hinzugefügt von dileks vor 7 Jahren.
[PATCH 4/4] pppoedsl: Enable "DSLDEBUG=y" to see more debugging
pppoedsl_rc_und_cgi.tgz (3.3 KB) - hinzugefügt von MaxMuster vor 7 Jahren.

Alle Anhänge herunterladen als: .zip

Änderungshistorie (29)

Geändert vor 10 Jahren durch MaxMuster

Geändert vor 10 Jahren durch MaxMuster

comment:1 Geändert vor 9 Jahren durch green

Ich brauche diese Funktionalität auch. Der dsld lässt einige wichtige Funktionen vermissen, so dass ich gezwungen bin auf pppd+rp-pppoe etc. auszuweichen.
[Ich brauche einen Router und kein NAT-Device]

comment:2 Geändert vor 9 Jahren durch linuxkasten

Hier der Patch für den aktuellen Trunk (R4461).

Geändert vor 9 Jahren durch linuxkasten

pppoedsl for trunk revision 4461

Geändert vor 9 Jahren durch oliver

comment:3 Geändert vor 9 Jahren durch MaxMuster

Moin,

die Änderung im OpenVPN ist mittlerweile eigentlich überflüssig und sollte raus.
Ausserdem fehlte der Part mit dem "multid"-Entfernen, der speziell wegen seiner Funktion der IP-Adressvergabe heikel ist.
Ich weiß allerdings nicht, ob der wirklich auf anderen Boxen so funktioniert, da ich noch keinerlei Rückmeldung dazu habe.

Geändert vor 9 Jahren durch MaxMuster

comment:4 Antwort: Geändert vor 7 Jahren durch dileks

Ich habe den letzten Patch in Serie an trunk-r7195 angepasst (ohne multid Patches), mit kleineren Anpassungen.
Das wird soweit gebaut und das Image lässt sich flaschen
DSL-Leitung steht, aber die Authentifizierung klappt nicht.

pppd moniert beim Starten "unrecognized option plugin" verursacht durch Zeile "plugin rp-pppoe.so" im Init-Skript.
Auf meinem Debian-System liegt es hier: /usr/lib/pppd/2.4.5/rp-pppoe.so.
Das cgi-Binary und das Init-Skript sind nicht ausführbar, daher habe ich zum Experimentieren, das Init-Skript auf der Box nach /tmp kopiert.

Auch ist mir nicht klar, was es mit "nas0" auf sich hat, wird als "unbekannt" moniert beim Start von pppd.

[ make/pppoedsl/files/root/etc/init.d/rc.pppoedsl ]
+       echo -n 'Starting PPPoE session ...'
+       (/usr/sbin/pppd \
+               plugin rp-pppoe.so \ <--- "Unrecognized option plugin"
+               connect /bin/true \
+               usepeerdns \
+               defaultroute \
+               replacedefaultroute \
+               user "$PPPOEUSER" \
+               password "$PPPOEPASS" \
+               $TIME \
+               nas0) & <--- ausm Gedächtnis "Unknown device"
+       echo 'done'

Ich bin die Konfiguration mit rp-ppoe und dessen pppoe-Kommandos vertraut.

cat <<EOF >"/etc/ppp/peers/$PROVIDER"
pty "/usr/sbin/pppoe -I $INTERFACE -T 80 -m 1452"
noipdefault
defaultroute
hide-password
lcp-echo-interval 60
lcp-echo-failure 3
persist
#demand
connect /bin/true
noauth 
mtu 1492
user "$USERNAME"
usepeerdns
EOF

Quelle: <http://kanotix.com/files/my-pppoeconf.bash>

Das ist ein 1. Versuch und mit Paketierung & CGI etc. kenn ich mich nicht aus.

Zuletzt geändert vor 7 Jahren von dileks (vorher) (Diff)

Geändert vor 7 Jahren durch dileks

freetz-config zu pppoedsl (r7195)

comment:5 als Antwort auf: ↑ 4 Geändert vor 7 Jahren durch MaxMuster

Replying to dileks:

pppd moniert beim Starten "unrecognized option plugin" verursacht durch Zeile "plugin rp-pppoe.so" im Init-Skript.
Auf meinem Debian-System liegt es hier: /usr/lib/pppd/2.4.5/rp-pppoe.so.

Im Patch-Ordner für pppd wird mit dem 200-er Patch die Unterstützung für "plugin" rausgepatched. Das müsste dann noch "einschaltbar" gemacht werden…

Auch ist mir nicht klar, was es mit "nas0" auf sich hat, wird als "unbekannt" moniert beim Start von pppd.

nas0 wird erst durch das Laden des br2684ctl angelegt:

Starting br2684ctl ...br2684ctl[2960]: Interface "nas0" created sucessfully
br2684ctl[2960]: Communicating over ATM 0.1.32, encapsulation: LLC
br2684ctl[2960]: Interface configured
done.


Zuletzt geändert vor 7 Jahren von MaxMuster (vorher) (Diff)

Geändert vor 7 Jahren durch MaxMuster

Fix fürpppd-Patch (pppoedsl mit "plugin-Unterstützung")

Geändert vor 7 Jahren durch MaxMuster

"Verbesserte" rc.pppoedsl

comment:6 Geändert vor 7 Jahren durch MaxMuster

Mit dieser rc.pppoedsl wird der daemon auch in der GUI registriert (so dass die START, STOP und RESTART Buttons da sind). Den oberen "Debugkram" habe ich in einen Bedingungszweig gepackt (um das zu sehen muss "DSLDEBUG=y" gesetzt sein), sonst wird das alles auch bei der status-Abfrage usw. ausgegeben und "zerstört" die Dienste-Anzeige in der GUI.

Geändert vor 7 Jahren durch MaxMuster

So sieht es dann aus (mit angepasstem pppd-Patch und rc.pppoedsl)

Geändert vor 7 Jahren durch MaxMuster

Hier mal der "make/pppoedsl"-Ordner als tar mit ausführbaren Dateien und korrigierter GUI

comment:7 Geändert vor 7 Jahren durch dileks

Also ich habe mit den oberen zwei Patches getestet.
Funktioniert soweit PPPoE mit rp-pppoe.so PlugIn (nas0 und ppp0 UP), kann aber nicht rauspingen (iptables rules?)…
Aber GUI/CGI funst nicht, ich sehe das nicht in der freetzUI.

Zuletzt geändert vor 7 Jahren von dileks (vorher) (Diff)

comment:8 Geändert vor 7 Jahren durch dileks

"Verbesserte" rc.pppoedsl Patch weglassen…

Geändert vor 7 Jahren durch dileks

[PATCH 1/4] pppoedsl-0.1 refreshed for trunk-r7195

Geändert vor 7 Jahren durch dileks

[PATCH 2/4] pppoedsl: Enable plugins support for pppd

Geändert vor 7 Jahren durch dileks

[PATCH 3/4] pppoedsl: Reworked user-interface (pppoedsl.cgi)

Geändert vor 7 Jahren durch dileks

[PATCH 4/4] pppoedsl: Enable "DSLDEBUG=y" to see more debugging

comment:9 Antwort: Geändert vor 7 Jahren durch MaxMuster

Denk dran, dass rc.pppoedsl und pppoedsl.cgi ausführbar (chmod +x) sein müssen, sonst werden sie nicht angezeigt.

Den "Fehler" im rc-File des .tgz hattest du ja schon gefunden ;-); ich habe noch eine leicht veränderte Version der beiden "Hauptdateien", die ich mal anhänge.

Geändert vor 7 Jahren durch MaxMuster

comment:10 als Antwort auf: ↑ 9 Geändert vor 7 Jahren durch dileks

Replying to MaxMuster:

Denk dran, dass rc.pppoedsl und pppoedsl.cgi ausführbar (chmod +x) sein müssen, sonst werden sie nicht angezeigt.

Ja, genau (siehe mein 1. Posting). Wo macht man das 'chmod +x'?

comment:11 Geändert vor 7 Jahren durch MaxMuster

Im make/pppoedsl/files/root/… (deshalb hatte ich das als .tar dran, nicht als Patch ;-))

Zuletzt geändert vor 7 Jahren von MaxMuster (vorher) (Diff)

comment:12 Geändert vor 7 Jahren durch dileks

Nachtrag:

cd freetz-trunk
chmod +x make/pppoedsl/files/root/etc/init.d/rc.pppoedsl
chmod +x make/pppoedsl/files/root/usr/lib/cgi-bin/pppoedsl.cgi

comment:13 Geändert vor 5 Jahren durch Z_God

Does this also allow PPPoE over one of the LAN interfaces?

comment:14 Geändert vor 5 Jahren durch MaxMuster

  • Beschreibung geändert (Diff)

Never tried that so far, but in theory, it should work (even PPPoE "alone" without removing the dsld stuff).

Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.