OPNsense Forum

Archive => 20.1 Legacy Series => Topic started by: cpw on May 26, 2020, 04:26:24 PM

Title: dpinger failing to detect up connection
Post by: cpw on May 26, 2020, 04:26:24 PM
Is dpinger supposed to detect a working link, after a temporary outage?

It seems that on a pretty regular basis, dpinger detects down for a link, and continues doing so indefinitely, even if the interruption was momentary. It only recovers (and gateways associated with the dpinger process) when you restart the dpinger process manually.

Is this by design? Do I need to tell monit to kick them every 5 minutes to ensure they work somewhat reliably?
Title: Re: dpinger failing to detect up connection
Post by: cpw on June 02, 2020, 04:56:34 AM
Update, I'm hoping someone can help here.

It seems that dpinger reports
#define ENETDOWN 50 /* Network is down */
and never recovers from this state.

Specifically, dpinger is monitoring a PPPOE connection, which occasionally drops for reasons, and recycles. The dpinger process might be stuck with an old "dead" connection, which is no longer going to be valid, after the PPPOE connection resumes. Is there a way to tell dpinger to start again in this case? I have monit monitoring everything in case something crashes (dpinger sometimes crashes to the floor in these circumstances).

Where is the code for dpinger? I don't see anything specific for it in the opnsense github. Are you using https://github.com/dennypage/dpinger ?

Title: Re: dpinger failing to detect up connection
Post by: AdSchellevis on June 02, 2020, 08:47:27 AM
yes, we're using  https://github.com/dennypage/dpinger (see https://github.com/opnsense/ports/blob/master/net/dpinger/Makefile).

Unfortunately I can't really help you with your question, although it sounds a bit odd if it doesn't recover from a disconnected network, if the address is lost, usually a reconnect will automatically signal dpinger with a monitoring event. (https://github.com/opnsense/core/blob/6529ef77efaefb9723d2b20c1c8b1ba839687625/src/etc/rc.newwanip#L155)

Best regards,

Ad
Title: Re: dpinger failing to detect up connection
Post by: cpw on June 02, 2020, 03:03:16 PM
I think in the case of a pppoe disconnection event, the network interface itself goes away, which might be confusing dpinger, hence why it doesn't recover. See the github issue I opened: https://github.com/opnsense/core/issues/4149
Title: Re: dpinger failing to detect up connection
Post by: amoushou on June 03, 2020, 08:19:31 AM
Although i would really love to use this product the inability of dpinger to detect a failed connection and this is not only on pppoe, the same happens on ipsec vti interfaces lead me to return to pfsense.
My scenario has 2 wan pppoe(vdsl) connections 6 vpn ipsec(VTI) tunnels and bgp running on all ipsec connections.
I had to be on top of the box constantly to push a button and do a fake change on gateways in order dpinger to start working correctly.
I would really like to see this feature fixed and try this once again.