On 22/11/15(Sun) 16:56, Momtchil Momtchev wrote:
> On 22/11/2015 15:52, Martin Pieuchot wrote:
> >
> >btw., what OpenBSD version is this diff for?  This is not -current.
> >>     Thanks for the quick reply. That was my impression too, but it seems
> >>that bridge_output is also used sometimes for forwarding ARP requests by a
> >>code path that I haven't found yet - it is not a direct forwarding, it is
> >>like some kind of a proxy-ARP mechanism. I have a modified bridge and for me
> >>it makes sense (it is for a box that bridges IP6 traffic and routes IP4
> >>traffic - so I am blocking IP4 only with BLOCKNONIP), I just wondered why it
> >>was not there and if I was missing something. Who does call bridge_output?
> >>Isn't output always on the underlying interface, not directly on the bridge?
> >If you want some help you need to provide the information that allows
> >us to help you.  Which version are you running?  Can you describe the
> >problem you're facing *without* any modification on such version?
> 
>     I just upgraded to 5.8 (from 4.9) and I see the bridge has changed
> somewhat. I am using the bridge to pass IPv6 only traffic, NATting and
> routing IPv4. This is not possible without modifying the bridge.

When you say "the bridge changed somewhat" are you saying that you see
a regression?  Could you share your setup that, I guess work with 4.9,
and no longer work with 5.8.

>                                                                  Since
> upgrading to 5.8 I started getting IPv4 ARP requests passing through my
> _BLOCKNONIPV6_ bridge (which is a problem since there is an equipement that
> gets confused by them on that other side). I traced those requests down to
> bridge_output, so I added that check which solved my problem. Except now I
> don't get ARPs at all on this interface, but this is fine with me, I added a
> static entry for the only router I needed.

I don't understand what you mean with "_BLOCKNONIPV6_ bridge". ifconfig(8)
clearly say:

     blocknonip interface
          Mark interface so that no non-IPv4, IPv6, ARP, or Reverse ARP
          packets are accepted from it or forwarded to it from other
          bridge member interfaces


>     My questions were, isn't the missing BLOCKNONIP check actually needed by
> everyone (not really according to Reyk Floeter) and why is bridge_output
> used at all? ARP traffic should originate in the output function of the
> underlying interface, not the bridge? But anyway, at this point it is mostly
> academic, I solved my problem, I was just trying to understand the code.

Reply via email to