Some ISPs do advanced authentification checks via Calling-Station-ID attribute which should include info from L2TP Calling-Number
Description
Details
- Protocol
- L2TP
- Version
- -
Event Timeline
Hi.
Is there any recommendations on compiling and embedding newly compiled version of accel-ppp to vyos 1.4 ?
I mean how to install newly built package into VyOS 1.4.
The deb built on Debian11 and installed with dpkg on VyOS does not start for some reason with no output.
This cmake gives working deb on VyOS on Debian11 machine:
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_C_FLAGS='-g -O0' \ -DBUILD_IPOE_DRIVER=TRUE \ -DBUILD_VLAN_MON_DRIVER=TRUE \ -DKDIR=/usr/src/linux-headers-`uname -r` \ -DCMAKE_INSTALL_PREFIX=/usr \ -DLUA=TRUE \ -DLUA=5.3 \ -DCPACK_TYPE=Debian11 ..
make
cpack -G DEB
...
admin@vyos-lns-1:~$ /usr/sbin/accel-pppd -V
accel-ppp 1.12.0-194-g34de385
just to discuss the possibilities.
I see Calling-Number/Called-Numer AVPs can be taken from attr->val.octets doing something within l2tp_recv_ICRQ procedure:
if (attr->attr->id == Calling_Number) {
sess->calling_sid = attr->val.octets);
}
But the question is - how (and where) to properly describe sess->calling_sid so that we can use it in l2tp_session_start_data_channel and put into sess->ctrl.calling_station_id instead of sess->paren_conn->peer_addr.sin_addr.s_addr
Any ideas?
Attached the patch i made for the version 1.12.0-202-g28fe4de. It will use Calling Number/Called Number as RADIUS Calling-Station-Id/Called-Station-Id in case they are present in L2TP ICRQ, otherwise old beahvior is used (LAC/LNS IP addresses).