https://github.com/looran/owrt_wififo
OpenWRT daemon for WAN multi-wifi failover
https://github.com/looran/owrt_wififo
client failover openwrt wifi wpa-supplicant
Last synced: 7 months ago
JSON representation
OpenWRT daemon for WAN multi-wifi failover
- Host: GitHub
- URL: https://github.com/looran/owrt_wififo
- Owner: looran
- License: bsd-3-clause
- Created: 2024-12-11T09:44:12.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-12-13T20:19:11.000Z (10 months ago)
- Last Synced: 2025-02-09T05:27:37.646Z (8 months ago)
- Topics: client, failover, openwrt, wifi, wpa-supplicant
- Language: Shell
- Homepage:
- Size: 4.88 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
wififo - OpenWRT daemon for WAN multi-wifi failover
Features
- user list of wifi networks ssid and keys, ordered by priority
- scans wifi APs and connect to the most prioritized
- allow specifying [SQM](https://openwrt.org/docs/guide-user/network/traffic-shaping/sqm) download/upload values per wifi
- continuously tests connectivity (ICMP)
- continuously tests if a higher-priority wifi becomes available
- no extra OpenWRT modifications needed, wififo sets current wifi network via regular `uci` commands# Install
Copy `wififo` to the target openwrt system:
```
scp wififo root@192.168.1.1:/etc/init.d/
scp wififo.conf.example root@192.168.1.1:/etc/
```Start and enable `wififo` at boot:
```
chmod +x /etc/init.d/wififo
/etc/init.d/wififo start
/etc/init.d/wififo enable
```# Configure
The list of wifi networks is provided through `/etc/wififo.conf` with this format:
```
-[ []]
```The networks must be specified in order of priority.
For example (see `wififo.conf.example`):
```
- BestSSID
ThisIsAComplexWPAKey
wlan0 wifinet1 psk2
- OtherSSID
LittleKeyKey
wlan0 wifinet1 psk2
# IgnoredNetwork
mypskmypsk
wlan0 wifinet1 psk2
```# Troubleshooting
Logs are in `/tmp/wififo.log`
Start in foreground and log to stdout:
```
/etc/init.d/wififo main
```Enable verbose logging:
```
VERBOSE=1 /etc/init.d/wififo main
```# Alternatives
- Use `wpa_supplicant`, but this requires tweaking and does not provide ping connectivity tests.
Support for User-Defined Wpa-Supplicant Config: https://forum.openwrt.org/t/support-for-user-defined-wpa-supplicant-config/2603/8