If you’re using SLAAC to configure devices in your network, there is extra work to do to get thing running in FC20/RHEL7.
On my client machine, I have the following ipv6 configurations:
$ cat /etc/sysctl.d/90-accept_ra.conf net.ipv6.conf.default.accept_ra=1
grep ‘^IPV6′ /etc/sysconfig/network-scripts/ifcfg-<dev>
IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_PEERDNS="yes" IPV6_PEERROUTES="yes" IPV6_FAILURE_FATAL="no"
Normally this should be enough to get ipv6 working. What I noticed however is that although global ipv6 have been assigned to the client I still can not reach machines outside the network.
ping6 www.google.com connect: Network is unreachable
In FC20 and RHEL7, NetworkManager is taking control of configuring ipv6 SLAAC:
- it disable sysctl knob under /proc/sys/net/ipv6/conf/<dev>/accept_ra
$ cat /proc/sys/net/ipv6/conf/<dev>/accept_ra 0
- and by default it’s ignoring RA from routers.
To fix that do the following:
- edit /etc/NetworkManager/NetworkManager.conf and add keyfile to the list of plugins
than restart the service
# service NetworkManager restart
- nmcli con edit type eth
nmcli>goto ipv6 You may edit the following properties: method, dhcp-hostname, dns, dns-search, addresses, routes, ignore-auto-routes, ignore-auto-dns, never-default, may-fail, ip6-privacy nmcli ipv6> print ipv6.method: auto ipv6.ignore-auto-routes: no ... nmcli ipv6> set ipv6.ignore-auto-routes true nmcli ipv6> verify Verify setting 'ipv6': OK nmcli ipv6> save Saving the connection with 'autoconnect=yes'. That might result in an immediate activation of the connection. Do you still want to save? [yes] yes Connection 'ethernet' (<uuid>) successfully saved. nmcli ipv6> quit
- ping6 www.google.com
should works now!