17

I've seen a lot online for a solution to make raspberry Pi 3 into a wireless bridge. But many are old articles to suit the Pi 1 and 2.

This is the last article I have seen, and tried: http://blog.slor.net/2013/09/turning-your-raspberri-pi-into-wireless.html

I use RASPBIAN JESSIE, Kernel version: 4.4.

I want the Pi to connect to a wireless router with the built-in wireless device (wlan0) to provide access to device(s)that are connected to the built-in Ethernet connector (eth0).

I want the router (192.168.1.1) to provide IP's to devices connected to RPi3, making it possible for the PC to communicate with devices connected to RPi3.

The problem is when I try to follow the article linked above is that when I run this command:

sudo brctl addif br0 wlan0 eth0

I get this error message:

can't add wlan0 to bridge br0: Operation not supported...

enter image description here

Does anyone have any idea how to solve this?

enter image description here

13
  • 1
    Have you created br0 before that? brctl addbr br0.
    – ott--
    Jul 10, 2016 at 20:58
  • Yes I've tried that, but get still the error message: can't add wlan0 to bridge br0: Operation not supported Jul 10, 2016 at 21:07
  • 1
    Ok, learning something new every day. Bridging wireless isn't possible (yet) it seems: serverfault.com/questions/152363/bridging-wlan0-to-eth0
    – ott--
    Jul 10, 2016 at 23:08
  • 3
    @ott That post and the LKM thread it links to are 6+ years old, so anyone seriously interested in the issue may want to dig a little bit further. This answer implies it may be simpler to just forward and masquerade rather than trying to use a legit layer 2 bridge.
    – goldilocks
    Jul 11, 2016 at 11:30
  • 1
    Check out this guide. <BR/>There seems to be a solution, with help of OpenVPN.
    – iTake
    Jun 3, 2019 at 11:29

2 Answers 2

9

This is not currently possible. Wireless bridges require 802.11 frames to store 4 addresses (sender, receiver, destination and source), and standard 802.11 frames only store 3 addresses. While there are implementations of 4-address mode called WDS, they are vendor-specific and only supported on router hardware (meaning you should use hardware from the same vendor for this to work). On routers, the command to enable WDS (and allow bridging of Wlan interfaces) mode is

iw dev wlan0 set 4addr on

You can try it, but AFAIK it won't work on the RPi 3, at least not with built-in NIC. You may have some luck with USB adapters based on Atheros wireless chipsets. Until it does, you'll have to stick to NAT if you want to connect networks via RPi, as described here. You can also try Wlan kabel, but that's not real bridging either.

PS. I know the negative answer is not that useful, but we have lots of duplicate questions about bridging, and they can't be closed properly unless one of them is answered.

3

So as not to confuse readers :- Dmitry Grigoryev is correct he stated you need WDS and you do to create the infrastructure shown above.

Do not confuse Ethernet:wifi -> Wifi:Ethernet with wifi:ethernet - > ethernet:wifi

One just requires a Bridge between the access Point and Lan the other requires WDS to control the link.

As above, the article mentioned covers a wireless Access Point not Wireless Distribution System (WDS)

Not the answer you're looking for? Browse other questions tagged or ask your own question.