VLAN-Tagged PPPoE

One of the major internet broadband service provider in my country Malaysia require VLAN-Tagged PPPoE dial-up in order to connect to their internet broadband. I have successfully connect Nethserver to the internet broadband by creating both PPPoE and VLAN (500) interface on one of the NIC port let say eth1 and edit the ETH=‘eth1’ to ETH=‘eth1.500’ in ifcfg-ppp0 file.

Is that possible to have VLAN interface in red role (eth1.500) as one of the option in Ethernet interface drop-down list when creating PPPoE?

I think it is possible

I agree. @davidep is it hard to implement?

With this feature, can we conquer all malaysian users? :smile:

As a workaround, if you are connected to your server through the green interface, please check if the following commands fix the problem:


db networks setprop ppp0 eth eth1.500
db networks settype ppp0 xdsl
signal-event interface-update

Let us know if it works!

…We could then allow VLAN to be associated with the pppoe interface through the UI.

I will test

Nope it doesnot work for Web UI

WebUI check interface for :
type = ethernet
and released field :
role =

1 Like

Sorry I can’t test it today! Perhaps the VLAN record is missing. It could be created from UI then changed to role pppoe manually with

db networks setprop eth1.500 role pppoe

The UI allows only pppoe over Ethernet interfaces.

Then proceed with the commands above.

Doesnot work :frowning:

I tested it, it doesn’t work. Following is the result of my testing

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<< Setting before keying in the command. PPPoE line is up. <<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[root@atomtest ~]# db networks getprop eth1.500 role
red
[root@atomtest ~]# db networks getprop ppp0 eth
[root@atomtest ~]# db networks gettype ppp0
xdsl

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<< Setting after keying in the command. PPPoE line is down <<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[root@atomtest ~]# db networks getprop eth1.500 role
pppoe
[root@atomtest ~]# db networks getprop ppp0 eth
eth1.500
[root@atomtest ~]# db networks gettype ppp0
xdsl

I am not sure whether we can conquer all Malaysian users but this ISP does have about 500,000 subscribers in Malaysia :smile:. By the way, pfSense has this feature.

1 Like

Unluckily, I’ve no PPPoE modem to test this configuration at home. Let’s try again together! :blush:

This is my networks DB:

db networks show

eth0=ethernet
bootproto=none
device=eth0
gateway=192.168.122.1
hwaddr=52:54:00:F5:C0:99
ipaddr=192.168.122.94
netmask=255.255.255.0
onboot=yes
role=green
eth1=ethernet
hwaddr=52:54:00:af:4d:35
role=
eth1.500=vlan
role=pppoe
eth2=ethernet
hwaddr=52:54:00:25:75:79
role=
ppp0=xdsl
AuthType=auto
Password=test
name=PPPoE
provider=xDSL provider
role=red
user=test

To configure the VLAN the commands should be:

db networks set eth1.500 vlan role pppoe

db networks settype ppp0 xdsl

db networks setprop ppp0 role red user test Password test

signal-event interface-update

Please attach relevant lines from /var/log/messages. For instance


Sep 21 13:28:16 vm8 esmith::event[9663]: Bringing up interface eth1.500: #033[60G[#033[0;32m OK #033[0;39m]#015
Sep 21 13:28:16 vm8 pppd[10423]: pppd 2.4.5 started by root, uid 0
Sep 21 13:28:16 vm8 pppd[10423]: Using interface ppp0
Sep 21 13:28:16 vm8 pppd[10423]: Connect: ppp0 <–> /dev/pts/1

Sep 21 13:28:47 vm8 pppd[10423]: Connection terminated.
Sep 21 13:28:47 vm8 pppd[10423]: Modem hangup
Sep 21 13:28:51 vm8 pppoe[10424]: Timeout waiting for PADO packets
Sep 21 13:28:51 vm8 pppd[10423]: Exit.

it is like workaround after successfully created ppoe interface , but with out it you couldnot do anything.
So First we need to create Vlan without role (or with RED role for Dual connection). After that we need to modify SetPppoeParameters.php to validate interface not only ethernet without role and vlan without role.

If the commands above work correctly I’d add the VLAN tag to the PPPoE settings form. This way we do not add one more step to the current UI procedure.

add it i’l try to test

Maybe @jitkian can help!

It doesn’t work, my result of testing as following:-

<<< Command >>>
**# db networks set eth1.500 vlan role pppoe**
**# db networks settype ppp0 xdsl**
**# db networks setprop ppp0 role red user user Password password**
**# signal-event interface-update**

<<< Before key in command above, in ifcfg-ppp0 file, ETH value is set to eth1.500 manually and pppoe is running >>>
[admin@atomtest ~]$ db networks show
eth0=ethernet
    bootproto=none
    device=eth0
    gateway=
    hwaddr=00:27:0E:0D:74:47
    ipaddr=192.168.188.1
    netmask=255.255.255.0
    onboot=yes
    role=green
eth0.2=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.168.1
    netmask=255.255.255.0
    role=green
eth0.3=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.178.1
    netmask=255.255.255.0
    role=green
eth1=ethernet
    hwaddr=00:11:6b:d0:3b:7d
    role=pppoe
eth1.500=vlan
    bootproto=dhcp
    gateway=
    ipaddr=
    netmask=
    role=pppoe
ppp0=xdsl
    AuthType=auto
    Password=password
    eth=eth1.500
    name=PPPoE
    provider=TM UniFi
    role=red
    user=user

<<< After key in command, in ifcfg-ppp0 file, ETH value is reset to eth1 and pppoe is down >>>
[admin@atomtest ~]$ db networks show
eth0=ethernet
    bootproto=none
    device=eth0
    gateway=
    hwaddr=00:27:0E:0D:74:47
    ipaddr=192.168.188.1
    netmask=255.255.255.0
    onboot=yes
    role=green
eth0.2=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.168.1
    netmask=255.255.255.0
    role=green
eth0.3=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.178.1
    netmask=255.255.255.0
    role=green
eth1=ethernet
    hwaddr=00:11:6b:d0:3b:7d
    role=pppoe
eth1.500=vlan
    role=pppoe
ppp0=xdsl
    AuthType=auto
    Password=password
    eth=eth1.500
    name=PPPoE
    provider=TM UniFi
    role=red
    user=user

<<< var/lib/messages >>>
Sep 23 17:10:08 atomtest adsl-stop: Killing pppd 
Sep 23 17:10:08 atomtest pppd[1288]: Terminating on signal 15 
Sep 23 17:10:08 atomtest adsl-stop: Killing pppoe-connect 
Sep 23 17:10:08 atomtest pppd[1288]: Connect time 37.8 minutes. 
Sep 23 17:10:08 atomtest pppd[1288]: Sent 3011088 bytes, received 42673516 bytes. 
Sep 23 17:10:08 atomtest pppoe[1289]: read (asyncReadFromPPP): Session 7443: Input/output error 
Sep 23 17:10:08 atomtest pppoe[1289]: Sent PADT
Sep 23 17:10:28 atomtest pppd[4882]: pppd 2.4.5 started by admin, uid 0 
Sep 23 17:10:28 atomtest pppd[4882]: Using interface ppp0 
Sep 23 17:10:28 atomtest pppd[4882]: Connect: ppp0 <--> /dev/pts/1
Sep 23 17:10:59 atomtest pppd[4882]: LCP: timeout sending Config-Requests 
Sep 23 17:10:59 atomtest pppd[4882]: Connection terminated. 
Sep 23 17:10:59 atomtest pppd[4882]: Modem hangup 
Sep 23 17:11:03 atomtest pppoe[4883]: Timeout waiting for PADO packets 
Sep 23 17:11:03 atomtest pppd[4882]: Exit. 
Sep 23 17:11:03 atomtest pppoe-connect: PPPoE connection lost; attempting re-connection. 
Sep 23 17:11:08 atomtest pppd[4950]: pppd 2.4.5 started by admin, uid 0 
Sep 23 17:11:08 atomtest pppd[4950]: Using interface ppp0 
Sep 23 17:11:08 atomtest pppd[4950]: Connect: ppp0 <--> /dev/pts/1
Sep 23 17:11:39 atomtest pppd[4950]: LCP: timeout sending Config-Requests 
Sep 23 17:11:39 atomtest pppd[4950]: Connection terminated. 
Sep 23 17:11:39 atomtest pppd[4950]: Modem hangup
Sep 23 17:11:43 atomtest pppoe[4951]: Timeout waiting for PADO packets 
Sep 23 17:11:43 atomtest pppd[4950]: Exit.

:thumbsup: Thanks @jitkian for your time!

Did you start from a previous test?

As in my example, the role of the Ethernet interface must be empty, and eth is not needed. Please try with


db networks setprop eth1 role ‘’
db networks delprop ppp0 eth
signal-event interface-update

No I did’t start from a previous test. I just tried your latest command and it works :smile: . Just now I reset my pppoe back to initial state (state before I manually changed the ifcfg-ppp0 file) which is down by issuing command #signal-event interface-upate (this command will overwrite my manual setting). Then follow by your command and the pppoe line is up and running. The result of #db networks show after issuing the command as following:-

eth0=ethernet
    bootproto=none
    device=eth0
    gateway=
    hwaddr=00:27:0E:0D:74:47
    ipaddr=192.168.188.1
    netmask=255.255.255.0
    onboot=yes
    role=green
eth0.2=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.168.1
    netmask=255.255.255.0
    role=green
eth0.3=vlan
    bootproto=none
    gateway=
    ipaddr=192.168.178.1
    netmask=255.255.255.0
    role=green
eth1=ethernet
    hwaddr=00:11:6b:d0:3b:7d
    role=
eth1.500=vlan
    role=pppoe
ppp0=xdsl
    AuthType=auto
    Password=password
    name=PPPoE
    provider=TM UniFi
    role=red
    user=user
2 Likes