1

I have multiple raspberry pi 3 model B boards with an external wifi adapter attached to them. My purpose is:

  1. Create a mesh network of RSP devices.
  2. Each RSP board should have their own AP and clients (mobile/laptops) can be connected to it.
  3. Clients of these AP can be moving around different RSP device range and still should be able to talk to each other no matter which AP they are connected to (like they are connected to a single network)

To fix #1: I used batman-adv on the internal wifi interface (wlan0) of RSP3 and now all the devices can ping each other through their virtual bat0 interfaces.

For #2: I used the external wifi adapter(wlan1) and with the help of hostapd and dnsmasq, I can run the AP (same ssid and channel on all AP) on each of the RSP board. I have also connected few mobile devices in different APs now.

My main blocking issue is objective #3:

To solve this, I tried to create a bridge between wlan0 and wlan1 interfaces with bridge-utils tool. But in RSP, both the interfaces do not support WDS module. So till now I am unable to make a single network for all the clients. I also tried to use IP forwarding between wlan0 and wlan1 but I cannot ping the connected clients from other RSP devices.

Is there any other approach (other than WDS) to create a single network for all the connected clients?

Mahesh Jena
  • 11
  • 1
  • 3
  • Mashesh, as is this question is off topic since it really isn't specific to the RPi in any way. You'll probably get much better info from one of the StackExhange sites more related to networking. – Jacobm001 Aug 15 '17 at 21:16
  • 1
    Hi Jacobm001, thanks for the direction. The reason why I put in this site is, I am using raspberry pi right now and bridging is not supported in raspberry pi wireless interface. I wanted to know if anyone has succeed in creating bridge in raspberry pi with any work around. – Mahesh Jena Aug 16 '17 at 03:42

1 Answers1

2

There are a couple of things that need tweaking to get this to work.

  • First, you shouldn't have every RPI's wlan1 AP be on the same channel because it will cause significant interference between them.

  • You also shouldn't need to use WDS. See this explanation for more information about this. Just be sure that each AP has the same SSID, WiFi security type, and the same password.

  • You have the right idea in that you need to create a bridge between wlan0 and wlan1 on every RPI. I'm not familiar with bridge-utils, but it would probably be better to just follow the instructions on making a bridge in the batman-adv documentation here.

Another thing to note is that you probably don't need to be running dnsmasq for DHCP services. Your clients could just use their automatically assigned link local IPv6 addresses to communicate with each other over this wireless LAN.

EDIT: My mistake. As pointed out by Dmitry Grigoryev, it sounds like making a true bridge using wlan on RPI isn't supported. It looks like there's a potential workaround using NAT here. It also may be possible if you connect two external WiFi adapters that support bridge connections.

davekats
  • 21
  • 3
  • 1
    Unless something happened since [this](https://raspberrypi.stackexchange.com/questions/51057/raspberry-pi-3-model-b-wireless-bridge-to-ethernet) was written, trying to make a bridge using wlan will result in "can't add wlan0 to bridge br0: Operation not supported" – Dmitry Grigoryev Aug 11 '17 at 10:48
  • Dmitry, you are right, same issue still coming in latest rsp 3 wlan interfaces. I thought may be there are some work around by now for this issue. – Mahesh Jena Aug 16 '17 at 03:48