My environment looks like I used a PC Engines APU.4D2/4D4 as hardware, but I have also tested it in a vm. Currently opnsense is installed and I would like to switch to vyos.
Now I have the problem that pppoe does not work. In opnsense it works fine. The internetprovider is ewetel, which is an internet provider in northern germany. As modem I use a DrayTek Vigor130, which passes the pppoe. The pppoe connection itself is available via vlan 7.
config vyos
These are the parameters in vyos:
set interfaces ethernet eth0 vif 7 description 'VDSL'
#set interfaces pppoe pppoe0 default-route 'auto'
set interfaces pppoe pppoe0 default-route 'force'
set interfaces pppoe pppoe0 mtu 1492
set interfaces pppoe pppoe0 authentication user 'n00123456#100@ab-c.de'
set interfaces pppoe pppoe0 authentication password 'testtest'
set interfaces pppoe pppoe0 source-interface 'eth0.7'
set interfaces pppoe pppoe0 service-name '1'
Username and password is anominized
I tested with vyos version 1.3 from 202205161705 and 202212201603 and copy the username and password directly from opnsense.
I used tcpdump to capture the network traffic on the wan port. I can’t upload cap/pcapng, so i exported it as txt via wireshark. I have anomized this and replaced the mac-address, ip-addresses, host-uniq, ac-name, ac-cockie as well as the value value in the ppp chap challengeresponse.
I also find this very strange, I use this config myself for telekom.
So the problem is that vyos can not connect to the internet and therefore does not create a pppoe interface.
Logs
Here are the logs for my config and yours:
config:
set interfaces ethernet eth0 vif 7 description 'VDSL'
#set interfaces pppoe pppoe0 default-route 'auto'
set interfaces pppoe pppoe0 default-route 'force'
set interfaces pppoe pppoe0 mtu 1492
set interfaces pppoe pppoe0 authentication user 'n00123456#100@ab-c.de'
set interfaces pppoe pppoe0 authentication password 'testtest'
set interfaces pppoe pppoe0 source-interface 'eth0.7'
set interfaces pppoe pppoe0 service-name '1'
log:
Jan 2 08:46:22 vyos pppd[1355]: Timeout waiting for PADO packets
Jan 2 08:46:22 vyos pppd[1355]: Unable to complete PPPoE Discovery
Jan 2 08:46:52 vyos kernel: [ 86.293653] pppoe0: renamed from ppp0
Jan 2 08:46:52 vyos pppd[1355]: PPP session is 116
Jan 2 08:46:52 vyos pppd[1355]: Connected to 30:b6:4f:e3:a3:d1 via interface eth0.7
Jan 2 08:46:52 vyos pppd[1355]: Renamed interface ppp0 to pppoe0
Jan 2 08:46:52 vyos pppd[1355]: Using interface pppoe0
Jan 2 08:46:52 vyos pppd[1355]: Connect: pppoe0 <--> eth0.7
Jan 2 08:46:52 vyos bgpd[888]: [EC 100663301] INTERFACE_STATE: Cannot find IF ppp0 in VRF 0
Jan 2 08:46:52 vyos systemd-udevd[1756]: link_config: could not get ethtool features for ppp0
Jan 2 08:46:52 vyos systemd-udevd[1756]: Could not set offload features of ppp0: No such device
Jan 2 08:46:53 vyos pppd[1355]: CHAP authentication failed: User check attributes mismatch
Jan 2 08:46:53 vyos pppd[1355]: CHAP authentication failed
Jan 2 08:46:53 vyos pppd[1355]: Modem hangup
Jan 2 08:46:53 vyos pppd[1355]: Connection terminated.
Jan 2 08:46:53 vyos bgpd[888]: [EC 100663301] INTERFACE_STATE: Cannot find IF pppoe0 in VRF 0
Jan 2 08:46:53 vyos pppd[1355]: Sent PADT
config:
set firewall options interface pppoe0 adjust-mss '1452'
set interfaces pppoe pppoe0 authentication user 'n00123456#100@ab-c.de'
set interfaces pppoe pppoe0 authentication password 'testtest'
set interfaces pppoe pppoe0 default-route 'auto'
set interfaces pppoe pppoe0 no-peer-dns
set interfaces pppoe pppoe0 source-interface 'eth0.7'
log:
Jan 2 08:50:40 vyos pppd[2158]: Plugin rp-pppoe.so loaded.
Jan 2 08:50:40 vyos pppd[2158]: Plugin rp-pppoe.so loaded.
Jan 2 08:50:40 vyos pppd[2158]: pppd 2.4.7 started by root, uid 0
Jan 2 08:50:40 vyos vyos-configd[604]: Received message: {"type": "node", "data": "VYOS_TAGNODE_VALUE=pppoe0/usr/libexec/vyos/conf_mode/firewall_options.py"}
Jan 2 08:50:55 vyos kernel: [ 71.350021] pppoe0: renamed from ppp0
Jan 2 08:50:55 vyos pppd[2158]: PPP session is 25
Jan 2 08:50:55 vyos pppd[2158]: Connected to 30:b6:4f:e3:a3:d1 via interface eth0.7
Jan 2 08:50:55 vyos pppd[2158]: Renamed interface ppp0 to pppoe0
Jan 2 08:50:55 vyos pppd[2158]: Using interface pppoe0
Jan 2 08:50:55 vyos pppd[2158]: Connect: pppoe0 <--> eth0.7
Jan 2 08:50:55 vyos bgpd[882]: [EC 100663301] INTERFACE_STATE: Cannot find IF ppp0 in VRF 0
Jan 2 08:50:55 vyos systemd-udevd[2249]: link_config: could not get ethtool features for ppp0
Jan 2 08:50:55 vyos systemd-udevd[2249]: Could not set offload features of ppp0: No such device
Jan 2 08:50:56 vyos pppd[2158]: CHAP authentication failed: User check attributes mismatch
Jan 2 08:50:56 vyos pppd[2158]: CHAP authentication failed
Jan 2 08:50:56 vyos pppd[2158]: Modem hangup
Jan 2 08:50:56 vyos pppd[2158]: Connection terminated.
Jan 2 08:50:56 vyos bgpd[882]: [EC 100663301] INTERFACE_STATE: Cannot find IF pppoe0 in VRF 0
Jan 2 08:50:56 vyos pppd[2158]: Sent PADT
@rasmuoy , this config not exist in the version 1.4, the alternative is the config from @c-po:
set firewall options interface pppoe0 adjust-mss '1452'
But this does not solve the problem, thanks for this.
@c-po the folder “/etc/ppp/peers” does not exist in the system, only the folder “/etc/ppp”. In this folder the file “ppp.conf” exist:
#################################################################
# PPP Sample Configuration File
# Originally written by Toshiharu OHNO
# Simplified 5/14/1999 by wself@cdrom.com
#
# See /usr/share/examples/ppp/ for some examples
#
# $FreeBSD$
#################################################################
default:
set log Phase Chat LCP IPCP CCP tun command
ident user-ppp VERSION
# Ensure that "device" references the correct serial port
# for your modem. (cuau0 = COM1, cuau1 = COM2)
#
set device /dev/cuau1
set speed 115200
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \
\"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CONNECT"
set timeout 180 # 3 minute idle timer (the default)
enable dns # request DNS info (for resolv.conf)
papchap:
#
# edit the next three lines and replace the items in caps with
# the values which have been assigned by your ISP.
#
set phone PHONE_NUM
set authname USERNAME
set authkey PASSWORD
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
add default HISADDR # Add a (sticky) default route
u3g:
set device /dev/cuaU0.0
set phone *99\#
set timeout 0
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
add default HISADDR # Add a (sticky) default route