Hello and Merry Christmas
I have followed the instructions in the following documentation https://openwrt.org/docs/guide-user/network/wifi/relay_configuration
and I have read many post, but I can not get an IP of the main router on the devices connected to the repeater. I have installed lucy-proto-relay and relayd. I have also created the necessary "bridge", etc. Nothing works This is my configuration:
As you are finding out, relayd and its use is not straightforward, nor does it provide a Layer 2 bridge between the two network segments. It also doesn't work for IPv6.
Thanks @jeff
I do not use IPv6, and wireless chipset is not Atheros, it is Ralink RT3062F, so I can't use http://wiki.openwrt.org/doc/recipes/atheroswds .
What I can say after reading many posts, is that there are many people with the same problem, but no post gives the final solution. Frustrating. When you buy a repeater this problem never occurs, it works perfectly, it even shares IP in the same subnet, but if that same repeater it flashed with OpenWrt, it does not work properly. So the problem is configuration or relay itself.
No solution... really?
WDS/ 4addr as used by OpenWrt applies (depending on hardware/ firmware limitations and driver stability) to all devices with mainline kernel drivers based on mac80211 (not just QCA/ Atheros), which would be rt2x00/ rt2800pci in your case. While not all drivers (and their underlying firmware) are stable enough for it to work well (and the device must allow creating one AP and one STA interface at the same time), it's definately worth a try.
Remove the ipv6 related lines from the DHCP config. You want no DHCP server at all running on the LAN interface of the relay router, either ipv4 or ipv6.
Is your main router capable of WDS? Do you really need to bridge or psuedo bridge the LAN, or could you use a routed client instead? The routed client allows devices on the repeater router simple access to the Internet.
Hi @slh
The main router and the secondary router have different brand, firmware, and chipsets. Can WDS work in a scenario like this? Remember ... WDS is not a standard.
I would like to find a configuration or a procedure that will always work, as do the purchased repeaters.
TIA
WDS is an IEEE standard and is supported by Linux / OpenWrt on most chipsets especially Atheros and MediaTek.
Purchased repeaters are still facing the same fundamental limitation that a regular AP-STA connection does not transmit the MAC address of the final destination of the packet, it is assumed to be the MAC of the STA. They use something like relayd, which is not perfectly reliable.
4addr functionality is provided by the common wireless stack, mac80211, all in-kernel drivers can make use of this feature - it should work across vendors (Atheros, Marvell, MediaTek, maybe even brcmfmac), but reliability might differ (it's worth a try though).
Hi @mk24
I have removed the IPv6 DHCP server, look below config, but it does not work. I will try WDS.
Is it possible to configure WDS with Luci? or do I have to use SCP or command line?
I give up. I think that OpenWrt does not work properly as a repeater, except for rare exceptions, since there are people who say they have achieved it. I have tried a Ralink RT3062F chipset, and another Atheros AR9285 chipset, and none works as a repeater, either connecting via client or via WDS.
However, both work as a Gateway, connecting via wireless client to the main router without problems, but then I have two separate subnets. If anyone knows of a trick to make OpenWrt work as a universal repeater, please report it.
Who said "I give up"?
In the end I managed to make it work correctly only with Atheros chipsets.
I made a couple of beginner failures, the first one, that with each configuration change only did a "reboot", when the most effective result was a complete shutdown and then restart, in addition to disabling and re-enabling the net adapter. And my second failure... Windows stores a network configuration for each network you connect to and remembers that configuration and rescues it every time you connect to that network. I had more than thirty network configurations, and they made me obtain erroneous results. I have tested three different devices with different Atheros chipsets, all have worked as expected, getting an IP from the main router, and surfing the Internet. The device with Ralink RT3062F chipset also works if I assign a static IP to the PC. So, if the main router is the same for all four devices, and "RelayD" also works on all four devices, the problem is that some chipsets do not get IP from the main router in the same manner, so ... we just need to force that an IP can be obtained through the "BRIDGE" interface.
Does anyone know how?
I'm not sure where relayd comes into play. At least as I understand your progress, you've got DHCP, DNS, NAT, routing, and all that running on "Router 0". "Router 1", "Router 2", and"Router 3" are not running anything but their APs that are bridged over WDS. That should work without anything else.
There might be some wonkiness if Router 3 connects to Router 2 which connects to Router 1 which connects to Router 3, leaving Router 0 out of the loop, so to speak. If that's the case, you can use one SSID for the WDS (only) and another for the AP.
Hi @jeff
I only connect one router at a time with the main router. I wanted to know how different routers with different chipsets behaved. And I connect to the main router via client, not WDS.