Overview

PPPoE is a network protocol for encapsulating PPP frames inside Ethernet frames. It appeared in 1999, in the context of the boom of DSL as the solution for tunneling packets over the DSL connection to the ISPs IP network, and from there to the rest of the Internet. 

Instructions

vyatta@R1# set resources chap-secrets user userid secret password

vyatta@R1# set interfaces pppoe pppoe0 interface dp0p1s1

vyatta@R1# set interfaces pppoe pppoe0 chap-user userid

vyatta@R1# set interfaces pppoe pppoe0 default-route

vyatta@R1# set interfaces pppoe pppoe0 name-server

vyatta@R1# set interfaces pppoe pppoe0 mtu 1492

Verification and Troubleshooting

vyatta@R1$ show interfaces detail

vyatta@R1$ ping www.google.com

vyatta@R1$ show log

Enable TCP MSS Clamping

It is often useful to enable TCP MSS clamping on PPPoE interfaces.

When needed, this will usually present as TCP conections being established, but ‘freezing’ before much data has been transfered. That is because the MTU of a PPPoE link is 8 bytes shorter than that of the underlying ethernet size of 1500 bytes, and path MTU discovery often does not work between various hosts; in large part due to the path between the hosts dropping the ICMP messages used for classic PMTUd - usually at NATs, firewalls or ACLs. Also many hosts do not support the newer PLMTUD mechanism, and not all protocols define how to use it (TCP does).

This can be enabled with the following command, usually in the ‘mtu’ variant:

vyatta@vyatta# set interfaces pppoe pppoe0 ip tcp-mss 
Possible Completions:
   <Enter>   Execute the current command
   limit     Clamp the TCP MSS to the configured value
   mtu       Clamp the TCP MSS based on interface MTU
   mtu-minus Clamp the TCP MSS based on interface MTU less the configured value

i.e. as below (showing both the IPv4 and IPv6 versions)

vyatta@vyatta# set interfaces pppoe pppoe0 ip tcp-mss mtu
vyatta@vyatta# set interfaces pppoe pppoe0 ipv6 tcp-mss mtu

It may also be possible to force the use of baby jumbo-grams for PPPoE (i.e. using a 1508 payload packet) by setting the PPPoE interface MTU to 1500. However support for this between various vendors is not universal, nor is ISP support, and so it used one should experiment to ensure it is operating properly. If that scheme works, then there is no need to enable MSS clamping.

Related articles

The content by label feature displays related articles automatically, based on labels you choose. To edit options for this feature, select the placeholder below and tap the pencil icon.

相关问题