Safari on IPv6 ?

Mark Smith nanog at
Mon Feb 1 13:45:16 CET 2010

On Mon, 1 Feb 2010 11:21:53 +0100
Marco Hogewoning <marcoh at> wrote:

> Morning Folks,
> This should be easy, however I can't seem to find the answer online as most articles are about turning off IPv6 instead of one. I noticed Apple's Safari 4.04 defaults to IPv4 instead of IPv6 when both A and AAAA are present. Now you can discuss wether this is a safe default or not, I would really like to know where the little button is to switch this behavior to AAAA first, which I recall used to be the case on earlier editions.

Are you using a 6to4/6in4 etc. tunnel?

It might be that they've implemented RFC3484, "Default Address
Selection for Internet Protocol version 6 (IPv6)", which by default
prefers native IPv4 over tunnelled IPv6. Broadly that makes sense, as
native connectivity is more likely to perform better and be more
reliable, however, when you want to use IPv6 when ever
it is available, regardless of native IPv4 status, you need to change
source and destination preferences.

One way to test if this is happening is if you're able to successfully
go to an IPv6 only website e.g., but connect via native
IPv4 on websites providing both A and AAAAs, like That
was my symptoms with Firefox.

I don't know how to change OSX, but under Linux you can change the
behaviour by creating a file called /etc/gai.conf, with contents
similar to the following (MRS lines are my additions from the
default, as shown in This fixed
Firefox for me.

# Used for selecting source addresses
# label <prefix> <label>
label  ::1/128       0
label  ::/0          1
label  2002::/16     2

label  2000::/3      2 # MRS

label ::/96          3
label ::ffff:0:0/96  4

label fc00::/7       5 # ULA - MRS

# Used for sorting destination addresses
# precedence <prefix> <precedence>
precendence  ::1/128       50
precendence  ::/0          40

precendence  fc00::/7      35 # ULA - MRS

precendence  2000::/3      30 # MRS

precendence  2002::/16     30
precendence ::/96          20
precendence ::ffff:0:0/96  10

I'm not quite sure I completely understand how these policy tables
work, however I'm now using IPv6 over my 6to4 tunnel when ever a
website announces both AAAAs and As, so I must have got things mostly


More information about the ipv6-ops mailing list