I have a typical router with IPv4 and NAT setup. My provider sends an IPv6 address to the router, but it does not support the IPv6 prefix delegation.

How can I get IPv6 addresses for my private network without relying to my provider that much?

With IPv4 this was easily solved using NAT, but IPv6 does not support NAT.

I found a workaround for routers supporting ebtables, but this looks like an ugly hack to me.

Bridge the two ethernet cards (internal and external) for IPv6 traffic, thus, taking an IPv6 directly from the range of the provider, and use ebtables to force IPv4 traffic to take the NAT way: http://www.linksysinfo.org/index.php?threads/customizing-tomato-with-ipv6-bridge.24238/#post-114281

After applying this workaround I still get a problem. My private network can get IPv6, but the router cannot. Also if the router does not support ebtables, this cannot be used so it is not a generic workaround at all.

Is there a recommended generic solution to this problem?

  • Did your ISP actually give you a block of addresses? Something like 2001:db8:1234::/48 or 2001:db8:5678:9a00::/56 Feb 10, 2013 at 2:53
  • No, this is the prefix delegation from what I understand but the provider does not support it yet. I asked for it and they recommended to bridge my internal/external networks to get directly IP's from their DHCP, but then I have the IPv4 NAT issue. Feb 10, 2013 at 11:55

2 Answers 2


Ask your provider to give you a /64. They can use static routing, which is easier than DHCPv6 PD for providers just getting started with IPv6. The provider will use your WAN link local address or possibly your WAN global unicast address.

An alternative is Neighbor Discovery proxy (http://forums.gentoo.org/viewtopic-t-630854-start-0.html).

  • 1
    You should complain bitterly if the ISP hasn't given you at least a /56. Feb 11, 2013 at 15:08
  • 1
    Yes, a /48 or /56 would be ideal. We still have work to do in convincing some engineers that the scarcity approach to IPv4 addresses is not applicable to IPv6. Feb 11, 2013 at 18:26
  • 1
    Quote RFC 6177 at them. If they aren't giving at least a /56 to residential customers, and /48 to business customers, they're doing it wrong. Feb 11, 2013 at 19:39
  • I see, I have to keep on nagging them until they realize that they have to do this properly if there is no alternative. Thanks for the answer and the discussion! Feb 12, 2013 at 11:28

Your ISP should really get their act together and suport prefix delegation but that is outside your control.

Also as far as I can tell while nested prefix delegation is theoretically possible there are no good implementations yet. This makes life difficult if you want to place a router behind a router for some reason.

IPv6 does not support NAT.

Many IPv6 proponents are/were vocally against NAT but there is nothing fundamentally preventing the same NAT techniques used for IPv4 from being used with IPv6.

Linux added support for IPv6 NAT in 3.9.0. http://mirrors.bieringer.de/Linux+IPv6-HOWTO/nat-netfilter6..html https://lwn.net/Articles/452293/

  • 2
    In the intervening 3 and a bit years the ISP may well have got their act together.
    – user9517
    Jul 8, 2016 at 20:02
  • They may well have done but AIUI the point of stackexchange is that questions/answers are not just for the original asker but for future readers too. IMO it is therefore important to point out outdated information even when the OP has likely moved on. Jul 8, 2016 at 20:10
  • Perhaps your first sentence threw me then.
    – user9517
    Jul 8, 2016 at 22:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.