# Problems with ppp-2.4.3-r15 , baselayout-1.12.0-r1

## AxelG

Hi fellows,

it seems I am too foolish even I am dealing with Gentoo since years.

First of all, if someone can show me the nice documentation so I can RTFM would be good enough...

I've been using rp-pppoe here now almost for ever with dial on demand and active-filter. Everything was working fine so far.

The new baselayout 1.12.0-r1 forces you now to use the so called kernel-mode for ppp and requires to delete /etc/init.d/rp-pppoe. So I thought "o.k. it is time to utilize the /etc/conf.d/net complletely" (which I didn't since rp-pppoe was still starting and working perfectly through out the last few baselayouts).

My problem is the poor documentation of baselayout. It does not tell you that /etc/ppp/options might make you some trouble. It does not take any words for advanced features of ppp (like active-filter) and it doesn't tell you whether or not you have to put net.eth1 (eth0 internal interface) or ppp0 to the default runlevels or what.

I have studied http://www.gentoo.org/doc/en/home-router-howto.xml and other sources found by google but they still refer to adsl thus it is not working or at least not helping me.

Basically the "dial-on-demand" isn't working anymore. If I put net.ppp0 to default runlevel it hangs while initiating ppp0. Do I start this manually it even hangs but if I type "netstat -r" in another console or even a ping than after a while it starts up. However, after a connection gets terminated because of idle timeout it is impossible to relaunch it. 

HHHHhhhheeeeeelllllllllppppp   :Cool: 

This is the relevant section of my conf.d/net (some comments and server-related things deleted)

#-----------------------------------------------------------------------------

# PPP

# For PPP support, emerge net-dialup/ppp

# PPP is used for [...]

config_ppp0=( "ppp" )

link_ppp0="eth1"                # PPPoE requires an ethernet interface

plugins_ppp0=(

        "pppoe" # Required plugin for PPPoE

)

username_ppp0='my_user_name_blanked_here'

pppd_ppp0=(

        "require-chap"

        "noipdefault"

        "hide-password"

        "active-filter 'outbound and (udp or tcp[13] & 4 = 0 or icmp[0]=8 or icmp[0]=13 or icmp[0]=15)'"

        "active-filter 'outbound and not icmp[0] != 8 and not tcp [13] & 4 != 0'"

        "persist"

        "lock"

        "updetach"      # WARNING: If you don't specify this then we will

        "debug"         # Enables syslog debugging

        "noauth"        # Do not require the peer to authenticate itself

        "defaultroute"  # Make this PPP interface the default route

        "demand"                # Enable dial on demand

        "idle 160"              # Link goes down after 30 seconds of inactivity

        "ipcp-accept-remote"    # Accept the peers idea of remote address

        "ipcp-accept-local"     # Accept the peers idea of local address

        "holdoff 3"     # Wait 3 seconds after link dies before re-starting

        "lcp-echo-interval 15"  # Send a LCP echo every 15 seconds

        "lcp-echo-failure 3"    # Make peer dead after 3 consective

)

depend_ppp0() {

       need net.eth1

}

Fore "safety" the eth1 looks like this (if no config it tries DHCP even I don't have anything related to eth1 configured). With or without this doesn't make a big change. Remember, I can push the connection manually but auto-connection doesn_t work

config_eth1=( "null" )

Any help is highly appreciated.

THANKS

 Axel

PS: since poor connection response from my site maybe slowLast edited by AxelG on Sun Jun 04, 2006 5:58 pm; edited 1 time in total

----------

## AxelG

BTW: the ppp-options I used on top like active-filter or noipdefault or require-chap do not influence my problem.

I added them since I'm still not sure whether /etc/ppp/options still works fine. Without active-filter the connection never closes since edonkey-clients or other crap on the line makes it not realy idle.

Cheers Axel

----------

## UberLord

 *AxelG wrote:*   

> 
> 
> The new baselayout 1.12.0-r1 forces you now to use the so called kernel-mode for ppp and requires to delete /etc/init.d/rp-pppoe.

 

baselayout does not force you todo this at all.

 *Quote:*   

> My problem is the poor documentation of baselayout. It does not tell you that /etc/ppp/options might make you some trouble. It does not take any words for advanced features of ppp (like active-filter) and it doesn't tell you whether or not you have to put net.eth1 (eth0 internal interface) or ppp0 to the default runlevels or what.

 

I tried my best. Write better documentation then! Please note that while pppd is complex, we don't wish to document every facet of ppp as the ppp documentation is best for that.

 *Quote:*   

> Basically the "dial-on-demand" isn't working anymore. If I put net.ppp0 to default runlevel it hangs while initiating ppp0.

 

I have no idea howto do this - hopefully mrness our pppd maintainer can help you.

----------

## AxelG

FIrst of all sorry not deleting comments. Done now.

@UberLord: Thanks for your feedback...

 *UberLord wrote:*   

> 
> 
>  *AxelG wrote:*   
> 
> The new baselayout 1.12.0-r1 forces you now to use the so called kernel-mode for ppp and requires to delete /etc/init.d/rp-pppoe. 
> ...

 

It did actualy. It wasn't possible to update the new baselayout. I got the message that I do have to delete the /etc/init.d/rp-pppoe before. Hence I did and tried to get the kernel mode running to no avail

 *UberLord wrote:*   

> 
> 
> I tried my best. Write better documentation then! Please note that while pppd is complex, we don't wish to document every facet of ppp as the ppp documentation is best for that.

 

Sorry, I didn't want to step on your toes. However, minimum requirement is to tell the user what to do after /etc/conf.d/net has been finalized regarding ppp and whether or not /etc/options/ppp is still usefull.

 *UberLord wrote:*   

> 
> 
>  *Quote:*   Basically the "dial-on-demand" isn't working anymore. If I put net.ppp0 to default runlevel it hangs while initiating ppp0. 
> 
> I have no idea howto do this - hopefully mrness our pppd maintainer can help you.

 

I hope so too, until than I will try everything to get rp-pppoe back on duty because the kernel-mode isn't working yet for pppd yet. At least on this system

Best Regards

 Axel

----------

## UberLord

 *AxelG wrote:*   

>  *UberLord wrote:*    *AxelG wrote:*   The new baselayout 1.12.0-r1 forces you now to use the so called kernel-mode for ppp and requires to delete /etc/init.d/rp-pppoe. 
> 
> baselayout does not force you todo this at all. 
> 
> It did actualy. It wasn't possible to update the new baselayout. I got the message that I do have to delete the /etc/init.d/rp-pppoe before. Hence I did and tried to get the kernel mode running to no avail

 

OK. Have a look at the baselayout ebuild and please tell me where it tells you this as I really cannot find it.

Maybe the message came from elsewhere?

 *Quote:*   

>  *UberLord wrote:*   I tried my best. Write better documentation then! Please note that while pppd is complex, we don't wish to document every facet of ppp as the ppp documentation is best for that. 
> 
> Sorry, I didn't want to step on your toes. However, minimum requirement is to tell the user what to do after /etc/conf.d/net has been finalized regarding ppp and whether or not /etc/options/ppp is still usefull.

 

Really? Well, my minimum requirement is to tell the user enough to get them working. How's this?

/etc/conf.d/net holds the configuration for your interfaces

/etc/ppp/options hold default configuration for ppp interfaces.

Bah - the options file is as useful as you want it to be. You can either use it or use baselayout pppd_ppp0=( .. ) config instead as it does the same thing. You could even do both.

----------

## AxelG

 *UberLord wrote:*   

> 
> 
> OK. Have a look at the baselayout ebuild and please tell me where it tells you this as I really cannot find it.
> 
> Maybe the message came from elsewhere?
> ...

 

SORRY ! Did the same like you and found that incompatibility message in rp-pppoe so this was the culprit forcing me to delete that nice script which worked absolutely perfect for me.

 *UberLord wrote:*   

> 
> 
> Really? Well, my minimum requirement is to tell the user enough to get them working. How's this?
> 
> 

 

Yes, really really  :Wink: 

 *UberLord wrote:*   

> 
> 
> /etc/conf.d/net holds the configuration for your interfaces
> 
> /etc/ppp/options hold default configuration for ppp interfaces.
> ...

 

O.k. o.k I found it in a seperate indep. doc that /etc/ppp/options have to be empty or not present and as I moved mine it worked at least a little bit.

However, I still don't now what to do after /etc/conf.d/net is finished. Once I add net.ppp0 to default runlevel the maschin hangs on boot and if I don't I do have to initiate it manually and it doesn't relaunch after idle.

Regards

 Axel

----------

## UberLord

Has net.eth1 started at this point?

----------

## AxelG

 *UberLord wrote:*   

> Has net.eth1 started at this point?

 

Yes, thru default runlevel and I do have it in the depend_ppp0

 cat net | grep -i eth1 | grep -v "^#"

config_eth1=( "null" )

link_ppp0="eth1"                # PPPoE requires an ethernet interface

       need net.eth1

BTW:

In section of PPP at conf.d/net it would be nice to have a hint like:

config_eth1=( "null" )   # define the device for link_ppp0

...because mine wanted to try DHCP since it wasn't defined but DHCP is not active here hence it took a long time to start up

----------

## AxelG

Howdy.

just another update...

I downgraded from ppp-2.4.3-r15 (was in /etc/portage/package.keywords) to  ppp-2.4.2-r15. At least it is now re-firing after idle. During boot it still hangs and if I start it manually I do have to trigger the line form another console otherwise the script doesn't finish.

 *UberLord wrote:*   

> 
> 
> /etc/conf.d/net holds the configuration for your interfaces
> 
> /etc/ppp/options hold default configuration for ppp interfaces.
> ...

 

Sorry I just double checked. All the below mentioned options have been placed to /etc/ppp/options and deleted in conf.d/net but it didn't work than any longer (even pas aux | grep ppp told me the real options and the below ones haven't been listed). Thus the line didn't go on idle since the active-filter was missing. 

So at least here with the now downgraded 2.4.2 the /etc/ppp/options doesn't get used.

pppd_ppp0=(

        "require-chap"

        "noipdefault"

        "hide-password"

        "active-filter 'outbound and (udp or tcp[13] & 4 = 0 or icmp[0]=8 or icmp[0]=13 or icmp[0]=15)'"

        "active-filter 'outbound and not icmp[0] != 8 and not tcp [13] & 4 != 0'"

        "persist"

        "lock"

[...]

----------

## mrness

1) If you want dial-on-demand, you shouldn't use updetach option. Otherwise /etc/init.d/net.ppp0 start will freeze there until the link is started for the first time.

2) You really should open your eyes and read the errors/warnings when doing updates. This is the pkg_setup function of the net-dialup/rp-pppoe-3.8:

```
pkg_setup() {

        einfo "Gentoo is moving toward common configuration file for all network interfaces."

        einfo "Please use baselayout adsl module for configuring your network using rp-pppoe"

        einfo "or, better yet, use generic PPP support available in baselayout-1.12."

        if [[ -x "${ROOT}/etc/init.d/rp-pppoe" ]]; then

                echo

                eerror "The old /etc/init.d/rp-pppoe script is incompatible with ${CATEGORY}/${P} and"

                eerror "it should be removed before you could upgrade this package."

                die "Unsupported old init script detected"

        fi

}

```

Basically, it tells you that you have 2 baselayout modules for PPPoE support. One is the old and crappy adsl and the other is the new and shiny ppp.

Use what you think is best for you.  :Rolling Eyes: 

----------

## AxelG

Hi and hello,

 *mrness wrote:*   

> 1) If you want dial-on-demand, you shouldn't use updetach option. Otherwise /etc/init.d/net.ppp0 start will freeze there until the link is started for the first time.

 

Thanks! This is it!

I have to confess that accidently my first post was a little harsh in its wording, 

-sorry for that!! 

However, I still think here something could be done to the documentation. The doc for "updetach" is a "WARNING 'something does not happen if...' " 

In my opinion this is a reverse logic compared to the other options where the comment expresses what this option _will do_ rather than the opposite. To me the consequence was not clear if "... we will not wait for the actual PPP link to go up..." (just it is a clear and clean strategy to ensure that a started services actually works). I actually believe that some other users just gave up as did unless rp-pppoe tries to push me (see below). May I recomend a correction to this part of the /etc/conf.d/net:

```

"updetach"      # Checks whether the link is activated

                      # Attention: it's recommended to leave this

                      # activated unless you use "demand" below

                      # (in case of 'on demand' the service will freece here during startup 

[...]

"demand"        # Enable dial on demand. !! See "updetach" above

```

 *mrness wrote:*   

> 2) You really should open your eyes and read the errors/warnings when doing updates. This is the pkg_setup function of the net-dialup/rp-pppoe-3.8:
> 
> ```
> pkg_setup() {
> 
> ...

 

I did see that and I understood the basic message. Maybe my english has its limitations here or for some other reason I thought "o.k., ...kinda contradiction 'cause for adsl I would need the unsupported starting script. Let's go for the new stile". You will tell me now this was the wrong interpretation, o.k. this was how the 'customer' saw the situation  :Wink:   :Wink: 

Thank you all very much for your support. Finally I have a solution now (can test it earliest comming wednesday since here in my second flat (near to the job) I do have a "FritzBOX".

Very best Regards

 Axel

----------

## mrness

 *AxelG wrote:*   

> 
> 
> I did see that and I understood the basic message. Maybe my english has its limitations here or for some other reason I thought "o.k., ...kinda contradiction 'cause for adsl I would need the unsupported starting script. Let's go for the new stile". You will tell me now this was the wrong interpretation, o.k. this was how the 'customer' saw the situation  
> 
> 

 

Exactly how you connected baselayout and the old /etc/init.d/rp-pppoe? Don't you know that the only net script used by baselayout is net.lo?

FYI, /etc/init.d/rp-pppoe has been removed from portage about a year ago (as in "for a year now, no rp-pppoe version installed such script").

I would have continued to ignore the existence of that script, if it weren't the fact that it cannot work with >=rp-pppoe-3.7.

As for net.example (in)completeness, that file is what the name says, just an example. 

Someone (maybe you?) should start writing documentation for baselayout-1.12.

----------

## AxelG

 *mrness wrote:*   

> 
> 
> Exactly how you connected baselayout and the old /etc/init.d/rp-pppoe? Don't you know that the only net script used by baselayout is net.lo?
> 
> FYI, /etc/init.d/rp-pppoe has been removed from portage about a year ago (as in "for a year now, no rp-pppoe version installed such script").
> ...

 

You know, I obviously have had some misunderstandings how to utilize conf.d/net correctly. As I  I couldn't make it working -and maybe even didn't realize that it was a mal-config which hindered me using it- I relaunched the init.d/rp-pppoe which hasn't been deleted or forced to do so unless you've been below rp-pppoe-3.7.

As far I understand it today I have had a "unhealthy" mixed-mode-config in those days. Donno whether it is worth to analize it as long as the "possible miss-behaviour of an user" is of an special interesst.

Documentation work:

I would love to give something back to the open source community wich I am a big but quiet fan of. However, my job hardly allows me that and I doubt whether I do have enough understanding what is going on behind the scenes. However, you might send me a p.m. and we can have a communication about it.

Cheers

 Axel

----------

