IncludeOS icon indicating copy to clipboard operation
IncludeOS copied to clipboard

install.sh fails if IPv6 is disabled

Open whocarez1 opened this issue 6 years ago • 4 comments

This is a potential issue, currently in the dev branch: https://github.com/hioa-cs/IncludeOS/commit/65e30f5247e80ff4fe993078bead97b0f43ec55a#diff-1a047a09fc8a35724214c66a3f3e8af4R90

If IPv6 is disabled on the system, then create_bridge.sh fails when trying to assign an IPv6 configuration to the bridge. This makes the rest of install.sh fail and the chainloader is not built.

I did some quick testing, and one small workaround is something like this:

# check if ipv6 is not disabled
ipv6_disabled=$(sysctl -n net.ipv6.conf.$BRIDGE.disable_ipv6)
if [ $ipv6_disabled -eq 0 ]; then
     sudo ifconfig $BRIDGE inet6 add $GATEWAY6/$NETMASK6
else
   echo "    IPv6 is disabled for $BRIDGE."
fi

Sure, right now one can skip the bridge setup with the -n option, but another possibility could be another option to just skip setting up IPv6?

Anyway, you might be aware of this and IPv6-support in IncludeOS seems to be a recent addition.

whocarez1 avatar Jul 20 '18 09:07 whocarez1

@whocarez1 sorry for the late reply - we've been vacationing :-) This is a very good point and I just ran into it myself. If you could create a PR with a solution that also works on mac that would be great. I dont know if it's necessary to do this check on mac at all so it might just be necessary to do the check you're suggesting only if linux.

alfreb avatar Aug 08 '18 12:08 alfreb

@niks3089 or @AndreasAakesson might know if this will be an issue on mac - they're leading the ipv6 development.

alfreb avatar Aug 08 '18 12:08 alfreb

I haven't figured out how to check the same thing on Mac, but the command you suggest won't work on Mac. Either you can figure it out as well (or me/someone else), or you can just wrap it inside a "Linux clause" as we do have a lot of already in our scripts (create_bridge.sh as an example).

AndreasAakesson avatar Aug 08 '18 13:08 AndreasAakesson

For mac, you could try ifconfig $BRIDGE | grep inet6 I am not sure if there is any sysctl key for mac per interface. The documentation on this seems to be sparse.

niks3089 avatar Aug 08 '18 13:08 niks3089