Penguin
Diff: LinuxPPPoENotes
EditPageHistoryDiffInfoLikePages

Differences between version 6 and revision by previous author of LinuxPPPoENotes.

Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History

Newer page: version 6 Last edited on Thursday, April 22, 2004 12:20:03 am by AristotlePagaltzis Revert
Older page: version 1 Last edited on Wednesday, April 21, 2004 10:38:08 pm by JamesSpooner Revert
@@ -1,13 +1,18 @@
-If you install roaring penguin [PPPoE ] on linux from the tarball, you get a few scripts named adsl -start , adsl-connect etc
+If you are using a [3ComDualLink ] or any similar [ADSL] modem that uses non -standard frame types , check out [3ComDualLinkPPPoE]
  
-Debian's pppconfig, among others, uses a much tidier way using pppd's "call" parameter and /etc/ppp/peers entries. 
+!!! User Mode [PPPoE]  
+  
+If you install roaring penguin [PPPoE] on [Linux] from the tarball, you get a few scripts named adsl-start, adsl-connect etc.  
+  
+[ Debian] 's __ pppconfig__ , among others, uses a much tidier way using __ pppd__ 's "call" parameter and __ /etc/ppp/peers__ entries. 
  
 Here is an example entry for a [PPPoE] connection. In the following, you would replace ''ISP'' with the PPPoE service name on your modem/AccessConcentrator, ''eth0'' with the ethernet device connected to your AccessConcentrator, ''foo@myisp.com'' with your username, ''myisp'' with a label for your ISP and ''mypassword'' with your password. 
  
-/etc/ppp/peers/myisp:  
- pty '/usr/sbin/pppoe -p /var/run/pppoe.conf-adsl.pid.pppoe -I eth0 -S ISP' 
+__ /etc/ppp/peers/myisp__ :  
+ pty '/usr/sbin/pppoe -p /var/run/pppoe.conf-adsl.pid.pppoe -m 1412 -U -T 80 -I eth0 -S ISP' 
  holdoff 5 
+ #debug  
  persist 
  ipcp-accept-remote 
  ipcp-accept-local 
  noauth 
@@ -18,6 +23,58 @@
  lcp-echo-failure 5 
  remotename myisp 
  maxfail 0 
  
-/etc/ppp/pap-secrets 
+__ /etc/ppp/pap-secrets__:  
  "foo@myisp.com" myisp "mypassword" 
+  
+Now, typing __pppd call myisp__ should connect the the AccessConcentrator then establish the [PPP] connection with the RemoteAccessNode (in the case of [ADSL]).  
+  
+!!! Kernel Mode [PPPoE]  
+  
+The Linux kernel now has a built in [PPPoE] framer. Using the kernel mode [PPPoE] driver seems to yield measurably (but not noticably) lower [CPU] load than the userland client.  
+  
+The framer provides a pty __/dev/ppp__ for __pppd__ to talk to, but it still needs a [PPPoE] plugin. The ppp package includes one which is supplied by the good folk at [Roaring-Penguin | http://www.roaringpenguin.com]. Oddly enough, the best docs for kernel mode seem to be in the usermode package, see __doc/KERNEL-MODE-PPPOE__.  
+  
+You need a sufficiently recent version of ppp -- 2.4.2 is the minimum --, and your [Kernel] must have support for the following (this is for 2.6):  
+  
+ CONFIG_PPP=m  
+ CONFIG_PPP_ASYNC=m  
+ CONFIG_PPP_DEFLATE=m  
+ CONFIG_PPP_BSDCOMP=m  
+ CONFIG_PPPOE=m  
+  
+You will also need the appropriate character device, in case it doesn't exist:  
+  
+ mknod --mode=664 /dev/ppp c 108 0  
+  
+Add the following entries to __/etc/modules.conf__ according to __KERNEL-MODE-PPPOE__ (under your LinuxDistribution the file may already contain some or all of these):  
+  
+ alias net-pf-24 pppoe  
+ alias char-major-108 ppp_generic  
+ alias tty-ldisc-3 ppp_async  
+ alias tty-ldisc-13 n_hdlc  
+ alias tty-ldisc-14 ppp_synctty  
+  
+In the following, you would replace ''ISP'' with the PPPoE service name on your modem/AccessConcentrator, ''eth0'' with the ethernet device connected to your AccessConcentrator, ''foo@myisp.com'' with your username, ''myisp'' with a label for your ISP and ''mypassword'' with your password.  
+  
+__/etc/ppp/peers/myisp__:  
+ plugin rp-pppoe.so  
+ rp_pppoe_service ISP eth0  
+ holdoff 5  
+ #debug  
+ persist  
+ ipcp-accept-remote  
+ ipcp-accept-local  
+ noauth  
+ defaultroute  
+ hide-password  
+ user foo@myisp.com  
+ lcp-echo-interval 5  
+ lcp-echo-failure 5  
+ remotename myisp  
+ maxfail 0  
+  
+__/etc/ppp/pap-secrets__:  
+ "foo@myisp.com" myisp "mypassword"  
+  
+Now, typing __pppd call myisp__ should connect the the AccessConcentrator then establish the [PPP] connection with the RemoteAccessNode (in the case of [ADSL]).