Feature #3218

PPPoE support

Added by Giacomo Sanchietti about 6 years ago. Updated about 6 years ago.

Status:CLOSEDStart date:
Priority:NormalDue date:
Assignee:-% Done:

100%

Category:nethserver-firewall-base
Target version:v6.6
Resolution: NEEDINFO:No

Description

Add support to nethserver-base and nethserver-firewall-base for PPPoE connection.

The system should:
  • allow the creation of a new PPPoE provider associated with a free ethernet assigned
  • use ppp0 as red interface
The DSL provider should have following options:
  • name for identification
  • user name
  • password
  • authentication type, CHAP or PAP or both
  • associated ethernet interface

Thanks to @Nas for a good starting point: http://community.nethserver.org/t/installing-a-pppoe-client-on-nethserver/1144

Associated revisions

Revision dc6d9548
Added by Davide Principi about 6 years ago

Default networks DB values for ppp0 interface. Refs #3218

Revision de9fa542
Added by Davide Principi about 6 years ago

Moved pppoe DB record to nethserver-base. Refs #3218

Revision ec19e672
Added by Davide Principi about 6 years ago

Restricted permissions on /etc/ppp/chap-secrets /etc/ppp/pap-secrets. Refs #3218

Revision 03ac019c
Added by Davide Principi about 6 years ago

NetworksDB (get_by_role): consider only valid interface records. Refs #3218

Revision 4640202f
Added by Davide Principi about 6 years ago

NetworkAdapter UI module: added PPPoE configuration panel. Refs #3218

Revision 1c099782
Added by Davide Principi about 6 years ago

Standalone interface-config-write-pppoe action. Refs #3218

The action acts separatley from interface-config-write. It reads the
ppp0 key from networks DB and merges its props with hardcoded values.

If an ethernet interface is assigned the 'pppoe' role it creates
ifcfg-eth0, otherwise the same file is deleted.

Revision 5a0cca2a
Added by Davide Principi about 6 years ago

static-routes-save event: overwrite ifcfg-ppp0 contents. Refs #3218

Always execute interface-config-write-pppoe after
interface-config-write, to fix ifcfg-ppp0 contents

Revision 9265e176
Added by Davide Principi about 6 years ago

Merge branch 'pppoe' into master. Refs #3218

Revision 1f703f14
Added by Davide Principi about 6 years ago

nethserver-base: merge branch 'pppoe' into master. Refs #3218

Revision 046c750f
Added by Davide Principi about 6 years ago

Never delete the 'role' prop in networks DB. Refs #3218

Revision 6a0f282d
Added by Davide Principi about 6 years ago

ppp templates: read values from networks DB. Refs #3218

/etc/ppp/chap-secrets
/etc/ppp/pap-secrets

Revision c18fb3b9
Added by Davide Principi about 6 years ago

NetworkAdapter UI: hide PPPoE radio button if not gateway. Refs #3218

Revision eaf3fc39
Added by Davide Principi about 6 years ago

NetworkAdapter UI: show "Authentication type" in PPPoE configuration. Refs #3218

Revision 4cf19ff2
Added by Davide Principi almost 6 years ago

admin manual: format and index changes. Refs #3218

Revision 25b4f2a1
Added by Davide Principi almost 6 years ago

admin manual: PPPoE logical interface documentation. Refs #3218

Revision bc228a44
Added by Davide Principi almost 6 years ago

Merge pull request #76 from DavidePrincipi/pppoe

PPPoE administrator manual update. Refs #3218

History

#1 Updated by Giacomo Sanchietti about 6 years ago

  • Category set to <multiple packages>
  • Status changed from NEW to TRIAGED
  • Target version set to v6.6
  • % Done changed from 0 to 20
See draft implementation:

To configure this implementation:

config set pppoe configuration User myadsl Password mypassword Interface eth2  AuthType auto Name myprovider  

db networks set ppp0 xdsl bootproto dialup device ppp0 onboot yes pidfile /var/run/pppoe-adsl.pid firewall NONE ping . pppoe_timeout 80 lcp_failure 3 lcp_interval 20 clampmss 1412 connect_poll 6 connect_timeout 60 defroute yes synchronous no eth eth2 peerdns no demand no role red

db networks set eth2 ethernet hwaddr 00:0D:B9:31:2F:B6 bootproto none onboot yes role pppoe 

#2 Updated by Davide Principi about 6 years ago

  • Status changed from TRIAGED to ON_DEV
  • Assignee set to Davide Principi
  • % Done changed from 20 to 30

#3 Updated by Davide Principi about 6 years ago

  • Status changed from ON_DEV to MODIFIED
  • Assignee deleted (Davide Principi)
  • % Done changed from 30 to 60

Test case 0

Update nethserver-base to modified version.

  • Network > New interface
    PPPoE entry must be hidden

Install modified nethserver-firewall-base version

  • Network > New interface
    PPPoE entry must be listed

Test case 1 (create)

  • Network > New interface > PPPoE on ppp0 > Next
    Note: Validator must fail if PPPoE is already configured or role is different from red.
  • fill required infos and save
    Note: only free Ethernet devices must be listed. Don't know what happens if none is available

Test case 2 (modify)

  • Network > ppp0 > Configure PPPoE
  • change parameters and verify the system behavior changes accordingly

Test case 3 (delete)

  • Network > ppp0 > Delete (confirm)
    The ppp0 record disappears and xDSL connection is taken down

OR

  • Network > ethX (PPPoE role) > Release role (confirm)
    The ppp0 record disappears and xDSL connection is taken down

Test case 4

  • start from test case 1 (creation)
  • power off the system and replace the Ethernet card with a new one (see also the Admin Manual)
  • assign the "pppoe" role to the new card
  • check the system configuration is still consistent

PACKAGER NOTE

Update Administrator Manual: https://github.com/NethServer/nethserver-docs/pull/76

#4 Updated by Davide Principi about 6 years ago

  • Category changed from <multiple packages> to nethserver-firewall-base
  • Status changed from MODIFIED to ON_QA
  • % Done changed from 60 to 70

In nethserver-testing:
nethserver-base-2.7.4-1.6.g046c750.ns6.noarch.rpm
nethserver-base-2.7.4-1.7.gc18fb3b.ns6.noarch.rpm
nethserver-base-2.7.4-1.8.geaf3fc3.ns6.noarch.rpm
nethserver-firewall-base-2.6.4-1.6.g9265e17.ns6.noarch.rpm
nethserver-firewall-base-2.6.4-1.7.g6a0f282.ns6.noarch.rpm

#5 Updated by Davide Principi about 6 years ago

  • Updated packages, fixing pap/chap secrets templates.
  • Added test case 0 (see above)

#6 Updated by Davide Principi about 6 years ago

  • Status changed from ON_QA to VERIFIED
  • % Done changed from 70 to 90

#7 Updated by Davide Principi about 6 years ago

  • Status changed from VERIFIED to CLOSED
  • % Done changed from 90 to 100

In nethserver-updates:
nethserver-base-2.8.0-1.ns6.noarch.rpm
nethserver-firewall-base-2.6.5-1.ns6.noarch.rpm

Edit:
https://github.com/NethServer/nethserver-docs/pull/76

Also available in: Atom PDF