Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a theoretical question. Network topology is like this:

ISP <--- eth0 -> Router1 <- eth1 ----+--> VLAN1
                                     '--> VLANx

For the sake of argument, let's assume that a Router1 is a Linux 3.2.x device.

Say that I wish to receive a single /56 range from my ISP. Which pieces of information my ISP has to provide me with, so that I can:

  1. have native IPv6 connectivity on Router1
  2. advertise a /64 segment of allocated address space on each VLAN, so that clients in LAN are able to autoconfigure themselves properly?

To explain further a bit, I am asking this question so that I could learn what exactly do I have to ask my ISP to provide me with, in order to be able to reach goals 1 and 2. From my understanding, when I am given only a single IP range (/64, /56 or /48) and a gateway address inside of that range, there is no way to route part of that range to physically separate network on the other side of router.

share|improve this question
up vote 4 down vote accepted

You're not going to get a gateway address inside the allocated /56 or whatever IPv6 block that's assigned to you and routed to your premises. If you somehow do, you politely ask the ISP to put someone on the phone who knows what they're doing. Or perhaps less than politely.

Usually, you don't have to worry about the upstream IPv6 address at all, as it will be autoconfigured as soon as you plug in your router. Most ISPs seem to be doing this with DHCPv6 (with prefix delegation), though it could also be done with straight up SLAAC if you have a statically assigned prefix.

Once the /56 comes into your network, you can subnet it however you like.

An example, with one possible (only partially fleshed out, and probably not very useful as-is) network design appears below. In any case, the IPv6 address of your upstream connection to your ISP is provided by the ISP and is outside your assigned prefix. You generally only need to worry about the inside interfaces. This example supposes you have an edge router with an integrated 4-port switch, such as many small business or SOHO routers.

IPv6 Address: (static, DHCPv6)  IPv6 address: (SLAAC)
2001:db8:3481:2000::2/64        2001:db8:3481:2000::021d:e1ff:fe1a:630
Gateway: (static, DHCPv6)       Gateway: (SLAAC)
2001:db8:3481:2000::1           fe80::0208:30ff:fe9d:aa61%ether1

ISP <-----+
|    Edge Router    |
|-------------------|  Your Prefix:    __
|        \ /        |  2001:db8:3481:a700::/56
|         X         |  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|        / \        |  Switch Ports example:
| VLAN trunk/switch |  1: VLAN 1-64    2001:db8:3481:a700::/58
+---------+---------+  2: VLAN 65-128  2001:db8:3481:a740::/58
          |ether2      3: VLAN 129-192 2001:db8:3481:a780::/58
          +----> Core  4: VLAN 193-256 2001:db8:3481:a7c0::/58

Downstream in your core, you can further subnet these at core routers (or even layer 3 switches, more SOHO routers, etc.). I've also assumed every /64 will be on its own VLAN, though whether you do that is another detail you'll have to work out on your own.

You can also use DHCPv6 with prefix delegation to actually handle the addressing, which is probably easiest. Or you can go with SLAAC, which requires a bit more setup, or even assign manually, which I wouldn't generally recommend simply because it would be too labor intensive.

share|improve this answer
That's just the answer I was looking for. Thank you very much! – mr.b Jan 28 '14 at 10:43

The ISP only has to provide you with your public IPv6 IP address and the gateway's IPv6 address.

After that you set up the default route on your router.

Give IPv6 IP to your router from each subnet you want to route. Assign it to its VLAN interface.

You can use RADVD to advertise the /64s, that will set up your subnets.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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