summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Mock <jim@FreeBSD.org>2001-04-13 02:59:00 +0000
committerJim Mock <jim@FreeBSD.org>2001-04-13 02:59:00 +0000
commita1790180c52b2ef964b401a6f6e3d1bf30ca7f44 (patch)
treee058c926a988d6eb588bdf02bd855085a2dd438b
parent4657ae5ca60c42b74a22e7eae8cca40110f7aa80 (diff)
Add a section to the PPPoE stuff about the 3Com Home Connect Dual Link
ADSL Modem. Submitted by: lioux
Notes
svn path=/head/; revision=9187
-rw-r--r--en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml216
-rw-r--r--en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml216
2 files changed, 426 insertions, 6 deletions
diff --git a/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml b/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml
index b3c5197eb8..f3e26802b9 100644
--- a/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml
+++ b/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml
@@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
- $FreeBSD: doc/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.30 2000/11/11 19:24:47 ben Exp $
+ $FreeBSD: doc/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.31 2001/04/09 00:33:55 dd Exp $
-->
<chapter id="ppp-and-slip">
@@ -1652,7 +1652,7 @@ exit 1
</sect1>
<sect1 id="pppoe">
- <title>Using PPP over Ethernet (PPPoE)</title>
+ <title>Using <application>PPP</application> over Ethernet (PPPoE)</title>
<para><emphasis>Contributed by &a.jim; (from <ulink
url="http://node.to/freebsd/how-tos/how-to-freebsd-pppoe.html">node.to</ulink>) 10 Jan 2000.</emphasis></para>
@@ -1715,7 +1715,7 @@ exit 1
<filename>ppp.conf</filename>:</para>
<programlisting>default: # or name_of_service_provider
- set device PPPoE:xl1 # replace xl1 with your ethernet device
+ set device PPPoE:<replaceable>xl1</replaceable> # replace xl1 with your ethernet device
set mru 1492
set mtu 1492
set authname YOURLOGINNAME
@@ -1759,6 +1759,216 @@ ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="default" # or your provider</programlisting>
</sect2>
+
+ <sect2>
+ <title>PPPoE with a 3Com HomeConnect ADSL Modem Dual Link</title>
+
+ <para><emphasis>Contributed by &a.lioux;, 07 Apr
+ 2001.</emphasis></para>
+
+ <para>In short, it does not work. It should, but unfortunately,
+ that is not the case. For whatever reason, this modem does not
+ follow <ulink url="http://www.faqs.org/rfcs/rfc2516.html">RFC
+ 2516</ulink> (<emphasis>A Method for transmitting PPP over
+ Ethernet (PPPoE)</emphasis>, written by L. Mamakos, K. Lidl,
+ J. Evarts, D. Carrel, D. Simone, and R. Wheeler).</para>
+
+ <para>Since it does not follow the specification, FreeBSD's PPPoE
+ implementation will not talk to it. It is very likely that it will
+ not work under other unixes for that same reason. Complain to <ulink
+ url="http://www.3com.com/">3Com</ulink> if you think it should
+ comply with the PPPoE specification.</para>
+
+ <para>If you absolutely want to use your ADSL connection with
+ FreeBSD and are stuck with this modem, you can either:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Try replacing the modem with a different brand or model
+ if your DSL provider permits you to do so. If you are not
+ sure which brand(s) will work, the &a.questions; is a good
+ place to ask.</para>
+ </listitem>
+
+ <listitem>
+ <para>Try to get it working. Keep in mind that there is no
+ guarantee it will work, your mileage may vary.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>If you want to try to make it work, you can do the
+ following, but please keep in mind that you do this <emphasis>at
+ your own risk</emphasis>! Just because it worked for me does
+ not mean it will work for you.</para>
+
+ <para>There are three steps to the process. They are:</para>
+
+ <procedure>
+ <step>
+ <para>Make sure you already have <filename>ppp.conf</filename>
+ set up. See the beginning of this chapter for more details
+ on doing so.</para>
+ </step>
+
+ <step>
+ <para>Since the modem does not speak the correct protocol, we
+ need to learn how to speak its variant of the protocol.
+ This information was obtained from a <ulink
+ url="http://www.dslreports.com/forum/remark,367540;root=equip,16;mode=flat">DSLreports
+ forum message</ulink>.</para>
+
+ <para>The modem speaks <literal>0x3c12</literal> for
+ <literal>DISCOVERY</literal>, and <literal>0x3c13</literal>
+ for <literal>PAYLOAD</literal> identifiers instead of
+ <literal>0x8863</literal> and <literal>0x8864</literal>
+ respectively, as mandated by the PPPoE specification.</para>
+
+ <informaltable>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>Code</entry>
+ <entry>RFC's Code</entry>
+ <entry>Dual Link Modem's Code</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>PAYLOAD</entry>
+ <entry>0x8863</entry>
+ <entry>0x3c12</entry>
+ </row>
+ <row>
+ <entry>PAYLOAD</entry>
+ <entry>0x8864</entry>
+ <entry>0x3c13</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>So, now what? You need to recompile the
+ <literal>NETGRAPH_PPPOE</literal> code with the modem's
+ codes. For this, you should have installed the full kernel
+ sources.</para>
+
+ <para>Find the
+ <filename>/usr/src/sys/netgraph/ng_pppoe.h</filename> file.
+ Be careful while editing this file. You have to modify both
+ the little and the big endian entries.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>For big endian, find the line with
+ <literal>0x8863</literal> in it, and replace the number
+ with <literal>0x3c12</literal>. Do the same with
+ <literal>0x8864</literal>, replacing it with
+ <literal>0x3c13</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para>For little endian, find the line with
+ <literal>0x6388</literal>in it, and replace the number
+ with <literal>0x123c</literal>. Do the same with
+ <literal>0x6488</literal>, replacing it with
+ <literal>0x133c</literal>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Here is a <command>diff</command> of how the new file
+ should look:</para>
+
+ <screen>&prompt.user; <userinput>diff -u ng_pppoe.h.orig ng_pppoe.h</userinput></screen>
+
+ <programlisting>
+--- ng_pppoe.h.orig Thu Apr 12 13:42:46 2001
++++ ng_pppoe.h Thu Apr 12 13:44:47 2001
+@@ -148,8 +148,8 @@
+ #define PTT_SYS_ERR (0x0202)
+ #define PTT_GEN_ERR (0x0203)
+
+-#define ETHERTYPE_PPPOE_DISC 0x8863 /* pppoe discovery packets */
+-#define ETHERTYPE_PPPOE_SESS 0x8864 /* pppoe session packets */
++#define ETHERTYPE_PPPOE_DISC 0x3c12 /* pppoe discovery packets */
++#define ETHERTYPE_PPPOE_SESS 0x3c13 /* pppoe session packets */
+ #else
+ #define PTT_EOL (0x0000)
+ #define PTT_SRV_NAME (0x0101)
+@@ -162,8 +162,8 @@
+ #define PTT_SYS_ERR (0x0202)
+ #define PTT_GEN_ERR (0x0302)
+
+-#define ETHERTYPE_PPPOE_DISC 0x6388 /* pppoe discovery packets */
+-#define ETHERTYPE_PPPOE_SESS 0x6488 /* pppoe session packets */
++#define ETHERTYPE_PPPOE_DISC 0x123c /* pppoe discovery packets */
++#define ETHERTYPE_PPPOE_SESS 0x133c /* pppoe session packets */
+ #endif
+
+ struct pppoe_tag {</programlisting>
+
+ <para>Then do the following as
+ <username>root</username>:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/sys/modules/netgraph/pppoe</userinput>
+&prompt.root; <userinput>make clean depend all install</userinput>
+&prompt.root; <userinput>make clean</userinput></screen>
+
+ <para>Now you can speak the modem's variant of the PPPoE
+ specification.</para>
+
+ <para>The third step is to figure out the name of the profile
+ your ISP assigned to the modem. The information for this
+ step was obtained from the <ulink
+ url="http://www.roaringpenguin.com/pppoe/">Roaring Penguin
+ PPPoE</ulink> program which can be found in the <link
+ linkend="ports">ports collection</link>. If you still are
+ not able to find it, ask your ISP's tech support.</para>
+
+ <para>If they do not know it either, and you are feeling bold
+ (this may de-program your modem and render it useless, so
+ think twice about doing it).</para>
+
+ <para>Install the program shipped with the modem by your
+ provider. Then, access the <literal>System</literal> menu
+ from the program. The name of your profile should be
+ listed there. It is usually <emphasis>ISP</emphasis>.</para>
+
+ <para>The profile name will be used in the PPPoE configuration
+ inside <filename>ppp.conf</filename> as the provider
+ parameter. See the &man.ppp.8; manual page for more
+ information.</para>
+
+ <para>The PPPoE line in your <filename>ppp.conf</filename>
+ should look like this:</para>
+
+ <programlisting>set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable></programlisting>
+
+ <para>Do not forget to change <replaceable>xl1</replaceable>
+ to the proper device for your ethernet card.</para>
+ <para>Do not forget to change <replaceable>ISP</replaceable>
+ to the profile you have just found above.</para>
+ </step>
+ </procedure>
+
+ <para>For additional information, you can try:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink
+ url="http://www.daemonnews.org/200101/pppoe.html">Cheaper
+ Broadband with FreeBSD on DSL</ulink> by <ulink
+ url="http://www.daemonnews.org/200101/pppoe.html#author">Renauld
+ Waldura</ulink> in <ulink url="http://www.daemonnews.org/">Daemon
+ News</ulink>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Another PPPoE tutorial by <ulink
+ url="http://www.sympaticousers.org/faq/freebsd_howto.htm">Sympatico
+ Corp</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
</sect1>
<sect1 id="slip">
diff --git a/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml b/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml
index b3c5197eb8..f3e26802b9 100644
--- a/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml
+++ b/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml
@@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
- $FreeBSD: doc/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.30 2000/11/11 19:24:47 ben Exp $
+ $FreeBSD: doc/en_US.ISO_8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.31 2001/04/09 00:33:55 dd Exp $
-->
<chapter id="ppp-and-slip">
@@ -1652,7 +1652,7 @@ exit 1
</sect1>
<sect1 id="pppoe">
- <title>Using PPP over Ethernet (PPPoE)</title>
+ <title>Using <application>PPP</application> over Ethernet (PPPoE)</title>
<para><emphasis>Contributed by &a.jim; (from <ulink
url="http://node.to/freebsd/how-tos/how-to-freebsd-pppoe.html">node.to</ulink>) 10 Jan 2000.</emphasis></para>
@@ -1715,7 +1715,7 @@ exit 1
<filename>ppp.conf</filename>:</para>
<programlisting>default: # or name_of_service_provider
- set device PPPoE:xl1 # replace xl1 with your ethernet device
+ set device PPPoE:<replaceable>xl1</replaceable> # replace xl1 with your ethernet device
set mru 1492
set mtu 1492
set authname YOURLOGINNAME
@@ -1759,6 +1759,216 @@ ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="default" # or your provider</programlisting>
</sect2>
+
+ <sect2>
+ <title>PPPoE with a 3Com HomeConnect ADSL Modem Dual Link</title>
+
+ <para><emphasis>Contributed by &a.lioux;, 07 Apr
+ 2001.</emphasis></para>
+
+ <para>In short, it does not work. It should, but unfortunately,
+ that is not the case. For whatever reason, this modem does not
+ follow <ulink url="http://www.faqs.org/rfcs/rfc2516.html">RFC
+ 2516</ulink> (<emphasis>A Method for transmitting PPP over
+ Ethernet (PPPoE)</emphasis>, written by L. Mamakos, K. Lidl,
+ J. Evarts, D. Carrel, D. Simone, and R. Wheeler).</para>
+
+ <para>Since it does not follow the specification, FreeBSD's PPPoE
+ implementation will not talk to it. It is very likely that it will
+ not work under other unixes for that same reason. Complain to <ulink
+ url="http://www.3com.com/">3Com</ulink> if you think it should
+ comply with the PPPoE specification.</para>
+
+ <para>If you absolutely want to use your ADSL connection with
+ FreeBSD and are stuck with this modem, you can either:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Try replacing the modem with a different brand or model
+ if your DSL provider permits you to do so. If you are not
+ sure which brand(s) will work, the &a.questions; is a good
+ place to ask.</para>
+ </listitem>
+
+ <listitem>
+ <para>Try to get it working. Keep in mind that there is no
+ guarantee it will work, your mileage may vary.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>If you want to try to make it work, you can do the
+ following, but please keep in mind that you do this <emphasis>at
+ your own risk</emphasis>! Just because it worked for me does
+ not mean it will work for you.</para>
+
+ <para>There are three steps to the process. They are:</para>
+
+ <procedure>
+ <step>
+ <para>Make sure you already have <filename>ppp.conf</filename>
+ set up. See the beginning of this chapter for more details
+ on doing so.</para>
+ </step>
+
+ <step>
+ <para>Since the modem does not speak the correct protocol, we
+ need to learn how to speak its variant of the protocol.
+ This information was obtained from a <ulink
+ url="http://www.dslreports.com/forum/remark,367540;root=equip,16;mode=flat">DSLreports
+ forum message</ulink>.</para>
+
+ <para>The modem speaks <literal>0x3c12</literal> for
+ <literal>DISCOVERY</literal>, and <literal>0x3c13</literal>
+ for <literal>PAYLOAD</literal> identifiers instead of
+ <literal>0x8863</literal> and <literal>0x8864</literal>
+ respectively, as mandated by the PPPoE specification.</para>
+
+ <informaltable>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>Code</entry>
+ <entry>RFC's Code</entry>
+ <entry>Dual Link Modem's Code</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>PAYLOAD</entry>
+ <entry>0x8863</entry>
+ <entry>0x3c12</entry>
+ </row>
+ <row>
+ <entry>PAYLOAD</entry>
+ <entry>0x8864</entry>
+ <entry>0x3c13</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <para>So, now what? You need to recompile the
+ <literal>NETGRAPH_PPPOE</literal> code with the modem's
+ codes. For this, you should have installed the full kernel
+ sources.</para>
+
+ <para>Find the
+ <filename>/usr/src/sys/netgraph/ng_pppoe.h</filename> file.
+ Be careful while editing this file. You have to modify both
+ the little and the big endian entries.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>For big endian, find the line with
+ <literal>0x8863</literal> in it, and replace the number
+ with <literal>0x3c12</literal>. Do the same with
+ <literal>0x8864</literal>, replacing it with
+ <literal>0x3c13</literal>.</para>
+ </listitem>
+
+ <listitem>
+ <para>For little endian, find the line with
+ <literal>0x6388</literal>in it, and replace the number
+ with <literal>0x123c</literal>. Do the same with
+ <literal>0x6488</literal>, replacing it with
+ <literal>0x133c</literal>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Here is a <command>diff</command> of how the new file
+ should look:</para>
+
+ <screen>&prompt.user; <userinput>diff -u ng_pppoe.h.orig ng_pppoe.h</userinput></screen>
+
+ <programlisting>
+--- ng_pppoe.h.orig Thu Apr 12 13:42:46 2001
++++ ng_pppoe.h Thu Apr 12 13:44:47 2001
+@@ -148,8 +148,8 @@
+ #define PTT_SYS_ERR (0x0202)
+ #define PTT_GEN_ERR (0x0203)
+
+-#define ETHERTYPE_PPPOE_DISC 0x8863 /* pppoe discovery packets */
+-#define ETHERTYPE_PPPOE_SESS 0x8864 /* pppoe session packets */
++#define ETHERTYPE_PPPOE_DISC 0x3c12 /* pppoe discovery packets */
++#define ETHERTYPE_PPPOE_SESS 0x3c13 /* pppoe session packets */
+ #else
+ #define PTT_EOL (0x0000)
+ #define PTT_SRV_NAME (0x0101)
+@@ -162,8 +162,8 @@
+ #define PTT_SYS_ERR (0x0202)
+ #define PTT_GEN_ERR (0x0302)
+
+-#define ETHERTYPE_PPPOE_DISC 0x6388 /* pppoe discovery packets */
+-#define ETHERTYPE_PPPOE_SESS 0x6488 /* pppoe session packets */
++#define ETHERTYPE_PPPOE_DISC 0x123c /* pppoe discovery packets */
++#define ETHERTYPE_PPPOE_SESS 0x133c /* pppoe session packets */
+ #endif
+
+ struct pppoe_tag {</programlisting>
+
+ <para>Then do the following as
+ <username>root</username>:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/src/sys/modules/netgraph/pppoe</userinput>
+&prompt.root; <userinput>make clean depend all install</userinput>
+&prompt.root; <userinput>make clean</userinput></screen>
+
+ <para>Now you can speak the modem's variant of the PPPoE
+ specification.</para>
+
+ <para>The third step is to figure out the name of the profile
+ your ISP assigned to the modem. The information for this
+ step was obtained from the <ulink
+ url="http://www.roaringpenguin.com/pppoe/">Roaring Penguin
+ PPPoE</ulink> program which can be found in the <link
+ linkend="ports">ports collection</link>. If you still are
+ not able to find it, ask your ISP's tech support.</para>
+
+ <para>If they do not know it either, and you are feeling bold
+ (this may de-program your modem and render it useless, so
+ think twice about doing it).</para>
+
+ <para>Install the program shipped with the modem by your
+ provider. Then, access the <literal>System</literal> menu
+ from the program. The name of your profile should be
+ listed there. It is usually <emphasis>ISP</emphasis>.</para>
+
+ <para>The profile name will be used in the PPPoE configuration
+ inside <filename>ppp.conf</filename> as the provider
+ parameter. See the &man.ppp.8; manual page for more
+ information.</para>
+
+ <para>The PPPoE line in your <filename>ppp.conf</filename>
+ should look like this:</para>
+
+ <programlisting>set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable></programlisting>
+
+ <para>Do not forget to change <replaceable>xl1</replaceable>
+ to the proper device for your ethernet card.</para>
+ <para>Do not forget to change <replaceable>ISP</replaceable>
+ to the profile you have just found above.</para>
+ </step>
+ </procedure>
+
+ <para>For additional information, you can try:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink
+ url="http://www.daemonnews.org/200101/pppoe.html">Cheaper
+ Broadband with FreeBSD on DSL</ulink> by <ulink
+ url="http://www.daemonnews.org/200101/pppoe.html#author">Renauld
+ Waldura</ulink> in <ulink url="http://www.daemonnews.org/">Daemon
+ News</ulink>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Another PPPoE tutorial by <ulink
+ url="http://www.sympaticousers.org/faq/freebsd_howto.htm">Sympatico
+ Corp</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
</sect1>
<sect1 id="slip">