Re: rtadvd on OpenBSD 5.6 with Comcast cable connection

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: rtadvd on OpenBSD 5.6 with Comcast cable connection

Florian Obser-2
(moved to tech@)

On Thu, Jan 01, 2015 at 11:51:32AM -0600, Aaron Riekenberg wrote:

> I found some other reports of the same problem with rtadvd logging
> excessive messages about router advertisements on the external
> non-advertising interface.
>
> From OpenBSD 5.2:
> http://openbsd.7691.n7.nabble.com/Excessive-logging-by-rtadvd-td225936.html
>
> From m0n0wall (aka FreeBSD), also seeing a log message every 3 seconds with
> Comcast:
> http://www.dslreports.com/forum/r28132613-Odd-log-message
>
> I updated my rtadvd.c so it calls log_debug instead of log_info.  This
> silences the logs for me and still works fine.  Any chance this could get
> applied?  Thanks.

No, we should drop the log altogether.

Note that section 6.2.7 of RFC2461 or the newer RFC 4861 have nothing
to say about router advertisments comming in on non-advertising
interfaces.

OK?

diff --git rtadvd.c rtadvd.c
index 6da308e..6dab21e 100644
--- rtadvd.c
+++ rtadvd.c
@@ -810,13 +810,9 @@ ra_input(int len, struct nd_router_advert *ra,
  /*
  * RA consistency check according to RFC-2461 6.2.7
  */
- if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == 0) {
- log_info("received RA from %s on non-advertising interface(%s)",
-    inet_ntop(AF_INET6, &from->sin6_addr, ntopbuf,
- INET6_ADDRSTRLEN),
-    if_indextoname(pi->ipi6_ifindex, ifnamebuf));
- goto done;
- }
+ if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == NULL)
+ goto done; /* not our interface */
+
  rai->rainput++; /* increment statistics */
 
  /* Cur Hop Limit value */

--
I'm not entirely sure you are real.

Reply | Threaded
Open this post in threaded view
|

Re: rtadvd on OpenBSD 5.6 with Comcast cable connection

Aaron Riekenberg
OK with me.  Thanks.

On Thu, Jan 1, 2015 at 12:15 PM, Florian Obser <[hidden email]> wrote:

> (moved to tech@)
>
> On Thu, Jan 01, 2015 at 11:51:32AM -0600, Aaron Riekenberg wrote:
> > I found some other reports of the same problem with rtadvd logging
> > excessive messages about router advertisements on the external
> > non-advertising interface.
> >
> > From OpenBSD 5.2:
> >
> http://openbsd.7691.n7.nabble.com/Excessive-logging-by-rtadvd-td225936.html
> >
> > From m0n0wall (aka FreeBSD), also seeing a log message every 3 seconds
> with
> > Comcast:
> > http://www.dslreports.com/forum/r28132613-Odd-log-message
> >
> > I updated my rtadvd.c so it calls log_debug instead of log_info.  This
> > silences the logs for me and still works fine.  Any chance this could get
> > applied?  Thanks.
>
> No, we should drop the log altogether.
>
> Note that section 6.2.7 of RFC2461 or the newer RFC 4861 have nothing
> to say about router advertisments comming in on non-advertising
> interfaces.
>
> OK?
>
> diff --git rtadvd.c rtadvd.c
> index 6da308e..6dab21e 100644
> --- rtadvd.c
> +++ rtadvd.c
> @@ -810,13 +810,9 @@ ra_input(int len, struct nd_router_advert *ra,
>         /*
>          * RA consistency check according to RFC-2461 6.2.7
>          */
> -       if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == 0) {
> -               log_info("received RA from %s on non-advertising
> interface(%s)",
> -                   inet_ntop(AF_INET6, &from->sin6_addr, ntopbuf,
> -                       INET6_ADDRSTRLEN),
> -                   if_indextoname(pi->ipi6_ifindex, ifnamebuf));
> -               goto done;
> -       }
> +       if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == NULL)
> +               goto done;      /* not our interface */
> +
>         rai->rainput++;         /* increment statistics */
>
>         /* Cur Hop Limit value */
>
> --
> I'm not entirely sure you are real.
>
Reply | Threaded
Open this post in threaded view
|

Re: rtadvd on OpenBSD 5.6 with Comcast cable connection

Alexander Bluhm
In reply to this post by Florian Obser-2
On Thu, Jan 01, 2015 at 06:15:22PM +0000, Florian Obser wrote:
> No, we should drop the log altogether.
>
> Note that section 6.2.7 of RFC2461 or the newer RFC 4861 have nothing
> to say about router advertisments comming in on non-advertising
> interfaces.

It says:
   The logging of errors SHOULD be restricted to
   conflicting information that causes hosts to switch from one value to
   another with each received advertisement.

Advertisements on another interface are not conflicting.  We should
not log them.

> OK?

OK bluhm@

>
> diff --git rtadvd.c rtadvd.c
> index 6da308e..6dab21e 100644
> --- rtadvd.c
> +++ rtadvd.c
> @@ -810,13 +810,9 @@ ra_input(int len, struct nd_router_advert *ra,
>   /*
>   * RA consistency check according to RFC-2461 6.2.7
>   */
> - if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == 0) {
> - log_info("received RA from %s on non-advertising interface(%s)",
> -    inet_ntop(AF_INET6, &from->sin6_addr, ntopbuf,
> - INET6_ADDRSTRLEN),
> -    if_indextoname(pi->ipi6_ifindex, ifnamebuf));
> - goto done;
> - }
> + if ((rai = if_indextorainfo(pi->ipi6_ifindex)) == NULL)
> + goto done; /* not our interface */
> +
>   rai->rainput++; /* increment statistics */
>  
>   /* Cur Hop Limit value */
>
> --
> I'm not entirely sure you are real.