[RP-PPPoE] pppoe-server: problem with duplicated PADO's

poldi871 at web.de poldi871 at web.de
Wed Dec 23 06:57:46 EST 2020


Hello,

I am running a PPPoE server on a test simulator with the following constellation:

Configuration (pppoe-server):
  - OpenSuse Leap-15.1
  - Interfaces:
    - eth1
    - eth1.7 as VLAN with ID 7
  - Start the pppoe server from a unit with:
    "ExecStart=/usr/sbin/pppoe-server pty -F -T 60 -I eth1.7 -I eth1 -L 192.168.2.89 -N 1 -C pppoe -S pppoe -R 192.168.2"
  - Version of the pppoe server: 3.13

Client:
  - The client sends one PADI on the LAN and one on the VLAN7

Problem:
The server should now respond with a PADO on the LAN and on VLAN7. It works the same way on my "old" simulator with CentOS-6.6 and a PPPoE server version 3.10.

Trace (doubling the PADO's on the LAN with 3.13):
11:53:18.993935 5e:09:87:21:dc:ee > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 64: vlan 7, p 0, ethertype PPPoE D, PPPoE PADI [Service-Name] [Host-Uniq 0xFD050000]
11:53:18.993950 5e:09:87:21:dc:ee > ff:ff:ff:ff:ff:ff, ethertype PPPoE D (0x8863), length 60: PPPoE PADI [Service-Name] [Host-Uniq 0xFD050000]
11:53:18.994194 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 70: PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x74A70DB6C6658AB1B84973527B71F3732C0E0000] [Host-Uniq 0xFD050000]
11:53:18.994230 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype 802.1Q (0x8100), length 74: vlan 7, p 0, ethertype PPPoE D, PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x74A70DB6C6658AB1B84973527B71F3732C0E0000] [Host-Uniq 0xFD050000]
11:53:18.994246 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 70: PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x74A70DB6C6658AB1B84973527B71F3732C0E0000] [Host-Uniq 0xFD050000]
11:53:20.001310 5e:09:87:21:dc:ee > 08:00:27:2d:3f:3b, ethertype PPPoE D (0x8863), length 60: PPPoE PADR [Service-Name] [Host-Uniq 0xFD050000] [AC-Cookie 0x74A70DB6C6658AB1B84973527B71F3732C0E0000]
11:53:20.002033 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 37: PPPoE PADS [ses 0x1] [Service-Name "pppoe"] [Host-Uniq 0xFD050000]

Here you can see that the server on the LAN answers twice with the PADO.

It is interesting if I change the call of the PPPOE server as follows:
   "ExecStart=/usr/sbin/pppoe-server pty -F -T 60 -I eth1 -L 192.168.2.89 -N 1 -C pppoe -S pppoe -R 192.168.2.1"
and if I send a PADI on the LAN and the VLAN from the client anyway, the trace looks like this:
11:30:29.127191 5e:09:87:21:dc:ee > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 64: vlan 7, p 0, ethertype PPPoE D, PPPoE PADI [Service-Name] [Host-Uniq 0xEB050000]
11:30:29.127217 5e:09:87:21:dc:ee > ff:ff:ff:ff:ff:ff, ethertype PPPoE D (0x8863), length 60: PPPoE PADI [Service-Name] [Host-Uniq 0xEB050000]
11:30:29.127595 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 70: PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x2B272F98F95D788C41D018F81D870060DC0B0000] [Host-Uniq 0xEB050000]
11:30:29.127635 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 70: PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x2B272F98F95D788C41D018F81D870060DC0B0000] [Host-Uniq 0xEB050000]
11:30:30.135046 5e:09:87:21:dc:ee > 08:00:27:2d:3f:3b, ethertype PPPoE D (0x8863), length 60: PPPoE PADR [Service-Name] [Host-Uniq 0xEB050000] [AC-Cookie 0x2B272F98F95D788C41D018F81D870060DC0B0000]
11:30:30.135711 08:00:27:2d:3f:3b > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 37: PPPoE PADS [ses 0x1] [Service-Name "pppoe"] [Host-Uniq 0xEB050000]

Again, two PADO's are sent on the LAN. That should definitely be wrong.

Now I've tried to build version 3.10 on the server side under OpenSuse. The build is successful, the PPPoE server starts perfectly, but does not see the incoming PADIs at all.
The same applies to versions 3.11 and 3.12.
I compared the sources of versions 3.12 and 3.13 and don't see any big differences, why up to version 3.12 the packages are not seen, but are seen from version 3.13 onwards. But that's just by the way.
My problem is doubling the PADO's on the LAN.

Here is a trace from my "old" simulator under CentOS-6.6 and the PPPoE server version 3.10 as it should look like:
12:11:01.601499 5e:09:87:21:dc:ee > Broadcast, ethertype 802.1Q (0x8100), length 64: vlan 7, p 0, ethertype PPPoE D, PPPoE PADI [Service-Name] [Host-Uniq 0x0C060000]
12:11:01.601507 5e:09:87:21:dc:ee > Broadcast, ethertype PPPoE D (0x8863), length 60: PPPoE PADI [Service-Name] [Host-Uniq 0x0C060000]
12:11:01.601672 08:00:27:30:c4:aa > 5e:09:87:21:dc:ee, ethertype 802.1Q (0x8100), length 74: vlan 7, p 0, ethertype PPPoE D, PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0x72806E3B8100A05D3F1366084B95D05F04060000] [Host-Uniq 0x0C060000]
12:11:01.601729 08:00:27:61:46:cb > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 70: PPPoE PADO [AC-Name "pppoe"] [Service-Name "pppoe"] [AC-Cookie 0xC11FCB5F51DFFC67872F246D692E01A404060000] [Host-Uniq 0x0C060000]
12:11:02.609893 5e:09:87:21:dc:ee > 08:00:27:61:46:cb, ethertype PPPoE D (0x8863), length 60: PPPoE PADR [Service-Name] [Host-Uniq 0x0C060000] [AC-Cookie 0xC11FCB5F51DFFC67872F246D692E01A404060000]
12:11:02.610155 08:00:27:61:46:cb > 5e:09:87:21:dc:ee, ethertype PPPoE D (0x8863), length 37: PPPoE PADS [ses 0x1] [Service-Name "pppoe"] [Host-Uniq 0x0C060000]


By the way, the doubling of the PADO's also occurs with the current version 3.14

Any ideas?
Thanks in advance,
and merry christmas

Poldi



More information about the RP-PPPoE mailing list