NATing IPv4 while routing IPv6

Posted by Hugo on Server Fault See other posts from Server Fault or by Hugo
Published on 2012-06-21T01:31:19Z Indexed on 2012/06/21 3:18 UTC
Read the original article Hit count: 470

Filed under:
|
|

I've the following setup:

client(s)  <---> (eth0) router (eth1) <---> wan

I have a static IPv4 address and a /48 IPv6 address block. I need to connect all the clients to (wan). Each client will have it's own public IPv6. Meanwhile, I need to NAT those same clients over to (wan).

Everything IPv4-related and the NAT are working fine. The IPv6 communication to/from (eth0)<->(clients)> works fine, as does the IPv6 communication from (eth1)<->(wan) works fine.

To provide IPv6 to all my clients, I've thought of too choices:

  • Having the router as a gateway, which different IP on each interface. This sounds like I need to tell my ISP to route the entire block through that single IP, so it's not really an option.

  • Transparently pass IPv6 packets to/from eth0<->eth1, so all clients can communicate with the upstream gateway (I would actually have a switch here if it weren't for the need to remain IPv4 compatible).

So, since I've opted for the second choice, I'm in doubt: How can I pass all IPv6 traffic from eth0 to eth1 transparently? What I need is a level 3 bridge, but linux's bridgeutils create a level 2 bridge (which would bridge ipv4 as well, and I can't have that).

This is a DD-WRT device, but it's pretty much an embeded linux, so most suggestions that would work on linux are welcome.

Thanks.

© Server Fault or respective owner

Related posts about linux

Related posts about IPv6