0

I'm trying to enable ipv6 on my webserver.

The server runs FreeBSD 10 and I'd like to enable ipv6 access to my websites. That's the long term goal. The goal here would be at least to have a server that responds to ping6.

From my laptop, I can do

$ ping6 ipv6.google.com

and that works, I get 4 packets transmitted, 4 packets received, 0% packet loss

However when I try to ping6 my own server that doesn't work.

$ ping6 test6.mydomain.com

PING test6.mydomain.com(2001:xxxx:x:xxxx::1) 56 data bytes

forever and then

6 packets transmitted, 0 received, 100% packet loss, time 4999ms

100% packet loss

You can see the hostname was correctly resolved (I had set a AAAA entry for this domain and ping6 resolved the hostname into the correct ipv6 address). However, the server doesn't respond to ping6.

I don't have any firewall rules on this server (it's a test server).

Here are some infos about the server:

# ifconfig

em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO>
    ether 00:xx:xx:xx:xx:xx
    inet xx.xxx.xxx.xxx netmask 0xffffff00 broadcast xx.xxx.xxx.xxx 
    inet6 fe80::xxx:xxxx:xxxx:xxxx%em0 prefixlen 64 scopeid 0x1 
    inet6 2001:xxxx:x:xxxx::x prefixlen 128 
    nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
    media: Ethernet autoselect (100baseTX <full-duplex>)
    status: active

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
    options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
    inet6 ::1 prefixlen 128 
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 
    inet 127.0.0.1 netmask 0xff000000 
    nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>

The inet6 address 2001:xxxx:x:xxxx::x prefixlen 128 matches the DNS AAAA entry.

Here's my rc.conf

sshd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
local_unbound_enable=yes
ifconfig_em0="inet xx.xxx.xxx.xxx netmask 255.255.255.0 broadcast xx.xxx.xxx.xxx"
defaultrouter="xx.xxx.xxx.xxx"

# IPv6 configuration
ipv6_activate_all_interfaces="YES"
ifconfig_em0_ipv6="inet6 2001:xxxx:x:xxxx::1 prefixlen 128"
ipv6_static_routes="ovhgw"
ipv6_route_ovhgw="2001:xxxx:x:26ff:ff:ff:ff:ff -prefixlen 128 -interface em0"
ipv6_defaultrouter="2001:xxxx:x:xxff:ff:ff:ff:ff"
hostname="myhostname.com"

sysctl.conf

net.link.ether.inet.log_arp_movements=0
net.inet6.ip6.accept_rtadv=1
net.inet6.ip6.auto_linklocal=0

I rebooted the server after modifying the conf files.

Any idea what's missing ? Thanks for your help.

  • 3
    Hi, you seem to have obfuscated some possibly important things. We recommend that you do not obfuscate any information unless absolutely necessary. – Michael Hampton Nov 7 '15 at 23:16
  • 1
    Can you ping6 out from your server? Is there any evidence that ipv6 is correctly set up on this system at all (note that the ability to resolve AAAA records is no evidence of this whatsoever)? The unredacted output of ifconfig -a and netstat -rn -A inet6 on the server would be useful, too. – MadHatter Nov 8 '15 at 7:41
  • Also, can you ping6 it using the public IP6 address (2001:xxxx:x:xxxx::x) from another computer on the same subnet? What about from the server itself (again, using the public IP6 address)? It might also be informative to run sudo tcpdump -iem0 ip6 and icmp6 on the server while attempting to ping it, to see if the pings are getting there and whether replies are being sent. – Gordon Davisson Nov 8 '15 at 8:01
  • 3
    Are you sure that your prefix length is 128? It's usually 64. – Sander Steffann Nov 8 '15 at 9:27

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.