Search Linux Wireless

Re: VRF and UDP broadcast frames

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux