rabbyte
September 26, 2018, 12:42pm
1
Good morning,
I'm trying to run BMX6 on a OpenWRT image over a docker container. The installation works fine but when I try to run any BMX6 command it stpps because of something missing related with IP_MULTIPLE_TABLES in the kernel.
Is there a way to solve this? Maybe recompiling the image with a different kernel configuration?
Docker version: 18.06.1-ce, build e68fc7a
OpenWRT image: openwrt-x86-generic-rootfs latest
To be clear:
Correct?
This isn't helpful. Can you provide the version number (i.e. OpenWrt 18.06.1 r7258-5eb055306f).
rabbyte
September 26, 2018, 6:35pm
3
Yes. that's correct.
About the version number its Attitude Adjustment 12.09, r36088
Should I try with a newer one maybe?
Whoa...yes, the old version might be your issue. I wouldn't advise running such outdated software, anyways.
Try using 18.06.1.
rabbyte
September 26, 2018, 6:58pm
5
Thank you very much. I'll try so
rabbyte
September 26, 2018, 7:41pm
6
So, I've updated from 12.09 to 18.06.1 from https://downloads.openwrt.org/releases/18.06.1/targets/x86/generic/
and funnily enough I have the same, but updated, problem
ERROR is_policy_rt_supported: Disabled policy-routing for IPv6! (Kernel requires CONFIG_IPV6_MULTIPLE_TABLES,...)
The only thing I last to try is another host, which may resolve the problem
Something's wrong, then:
root@OpenWrt:~# ip -6 route add :: dev test_wireguard table 2
root@OpenWrt:~# ip -6 route show table 2
:: dev test_wireguard metric 1024 pref medium
Multiple tables ability is complied and exists in OpenWrt.
(Moving to the For Developers section.)
rabbyte
September 26, 2018, 9:34pm
8
Vhen I try the "ip -6 route add" command it tells me:
RTNETLINK answers: Operation not permitted
Please paste the full command and error.
Example:
root@OpenWrt:~# ip -6 route add :: dev eth0.2 table 2
root@OpenWrt:~# ip -6 route show table 2
:: dev eth0.2 metric 1024 pref medium
rabbyte
September 27, 2018, 10:39am
10
That's the command and error inside the operwrt docker container.
/ # ip -6 route add :: dev eth0.2 table 2
ip: can't find device 'eth0.2'
/ # ip -6 route show table 2
/ #
jow
September 27, 2018, 10:41am
11
I guess your problem is related to Docker or rather the host system kernel and not OpenWrt. IIRC with Docker you only use OpenWrt's rootfs, but not OpenWrt's kernel.
1 Like
rabbyte
September 27, 2018, 11:15am
12
Just to be sure, when I run the "opkg install bmx etc" command, at the end I get a "Fail to connect to ubus".
Does this tell you anything?
/ # opkg install bmx6 bmx6-uci-config luci-app-bmx6
Installing bmx6 (r2018020902-5) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/routing/bmx6_r2018020902-5_i386_pentium4.ipk
Installing kmod-iptunnel6 (4.14.63-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/targets/x86/generic/packages/kmod-iptunnel6_4.14.63-1_i386_pentium4.ipk
Installing kmod-ip6-tunnel (4.14.63-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/targets/x86/generic/packages/kmod-ip6-tunnel_4.14.63-1_i386_pentium4.ipk
Installing kmod-tun (4.14.63-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/targets/x86/generic/packages/kmod-tun_4.14.63-1_i386_pentium4.ipk
Installing bmx6-uci-config (r2018020902-5) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/routing/bmx6-uci-config_r2018020902-5_i386_pentium4.ipk
Installing luci-app-bmx6 (5) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/routing/luci-app-bmx6_5_i386_pentium4.ipk
Installing luci-lib-json (git-18.247.71242-9541751-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/luci/luci-lib-json_git-18.247.71242-9541751-1_all.ipk
Installing luci-lib-httpprotoutils (git-18.247.71242-9541751-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/luci/luci-lib-httpprotoutils_git-18.247.71242-9541751-1_all.ipk
Installing luci-lib-httpclient (git-18.247.71242-9541751-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/luci/luci-lib-httpclient_git-18.247.71242-9541751-1_all.ipk
Installing luci-lib-jquery-1-4 (5) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/routing/luci-lib-jquery-1-4_5_i386_pentium4.ipk
Installing luci-lib-dracula (5) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/i386_pentium4/routing/luci-lib-dracula_5_i386_pentium4.ipk
Configuring kmod-iptunnel6.
Configuring kmod-ip6-tunnel.
Configuring kmod-tun.
Configuring bmx6.
Configuring luci-lib-json.
Configuring luci-lib-httpprotoutils.
Configuring luci-lib-httpclient.
Configuring luci-lib-jquery-1-4.
Configuring luci-lib-dracula.
Configuring luci-app-bmx6.
Configuring bmx6-uci-config.
**Failed to connect to ubus**
jow
September 27, 2018, 1:04pm
13
I would really try with a proper VM using the OpenWrt kernel and the OpenWrt init system. This Docker business is more or less a glorified chroot which will basically inherit the limitations of your host system.
The ubus service is supposed to be started by procd during the system init phase, but I guess your docker container bypasses OpenWrt init.
1 Like
Just for if someone comes across with this post, I finally runned the docker container with the --privileged tag and then inside the OpenWRT container I changed the /proc/sys/net/ipv6/conf/all/forwarding from a 0 to 1.