Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Linode offers nice big /116 (4096) IPv6 address blocks for no additional cost, in addition to the included single IPv4 and IPv6 address per VPS.

Normally, with a run-of-the-mill website not needing SSL, I can point many A records to a single IPv4 address, and configure Apache (or equivalent) to do the right thing, with the Host header getting a browser where it needs to go.

With a site needing SSL, I provision and configure a separate IPv4 address, and point the DNS appropriately, since (assuming no SNI) the web server doesn’t know what certificate to use before the SSL handshake.

All well and good.

I would like to make use of the addresses provided by Linode to make some, and eventually all of these sites IPv6-native, and I’m unsure of the best practices to use for that. Should I follow the same approach for non-SSL hosts? Should I always allocate a separate IPv6 address per host? I haven’t read anything that tells me to take either approach. Maybe there’s an RFC I missed.

However, my plain and simple (hehe) question is this: Given Linode’s only offering a single “physical” interface (eth0), and all additional IPv4/v6 addresses needing to be virtual interfaces on top of it (eth0:0, eth0:1, …), is there a point where I would be better advised to not add any more virtual addresses? Or, assuming the interface hasn’t been saturated by that point, is there no downside to having many (hundreds) of IPv6 addresses as virtual interfaces?

(I may be asking the wrong question [or possibly even multiple wrong questions] here if I’m misunderstanding Linode’s offerings and/or IPv6 in general, but hopefully that’s not the case. ;)

share|improve this question
Interface aliases are the old-style way of addressing; don't use it. –  Michael Hampton Dec 12 '12 at 19:33
@MichaelHampton I’m only currently using it because that’s what Linode advises, and it’s their platform. Is there something better that provides “similar” functionality? –  Abraham Vegh Dec 12 '12 at 19:34
yes, don't use ifconfig (last release 1999!), route or anything using the deprecated ioctl, and use ip addr, ip route or netlink-based programs instead, especially when using ipv6. with ip addr add, you can add as many IPv4 or IPv6 addresses as you want to an interface. Literally (i've seen 65536 addresses for an interface!). interfaces aliases are emulated with netlink-style addresses since a long time now. –  BatchyX Dec 12 '12 at 19:45
Are you considering ranking all these sites and will they be linked to one another? I may be jumping the gun a bit and this isn't the case but one of the factors you should consider when using blocks is the impact it can have on SEO, while its not proven nor confirmed or denied by Google many SEO experts consider blocks bad for SEO if you are planning to link from site to site, since it leaves a footprint and can be seen as a LINK Ring. Many people opt to use multiple hosts purely for SEO purposes because they are supplied with a different C Class IP, not sure how this equals in terms of IPv6 –  bybe Dec 12 '12 at 19:48
An IPv6 /64 = 18446744073709551616 IPs. An IPv6 /116 = 4096 IPs. Note: /116 is an odd size as it's not a multiple of 8; /112 is a common "end user" allotment from my very limited experience. –  Chris S Dec 12 '12 at 19:55

1 Answer 1

I would think that if you are already doing name based virtual hosting on IPv4 that you'd keep the same config for IPv6 rather than split out a config and IP for each vhost. Of course for SSL sites you'll need to allocate an IP for each which should be very simple on IPv6 as you can add as many IPs to an interface as you want, I don't think you need to create additional named interfaces.

There might be a reason to allocate IPs to each virtual host if you wanted separate packet filter rules or maybe accounting at the network layer where differentiating based on IP would be useful.

share|improve this answer
Given that IPv6 support is still uncommon, I suspect you could make the assumption that if you are going to go with one uncommon protocol (IPv6) then you could assume another uncommon protocol is also available (SNI). en.wikipedia.org/wiki/Server_Name_Indication In all likelyhood, I kinda expect SNI to take off a lot sooner then IPv6, since it is a smaller change to implement. Just update your browser for SNI, vs re-address and reconfigure everything on your network. So name-based virtual hosts may be an option. –  Zoredache Dec 12 '12 at 20:05
Those are kind of two different deployments. A client browser is only going to care about the AAAA and IPv6 address if it is already working on the client, so it'll get used as much as its deployed. SNI support is spottier and something that I wouldn't rely on as the only access mechanism. In any event this person still has IPv4 addresses for their hosts. –  mtinberg Dec 14 '12 at 21:32

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.