Wifi Repeater create client mode AP with exisiting DHCP

Hi, I’ve been using the Balena WiFi Repeater instance for a few months now without experiencing any problems, and generally, I’m pretty happy with it!

Now, I’d like to access some devices connected to the AP through the main local network, but it seems to be configured as a standalone gateway / router, with its own closed NAT, where clients, connected to the AP cannot be reached from within the main network.

I understand this is a valid decision for many reasons but is there a way to have it configured to act as a logical extension for the main DCHP, adding new clients to the existing subnet, instead of creating a new network range? otherwise, just simply open up the network would also do the trick.

I just wanna be able to access my esp, which’s connected to the AP, from within my main, local network. Preferably without having to flash a new image onto the Pi…

Thanks in advance

With the WiFi Repeater project there is one main network on one interface and a WiFi access point network that wifi-repeater creates on a another interface. The wifi-repeater network is in shared mode (enabled Internet connection sharing). You have an esp device on the wifi-repeater network that you would like to be reached from the main network. The common way to solve this is through port forwarding with iptables, e.g. Port forwarding + shared connection with Ubuntu - Super User.

That said a problem is that the IP address of your esp connected to the wifi-repeater network will be unknown when the wifi-repreater container starts - it is assigned dynamically. NetworkManager does not provide any API in helping with this: like in notifying when something connects to the spawned access point.

One possible way to solve this is to implement another container in host networking mode, which will scan periodically for your esp on the AP network and when found will apply the necessary forwarding rules and possibly notify other devices on the main network. It is definitely something that can be accomplished, but unfortunately the way the NetworkManager API is structured does not allow this to be added to the wifi-repeater project itself and will need some custom coding on your side.

1 Like