System Administration Guide, Volume 3 | ||||
---|---|---|---|---|
![]() | ![]() | Chapter 1. Managing IPv6 Concepts | ![]() | ![]() |
Tunneling interfaces have the following format:
ip.tun ppa |
Note - The Solaris software does not yet support encapsulating packets within IPv6 packets.
At system startup the tunneling module (tun) is pushed (by ifconfig) on top of IP to create a virtual interface. This is accomplished by creating the appropriate hostsname6. file.
For example, to create a tunnel to encapsulate IPv6 packets over an IPv4 network (IPv6 over IPv4), you create a file like:
/etc/hostname6.ip.tun0 |
The content of these files is passed to ifconfig(1M) after the interfaces have been plumbed and the content becomes the parameters necessary to configure a Point-to-Point tunnel.
The following listing is an example of a hostname6.ip.tun0 file:
tsrc 192.168.100.23 tdst 192.168.7.19 up addif 1234:1234::1 5678:5678::2 up |
In this example, the IPv4 source and destination addresses are used as tokens to autoconfigure source and destination IPv6 link-local addresses for the ip.tun0 interface. Two interfaces would be configured, the ip.tun0 interface mentioned, and a logical interface (ip.tun0:1) having the source and destination IPv6 addresses given by the addif command.
As mentioned previously, the contents of these configuration files are passed to ifconfig unmodified when the system is started as multiuser. The previous example is equivalent to:
ifconfig ip.tun0 inet6 plumb ifconfig ip.tun0 inet6 tsrc 192.168.100.23 tdst 192.168.7.19 up ifconfig ip.tun0 inet6 addif 1234:1234::1 5678:5678::2 up |
The output of ifconfig -a for this tunnel is:
ip.tun0: flags=2200850<UP,POINTOPOINT,RUNNING,MULTICAST,NONUD,IPv6> mtu 1480 index 6 inet tunnel src 192.168.100.23 tunnel dst 192.168.7.19 inet6 fe80::c0a8:6417/10 --> fe80::c0a8:713 ip.tun0:1: flags=2200850<UP,POINTOPOINT,RUNNING,MULTICAST,NONUD,IPv6> mtu 1480 index 5 inet6 1234:1234::1/128 --> 5678:5678::2 |
You can configure more logical interfaces by adding lines to the configuration file using the following syntax:
addif IPv6-source IPv6-destination up |
Note - If either end of the tunnel is an IPv6 router advertising one or more prefixes over the tunnel, you do not need addif commands in the tunnel configuration files, that is, just tsrc and tdst might be required because all other addresses are autoconfigured.
In some cases, specific source and destination link-local addresses need to be manually configured for a given tunnel. This is easily done by changing the first line of the configuration file to include these link-local addresses. For example:
tsrc 192.168.100.23 tdst 192.168.7.19 fe80::1/10 fe80::2 up |
Notice that the source link-local address has a prefix length of 10. In this example, the ip.tun0 interface looks like the following:
ip.tun0: flags=2200850<UP,POINTOPOINT,RUNNING,MULTICAST,NONUD,IPv6> mtu 1480 index 6 inet tunnel src 192.168.100.23 tunnel dst 192.168.7.19 inet6 fe80::1/10 --> fe80::2 |
For specific information about tun, see the tun(7M) man page. For a general description of tunneling concepts during the transition to IPv6, see [xref to non-existent element 'TRANSITION-5']. For a description of a procedure for configuring tunnels see How to Configure IPv6 Over IPv4 Tunnels in Chapter 2.
![]() | ![]() | ![]() |
Controlling Display Output | ![]() | IPv6 Extensions to Solaris Name Services |