All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: David Ahern <dsahern@kernel.org>,
	linux-wireless <linux-wireless@vger.kernel.org>
Cc: Ido Schimmel <idosch@nvidia.com>
Subject: Re: VRF and UDP broadcast frames
Date: Mon, 25 Aug 2025 08:20:34 -0700	[thread overview]
Message-ID: <e311453b-ddc5-438a-8d4a-da33040feb17@candelatech.com> (raw)
In-Reply-To: <511a143b-183d-40aa-926c-25931e03b2f4@kernel.org>

On 8/25/25 07:16, David Ahern wrote:
> [ cc'ed Ido ]
> 
> On 8/22/25 1:16 PM, Ben Greear wrote:
>> Hello,
>>
>> Assume I have a network interface assigned to a VRF (wifi AP interface
>> is what I'm testing now).
>> I would like to have it be able to send and receive UDP broadcast
>> frames.  I am binding the socket
>> to the AP netdev with SO_BINDTODEVICE.  From what I can tell, the socket
>> at least cannot receive
>> UDP broadcasts sent to it.  I do see the broadcast arriving on the AP
>> interface if I run tshark.
>>
>> Is there any particular issue with UDP broadcast sockets in VRF?  Do I
>> have to instead
>> bind to the vrf netdev instead of the ap netdev?
> 
> I am not aware of any issues with VRF and broadcast, but the fcnal-test
> suite (covers permutations across the uapi) is lacking broadcast tests.
> 
> As I recall you tend to run relatively new kernels, so either device
> should work.
> 
> I use the fib:* tracepoints as a start point for debugging cases like this.

I think I just had general mis-understanding about how udp bcast worked.
It seems that if you bind the socket to a specific IP on the interface,
it will not receive bcast frames, even if you set the broadcast flag on
the socket.  It will send bcast frames fine when bound like this.

But, if you bind your socket to 255.255.255.255, then it will receive
packets sent to 255.255.255.255 (but not packets sent to 192.168.1.255, for instance).

I was expecting it to be a bit more lenient about how it receives udp
bcast frames.

While poking at this, I found the 'socat' tool, which seems good for testing
this.

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


      reply	other threads:[~2025-08-25 15:20 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-22 19:16 VRF and UDP broadcast frames Ben Greear
2025-08-25 14:16 ` David Ahern
2025-08-25 15:20   ` Ben Greear [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e311453b-ddc5-438a-8d4a-da33040feb17@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=dsahern@kernel.org \
    --cc=idosch@nvidia.com \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.