IPv6 behind OpenWrt router

Email this to someoneTweet about this on TwitterShare on FacebookShare on Google+Print this page

IPv6 is gaining its popularity these days but a home router mostly acts as an IPv4 NAT gateway for LAN behind it, lacking IPv6 support. Some routers have an IPv6 passthrough feature to bypass IPv6 traffic if ISPs do provide it while in OpenWrt it will be a little complicated.

Update

  1. Newer versions of OpenWrt do have good IPv6 support that should be working even out of box.
  2. This is for native non-tunneled IPv6 usage.
  3. This method completely relies on the kernel support of the table broute in ebtables. If you insist on trying, kernel support of broute must be tested before using. Otherwise it will cause trouble that local DHCP server leaks to upstream. Thus DO NOT TRY IT unless you are clear.
  4. This method is only tested under Attitude Adjustment however according to comments here and here, it works in Chaos Calmer. In a word, you might need upgrade before using this direct bridging method.
  5. You might also try IPv6 NAT with OpenWrt router.

Make sure OpenWrt acquires IPv6 support and bridging firewall toolkit.

  1. Login to LuCI of OpenWrt via web browser
  2. Go to System >> Software
  3. Try to download and install kmod-ipv6 and ebtables (you may want to update lists first)

Assume WAN device of the router is eth1 which is easily obtained from LuCI‘s status page

  1. Go to System >> Startup
  2. Append following lines in Local Startup section (replace eth1 accordingly)

Reboot the router and everything done.

 

Jul 5, 2014 @ 00:00
Email this to someoneTweet about this on TwitterShare on FacebookShare on Google+Print this page

2 thoughts on “IPv6 behind OpenWrt router”

  1. Hi,
    I’ve configured my Netgear WNDR3700v1 with OpenWrt Chaos Calmer r43341 following your post, and IPv6 working like a charm on all LAN clients!
    My ISP release 6RD addresses through Fiber CPE, and I can configure IPv6 for one link only, but you helped me for IPv6 LAN client configuration.
    I hope there are another method with OpenWrt Native IPv6 and ODHCPD, but ebtables is a good workaround.
    Thx

    1. Hi,

      I’m glad it helps. For OpenWrt Native IPv6 support, it has already implemented RA & DHCPv6 server and relay.

      As for OpenWrt since Attitude Adjustment, broute feature is seemingly removed from kernel.

      When using this method please be careful to make sure the table broute in ebtables is available.

      If it fails, the bridge will also include IPv4 traffic and in this situation local DHCP server will leak ( not good ).

      Cheers

Leave a Reply

Your email address will not be published. Required fields are marked *

Please calculate * Time limit is exhausted. Please reload CAPTCHA.