The Technology Magazine.

Full width home advertisement



Post Page Advertisement [Top]

how to set up ipv6 in linux server

On Red Hat / CentOS / Fedora RHEL:

Red Hat / CentOS / Fedora RHEL support IPv6 out of box. All you have to do is update two files and turn on networking.

/etc/sysconfig/network : Turn on networking in this file.
# vi /etc/sysconfig/network
Append following line:

Open /etc/sysconfig/network-scripts/ifcfg-eth0 (1st network config file)
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
 Append following config directives for IPv6:
Here is my sample file with mix of IPv4 and IPv6 assigned to eth0:
  • NETWORKING_IPV6=yes|no – Enable or disable global IPv6 initialization.
  • IPV6INIT=yes – Enable or disable IPv6 configuration for all interfaces.
  • IPV6ADDR=2607:f0d0:1002:0011:0000:0000:0000:0002 – Specify a primary static IPv6 address here.
  • IPV6_DEFAULTGW=2607:f0d0:1002:0011:0000:0000:0000:0001 – Add a default route through specified gateway.
Save and close the file. Restart networking:
# service network restart
Verify your configuration by pinging ipv6 enabled site such as
$ ping6
Sample output:
PING 56 data bytes
64 bytes from 2001:4860:b002::68: icmp_seq=1 ttl=59 time=94.2 ms
64 bytes from 2001:4860:b002::68: icmp_seq=2 ttl=59 time=96.0 ms
64 bytes from 2001:4860:b002::68: icmp_seq=3 ttl=59 time=94.2 ms
64 bytes from 2001:4860:b002::68: icmp_seq=4 ttl=59 time=95.2 ms
64 bytes from 2001:4860:b002::68: icmp_seq=5 ttl=59 time=94.8 ms
64 bytes from 2001:4860:b002::68: icmp_seq=6 ttl=59 time=95.1 ms
64 bytes from 2001:4860:b002::68: icmp_seq=7 ttl=59 time=93.3 ms
64 bytes from 2001:4860:b002::68: icmp_seq=8 ttl=59 time=92.8 ms
--- ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7010ms
rtt min/avg/max/mdev = 93.268/94.376/95.268/0.799 ms
Traces path to a network host, enter:
$ traceroute6
Print default IPv6 routing table, enter:
$ route -n -A inet6
Sample output:
Kernel IPv6 routing table
Destination                                 Next Hop                                Flags Metric Ref    Use Iface
::1/128                                     ::                                      U     0      42531       1 lo
::                          ::                                      U     0      0        1 lo
::                             ::                                      U     0      0        1 lo
::/96                                       ::                                      U     256    0        0 sit0
2001:470:1f04:55a::2/128                    ::                                      U     0      15201       1 lo
2001:470:1f04:55a::/64                      ::                                      U     256    0        0 sit1
fe80::4833:22f4/128                         ::                                      U     0      0        1 lo
fe80::212:3fff:fe75:fa0d/128                ::                                      U     0      0        1 lo
fe80::/64                                   ::                                      U     256    0        0 eth0
fe80::/64                                   ::                                      U     256    0        0 sit1
ff00::/8                                    ::                                      U     256    0        0 eth0
ff00::/8                                    ::                                      U     256    0        0 sit1
::/0                                        ::                                      U     1      0        0 sit1
Once IPv6 configured properly, you need to setup IPv6 firewall using ip6tables command under Linux.

There are different ways to configure an IPv6 address on an interface. You can use use "ifconfig" or "ip".

Automatic IPv6 Address Configuration
In case, a Router Advertisement is received by a client, and IPv6 autoconfiguration is enabled (default on non-router), the client configures itself an IPv6 address according to the prefix contained in the advertisement

Displaying existing IPv6 addresses

First you should check, whether and which IPv6 addresses are already configured (perhaps auto-magically during stateless auto-configuration).
Just note that addresses beginning with “fec0” are deprecated, but shown here for completness!

Using "ip"


# /sbin/ip -6 addr show dev <interface>
Example for a static configured host:

# /sbin/ip -6 addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc pfifo_ fast qlen 100
inet6 fe80::210:a4ff:fee3:9566/10 scope link
inet6 2001:0db8:0:f101::1/64 scope global
inet6 fec0:0:0:f101::1/64 scope site 
Example for a host which is auto-configured
Here you see some auto-magically configured IPv6 addresses and their lifetime.

# /sbin/ip -6 addr show dev eth0 
3: eth0: <BROADCAST,MULTICAST,PROMISC,UP&gt; mtu 1500 qdisc pfifo_fast qlen
¬ 100 
inet6 2002:d950:f5f8:f101:2e0:18ff:fe90:9205/64 scope global dynamic 
valid_lft 16sec preferred_lft 6sec 
inet6 3ffe:400:100:f101:2e0:18ff:fe90:9205/64 scope global dynamic 
valid_lft 2591997sec preferred_lft 604797sec inet6 fe80::2e0:18ff:fe90:9205/10
¬ scope link

6.1.2. Using "ifconfig"


# /sbin/ifconfig <interface>
Example (output filtered with grep to display only IPv6 addresses). Here you see different IPv6 addresses with different scopes.

# /sbin/ifconfig eth0 |grep "inet6 addr:"
inet6 addr: fe80::210:a4ff:fee3:9566/10 Scope:Link
inet6 addr: 2001:0db8:0:f101::1/64 Scope:Global
inet6 addr: fec0:0:0:f101::1/64 Scope:Site

No comments:

Post a Comment

Dear visitor,
Please do not post spam. All comments will be moderated before approval.

Bottom Ad [Post Page]

| Designed by