Hi List,

As a SDN startup(www.raydonetworks.com) in China, we have implemented 
pppoeclient support for vpp based on opensource pppd project 
(https://ppp.samba.org/).


The code have been written and tested on vpp stable branch 17.10, it have been 
tested in two cities, one is Wuhan, Hubei province, China telecom ISP + China 
mobile ISP, the other is Suzhou, Jiangsu province, China telecom ISP.


It support lcp/ipcp/pap/chap protocol defined in the pppoe related RFCs.


The main design breaks the pppoclient implementation to pppoeclient and pppox 
plugin in vpp semantics, pppoeclient plugin provides api to create pppoe client 
and pppoe encap/decap nodes, pppox plugin provides api to set pppoe 
authentication information and node for interacting with IPv4 layer. More 
details can be discovered by looking at the code at github which provided by 
the link below.


To create a pppoeclient, we just need the following two CLI:


# sw-if-index is the ethernet interface sw if index which connected to the ISP 
modem.
vppctl create pppoe client sw-if-index 1 host-uniq 8888
# sw-if-index is the newly created pppox virtual interface's sw if index
vppctl pppox set auth sw-if-index 4 username "yourusername" password 
"yourpassword"


Regarding the license issue, the pppd code following the original author's 
license, the other part follow vpp's APACHE license.


Hope this will help others which want to use pppoeclient 


The code is submitted to github: 
https://github.com/raydonetworks/vpp-pppoeclient


Currently we are building our product and does not have much effort to porting 
this code to mainline, hope someone use this and may merge it to the vpp 
mainline if possible.


Thanks again for vpp team which provide such a gorgeous project.

Reply via email to