On Fri, Sep 4, 2020, 9:27 AM Tim Tassonis via blfs-dev <
blfs-dev@lists.linuxfromscratch.org> wrote:

>
>
> On 9/4/20 8:26 AM, Bruce Dubbs via blfs-dev wrote:
> > On 9/4/20 12:36 AM, Tim Tassonis via blfs-dev wrote:
> >>
> >>
> >> On 9/4/20 2:12 AM, Ken Moffat via blfs-dev wrote:
> >>> On Fri, Sep 04, 2020 at 12:44:31AM +0200, Tim Tassonis via blfs-dev
> >>> wrote:
> >>>>
> >>>>
> >>>> On 9/3/20 10:29 PM, Pierre Labastie via blfs-dev wrote:
> >>>>> On Thu, 2020-09-03 at 21:47 +0200, Tim Tassonis via blfs-dev wrote:
> >>>>>>
> >>>>>> On 9/1/20 7:55 PM, Bruce Dubbs via blfs-dev wrote:
> >>>>>>> On 9/1/20 12:24 PM, Tim Tassonis via blfs-dev wrote:
> >>>>>>>> Hi all
> >>>>>>>>
> >>>>>>>> As one of Switzerland largest ISP's requires pppoe with vlan
> >>>>>>>> tagging
> >>>>>>>> for fiber connections, I wondered if vlan tagging could get
> >>>>>>>> supported
> >>>>>>>> in the network scripts.
> >>>>>>>>
> >>>>>>>> As I found out via https://wiki.archlinux.org/index.php/VLAN, one
> >>>>>>>> can
> >>>>>>>> create a tagged VLAN using
> >>>>>>>>
> >>>>>>>> ip link add link $REAL_IFACE name $VLAN_IFACE type vlan id
> >>>>>>>> $VLAN_ID
> >>>>>>>>
> >>>>>>>> , so I guess this could be implemented by
> >>>>>>>>
> >>>>>>>> - checking for $VLAN_IFACE and $VLAN_ID being set
> >>>>>>>> - checking for $VLAN_ID and $REAL_IFACE (in which case IFACE
> >>>>>>>> then
> >>>>>>>> holds the $VLAN_IFACE)
> >>>>>>>>
> >>>>>>>> The latter would probably be more consistent with other network
> >>>>>>>> stuff,
> >>>>>>>> where iface always holds the resulting interface, and not the
> >>>>>>>> physical
> >>>>>>>> one.
> >>>>>>>>
> >>>>>>>> I could add this to /lib/services/pppoe, if anyone else cares.
> >>>>>>>> I'm not
> >>>>>>>> sure if, apart from pppoe, anyone else is interested in vlan
> >>>>>>>> stuff.
> >>>>>>>> I'm not even sure /lib/services/pppoe is still in blfs....
> >>>>>>>>
> >>>>>>>> If yes, I could also add this to ipv4-static and dhcpcd.
> >>>>>>>
> >>>>>>> Tim,  Can you send me a patch that I can review?  I would want to
> >>>>>>> make
> >>>>>>> sure that changes will not affect users that do not need them.
> >>>>>>
> >>>>>> The patch against the pppoe service file I got is as follows:
> >>>>>>
> >>>>>>
> >>>>>> --- pppoe-service    2018-04-18 19:18:07.739547066 +0200
> >>>>>> +++ pppoe-service-vlan    2020-09-03 21:37:27.613134901 +0200
> >>>>>> @@ -46,11 +46,24 @@
> >>>>>>        exit 1
> >>>>>>     fi
> >>>>>>
> >>>>>> +if [ "x${REAL_IFACE}" != "x" ] && [ "x$x${REAL_IFACE}" != "x" ]
> >>>>>
> >>>>> I'm not sure what you want to do above: if the first test is true,
> the
> >>>>> second is true too, whatever the value of $x. Typo?
> >>>>
> >>>> Correct, "x$x${REAL_IFACE}" is a typo, it should read:
> >>>>
> >>>> if [ "x${REAL_IFACE}" != "x" ] && [ "x${REAL_IFACE}" != "x" ]
> >>>>
> >>>> Like this, it is a very portable way to check if both of those
> >>>> variables
> >>>> have any defined value. But there may be a bash shortcut, maybe:
> >>>>
> >>>
> >>> Maybe I'm missing something (very possible), but you seem to be
> >>> testing the same variable twice:
> >>>
> >>>   if [ "x${REAL_IFACE}" != "x" ] && [ "x${REAL_IFACE}" != "x" ]
> >>>
> >>> reformatted to put the two parts on separate lines:
> >>>
> >>>   if [ "x${REAL_IFACE}" != "x" ] &&
> >>>      [ "x${REAL_IFACE}" != "x" ]
> >>>
> >>>
> >>> Looking at your original posting, I think one of these should maybe
> >>> be ${IFACE} ?  It seems that if REAL_IFACE is set then an extra
> >>> module should be modprobed before pppoe is modprobed.
> >>
> >> Oh my god, typical programmer's blindness. Here's the (hopefully)
> >> fixed patch, and attached the fixed script:
> >>
> >> --- pppoe-service    2018-04-18 19:18:07.739547066 +0200
> >> +++ pppoe-service-vlan    2020-09-04 07:28:50.121311974 +0200
> >> @@ -46,11 +46,24 @@
> >>      exit 1
> >>   fi
> >>
> >> +if [ "x${REAL_IFACE}" != "x" ] && [ "x${VLAN_ID}" != "x" ]
> >> +then
> >> +   VLAN="Y"
> >> +   /sbin/modprobe 8021q
> >> +else
> >> +   VLAN="N"
> >> +fi
> >> +
> >>   case "${2}" in
> >>      up)
> >>         /sbin/modprobe pppoe
> >>         log_info_msg2 "\n"
> >>         if is_true ${MANAGE_IFACE}; then
> >> +        if [ "${VLAN}" = "Y" ]
> >> +        then
> >> +          /sbin/ip link set dev ${REAL_IFACE} up
> >> +          /sbin/ip link add link ${REAL_IFACE} name ${IFACE} type
> >> vlan id ${VLAN_ID}
> >> +        fi
> >>           log_info_msg "Bringing up the ${IFACE} interface..."
> >>           /sbin/ip link set dev ${IFACE} up
> >>           evaluate_retval
> >> @@ -68,6 +81,11 @@
> >>         if is_true ${MANAGE_IFACE}; then
> >>           log_info_msg "Bringing down the ${IFACE} interface..."
> >>           /sbin/ip link set dev ${IFACE} down
> >> +        if [ "${VLAN}" = "Y" ]
> >> +        then
> >> +          /sbin/ip link set dev ${REAL_IFACE} down
> >> +          /sbin/ip link del ${IFACE}
> >> +        fi
> >>           evaluate_retval
> >>         fi
> >>      ;;
> >
> > That looks more reasonable.  Now I'm trying to find a pppoe script or
> > service file.   We have install-service-pppoe in bootscripts/Makefile,
> > but no blfs/services/pppoe  or blfs/ppp/pppoe.   I don't have any pppoe
> > service file either.
>
>
> I just had a look, and the ppp page has been archived. I assume the
> service script would/should be installed from there, as it is only
> useful when using ppp.
>
> ppp now again seems to be actively maintained by samba.org, ppp-2.4.8 is
> from 2020-03-21, the first new release since 2014:
>
> What's new in ppp-2.4.8.
> ************************
>
> * New pppd options have been added:
>    - ifname, to set the name for the PPP interface device
>    - defaultroute-metric, to set the metric for the default route
>    - defaultroute6, to add an IPv6 default route (with nodefaultroute6
>      to prevent adding an IPv6 default route)
>    - up_sdnotify, to have pppd notify systemd when the link is up.
>
> * The rp-pppoe plugin has new options:
>    - host-uniq, to set the Host-Uniq value to send
>    - pppoe-padi-timeout, to set the timeout for discovery packets
>    - pppoe-padi-attempts, to set the number of discovery attempts.
>
> * Added the CLASS attribute in radius packets.
>
> * Sundry bug fixes.
>
> * Fixed warnings and issues found by static analysis.
>
> * Added Submitting-patches.md.
>
>
>
> I assume that ppp gets some kind of revival due to some ISP's requiring
> it for fiber connections.  Therefore I'd vote for de-archiving the
> package. It now even has systemd suppport! Not that I'd care personally,
> but probably useful for the systemd version of  the book.
>

I'd vote for this as well. With a little bit of research, I found a way for
me to setup a PPP server, and I have a couple unused systems (one of which
was just returned from my late grandpa's house). I will work on this on the
side, but I do have extra modems sitting in a box from when my family used
dialup. Two systems, one with pppd, and the other with the client on
systemd, should do the trick (from what I read). I cannot give an ETA for
completion though.

>
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to