#21947: TL-MR3020: Iproute2 ("ip") is broken in Chaos Calmer. "ip ru"+"ip ro"
result in failed connection.
------------------------------------------+--------------------------------
Reporter: anonymous | Owner: developers
Type: defect | Status: new
Priority: normal | Milestone:
Component: packages | Version: Chaos Calmer 15.05
Keywords: ar71xx tl-mr3020 ip iproute2 |
------------------------------------------+--------------------------------
I was using the Barrier Breaker on my TL-MR3020 to make a network
environment that suits my needs, including various routes between various
interfaces. But when I tried to switch to Chaos Calmer by installing the
same packages to the same device and copying the same configs - everything
turned out bad. It took some time to find out what exactly was a problem.
Here's a simple configuration to explain and reproduce it.
............................╔═════════════════════════════════════╗
[10.10.1.0/24]-------> eth0[10.10.1.1] lan -> 3g1 (default route) ║
3g_DONGLE1 ------> { }
............................║..........[TL-MR3020]................║
.................. { Internet }
[10.10.10.0/24]------>wlan0[10.10.10.1] wlan -> 3g2 (ip table 10) ║
3g_DONGLE2 ------> { }
............................╚═════════════════════════════════════╝
The connection from wlan to 3g1 is forbidden (it isn't set as a
forwarding rule in the config/firewall, and all the default forward
options are set to 'REJECT'). The firewall forwarding rules are set from
'lan' to '3g1' and from 'wlan' to '3g2'. In BB,to add an alternative route
I could simply use "ip" utility (formerly "iproute2") with just 2
commands:
ip rule add from 10.10.10.0/24 table 10 ; ip route add default table 10
dev 3g_DONGLE2
(usually wrapped in a hotplug script or something).
None of these 2 commands should affect any connection between the
wireless client and the router itself.
But they do.
Now in CC, when I execute them, the connection from a wireless client to
the router breaks up ("ping 10.10.10.1" results in "Host Unreachable", DNS
resolving and such things fail too), but the forwarding to the Internet
starts and keeps working for a while. But when the wireless link
disconnects for any reason, the wifi client can never connect to the
router or to the Internet via the router if it brings up the link any time
after.
To restore the Internet connection, I now must delete and re-add that
alternative default route everytime the wifi connection breaks. That's
quite inconvenient. And it's not how the "ip" utilities are supposed to
work.
P.S. Sorry for not posting dmesg&logread outputs here. But they're
useless for this issue. Ip doesn't report a thing there, as well as the
kernel routing modules.
--
Ticket URL: <https://dev.openwrt.org/ticket/21947>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets