I've just set up an IPV6 tunnel for my server (running Ubuntu Karmic Koala), with GO6 and I'm trying to work out use cases for it.
I have a dynamic ip address, and some wierd proxy setup that makes automatic DDNS currently not work with most providers - I periodically end up needing to do it manually
My webserver is already running IPv6, and other than that very few people have support for it (something I need to work at fixing!), its a lot less troublesome.
While I do have other options (Google apps), I'm pondering running an e mail server, and want to know if IPv4 'fails' due to port blocks, it'll switch over to IPv6, and how an IPv6 mailserver handles sending mail to an IPv4 system?
You are asking whether IPv4 “fails over” to IPv6 when IPv4 is unavailable. Yes, it sort of does if you look at it from the wrong angle, but it is actually the other way around.
When IPv6 is enabled, it is preferred over IPv4. So in actual fact, IPv4 doesn’t “fail over” to IPv6. Rather, if IPv6 is unavailable, it “fails over” to IPv4.
Your question asks specifically about IPv6 mail servers, but this behaviour is universal. HTTP, FTP, IMAP, you name it. If a website is both IPv6– and IPv4–enabled, your browser will prefer the IPv6 version (assuming you have IPv6 connectvity). If you are sending mail to an IPv6–enabled mail server, it will go over IPv6.
(As to whether it will try again over IPv4 if your IPv6 fails I cannot answer at this stage — not tested it myself, unfortunately. If this is an issue, you could use two MX records — one that points to an IPv6–only hostname, and one to an IPv4–only hostname.)
If you IPv6–enable your mail server, but still keep IPv4 enabled (e.g. on Postfix you would set
inet_interfaces = all
, notinet_interfaces = ipv6
), then you will be able to send mail to IPv4 and IPv6 mail servers, as well as receive mail from IPv4 and IPv6 sources.This wasn’t part of your question, but does pertain to IPv6 mail servers: currently none of the major DNSBLs (e.g. Spamhaus) support IPv6. While I haven’t seen a single piece of spam originating from an IPv6 address, be aware that the only spam preventative measures you can take are keyword–based.
An application that is v4 and v6 capable that fails at v4 might try v6, but it also might not. Dual-stack applications are all over the map on this. For example, some of them try to start in v6, which is fine for you and awful for other folks. Some of them will fail over to v6 as you want, but may not do it when you want: they might do it if they don't get a v4 response "fast enough", making them very hard to debug.
Also remember that most applications are running on OSs that will always do DNS lookups in v4 because they don't have v6 DNS resolution enabled. That makes debugging even more difficult.
The theme here: you can possibly do what you want, but you are buying into some seriously difficult customer support and debugging, at least for the next few years. If you like living on the bleeding edge, party on.
(Disclaimer: I ran such a system for a while as part of the IETF's v6-only experiment, but shut it off due to the debugging issues.)
In theory, your interface will not have an IPv4 interface, so any users (that is, clients on your machine) will get "destination unreachable." However, the world makes this very hard to do sometimes.
How many of these clients behave is totally client dependent. I've had very back luck with some, and some simply will not use anything but IPv4 and fail when it is not available.
You will be able to reach some places, but not all. It's hard to live in IPv6 only without sometimes.