I'm developing an app that should work on a private WiFi network without Internet access. It's a controller for an interactive digital sculpture. The IP address of the server it should talk to on the private network is hardwired into the app.
I found that the app is unable to talk to the server on the WiFi as long as mobile data is enabled. As soon as I turn it off, everything works as expected. I guess for some reason it still tries to contact the server on the mobile data interface.
Here's the kernel IP routing table when both the WiFi and the mobile data is connected and the app doesn't work:
10.229.237.220/30 dev rmnet_data0 proto kernel scope link src 10.229.237.221
192.168.26.0/24 dev wlan0 proto kernel scope link src 192.168.26.102
With mobile data disabled and the app working correctly:
192.168.26.0/24 dev wlan0 proto kernel scope link src 192.168.26.102
This seems all correct to me.
Are there any special settings (default gateway, nameserver, etc) I need to add to my network configuration so that the traffic from the app is routed to the WiFi interface? Any other ideas why it's not communicating with the server?