Do I need Linode's IPv6 nameservers in /etc/resolv.conf?
97.107.133.4
207.192.69.4
207.192.69.5
2600:3c03::2
2600:3c03::3
However, I only see the IPv4 addresses above in /etc/resolv.conf and no mention of the IPv6 ones. The Linode documentation doesn't seem to mention this at all, either. IPv6 seems to be set up though and I can ping ipv6.google.com just fine.
3 Replies
The reason the IPv6 resolvers don't appear there is because DHCPv4 is used to populate /etc/resolv.conf automatically, and it doesn't know about the IPv6 resolvers. You are more than welcome to disable DHCP and use a static network configuration, which will let you do whatever you want with /etc/resolv.conf.
(*) For pedants: We'll assume all the DNS servers involved neglect the source IP address of the query when deciding which records to return. That's true in this case.
@hoopycat:
You don't need them as a necessary condition of using IPv6. IPv6 is just a transport layer for DNS, and whether or not you use IPv6 to query DNS will not impact the results of the query(*).
The reason the IPv6 resolvers don't appear there is because DHCPv4 is used to populate /etc/resolv.conf automatically, and it doesn't know about the IPv6 resolvers. You are more than welcome to disable DHCP and use a static network configuration, which will let you do whatever you want with /etc/resolv.conf.
(*) For pedants: We'll assume all the DNS servers involved neglect the source IP address of the query when deciding which records to return. That's true in this case.
Thanks for the help! I'm using static networking actually. While we're on the subject, can you tell me if my /etc/network/interfaces file looks correct? I'm running Debian 6. I added in IPv6 support, but I'm not sure if I did it correctly.
# localhost
auto lo
iface lo inet loopback
# eth0 interface
auto eth0 eth0:0
# public
iface eth0 inet static
address [Linode IPv4 IP]
netmask 255.255.255.0
gateway [Linode IPv4 Gateway IP]
# private
iface eth0:0 inet static
address [Linode IPv4 Private IP]
netmask 255.255.128.0
# IPv6
iface eth0 inet6 static
pre-up modprobe ipv6
address [Linode IPv6 IP]
up echo 0 > /proc/sys/net/ipv6/conf/all/autoconf
netmask 64
gateway fe80::1
After restarting, I noticed /proc/sys/net/ipv6/conf/all/autoconf was still set to 1 instead of 0. ping6 fe80::1
also doesn't seem to work? But I'm able to ping6 ipv6.google.com
just fine. Here's the output of ip -6 address show eth0
:
3: eth0: <broadcast,multicast,up,lower_up> mtu 1500 qlen 1000
inet6 [Linode IPv6 IP]/64 scope global dynamic
valid_lft 43199sec preferred_lft 43199sec
inet6 [Linode IPv6 Link-Local IP]/64 scope link
valid_lft forever preferred_lft forever</broadcast,multicast,up,lower_up>
auto eth0
iface eth0 inet static
address 97.107.134.213
netmask 255.255.255.0
gateway 97.107.134.1
up /sbin/ip addr add 2600:3c03::f03c:91ff:fe96:1dc9 dev eth0 # main
up /sbin/ip -6 route add default via fe80::1 dev eth0
up /sbin/ip addr add 2600:3c03::13:3025/64 dev eth0 preferred_lft 0 # mail.sodtech.net
up /sbin/ip addr add 2600:3c03::13:3123/64 dev eth0 preferred_lft 0 # ntp.sodtech.net
up /sbin/ip addr add 2600:3c03::13:3142/64 dev eth0 preferred_lft 0 # xn--1xa.hoopycat.com
up /sbin/ip addr add 2600:3c03::13:3700/64 dev eth0 preferred_lft 0 # mo.lestor.net
# ....
I don't turn off autoconf or do anything particularly unusual. If it works, it works. -rt