IPv6 & Linux - HowTo - Script Files (3.17+) - current ones

Version: 3.17m from 2001-03-10


(P) & (C) 1997-2001 by Peter Bieringer <pb@bieringer.de>, see copyright notice for more details
Original site of publishing: http://www.bieringer.de/linux/IPv6/; suggestions, comments and improvements are welcome!

If you found errors, bugs or problems, please contact the author - thank you!

Contents


Version information

Additional information

Beta testers wanted

Happy testing...please send reports about problems using the debug mode of network-functions-ipv6.


Script files (index)

Information: my setup is based on a RedHat 6.2 or 7.0 system, but should be easy to install on all SystemV compatible Linux distributions.

Explanation of configuration and script files

Network configuration under Linux is splitted in several steps:
  1. Configuration of the built-in interfaces
  2. Global network configuration
  3. Starting of the daemons using the network
For IPv6 you have to implement in this steps the IPv6 configuration in the right way. Therefore I have written several configuration and script files, which do this work.
Please, DO NOT USE following shown addresses in your case without checking!

Pre-install:

  • IPv4 interface configuration should be done by the distribution and is working (not a must for an IPv6 only box)
  • Install:

    New file Description Copy into directory
     network-functions-ipv6 IPv6 Function libary file /etc/sysconfig/network-scripts/
     ifup-ipv6 IPv6 related function to bring up IPv6 /etc/sysconfig/network-scripts/
     ifdown-ipv6 IPv6 related function to bring down IPv6 /etc/sysconfig/network-scripts/
     ifup-sit IPv6 related function to bring up IPv6 tunnel /etc/sysconfig/network-scripts/
     ifdown-sit IPv6 related function to bring down IPv6 tunnel /etc/sysconfig/network-scripts/
    Diff file Description Patch for file
     network.diff Interface independed network configuration /etc/sysconfig/network
     ifup.diff Script to bring network on interface up /etc/sysconfig/network-scripts/ifup
     ifdown.diff Script to bring network on interface down /etc/sysconfig/network-scripts/ifdown
    Diff file Description Patch for file
     ifcfg-eth0.diff Configuration for interface eth0 /etc/sysconfig/network-scripts/ifcfg-eth0

     
    New file Description Copy into directory
     ifcfg-sit0 Configuration (only enabling needed) for an automatic tunnel
    nterface the use of IPv4 compatible IPv6 addresses
    (Note: such tunnel is always enabled, if a static tunnel is configured - only for clients without any other static tunnel needed)
    /etc/sysconfig/network-scripts/
     ifcfg-sit1 Configuration for a first static tunnel interface /etc/sysconfig/network-scripts/
     ifcfg-sit2 Configuration for a second static tunnel interface (if needed) /etc/sysconfig/network-scripts/
     static-routes-ipv6 Static IPv6 routes (including an interface token) /etc/sysconfig/

    Configuration:

    Basics: if a variable is shown twice (and one of the line is starting with "#") then the possible values are shown. To change the value you can comment out the uncommented (add a leading "#" at the beginning of the line) and delete the other "#" or delete one line and change the value regarding to that what you want.

    Testing:


    Migration from 3.15-3.16 to 3.17+

    Following changes should be done for migration:
     
    File Description 3.15-3.16 3.17+
    ifcfg-ethX IPv6 address must include prefix length now IPV6ADDR IPV6ADDR (prefix length included)
    ifcfg-ethX Extra variable for prefix length is now obsolete IPV6PREFIXLENGTH Prefix length now included in IPV6ADDR
    ifcfg-ethX Support for more than only 2 secondary IPv6 addresses per interface IPV6ADDR_1 
    IPV6ADDR_2
    IPV6ADDR_SECONDARIES (prefix length included) contains a list with additional IPv6 addresses
    ifcfg-sitX
    (X > 0)
    Tunnel route no longer specified here IPV6TUNNELROUTE Specified now in static-routes-ipv6
    ifcfg-sitX
    (X > 0)
    Numbered tunnel now supported not supported IPV6ADDR (prefix length included)
    ifcfg-sit0 Automatic tunneling now supported not supported (in early releases) Only enable interface (no specific data is required)


    RedHat's rawhide information

    In addition, this set should be able for easy implementation in the initscript-RPM. I'll support this with 3 files to make life easier for me maintain the set:

    How to put data given from Freenet6 into script/configuration files

    See here for more information about what Freenet6 provides you.

    Data you got from Freenet6: (here is an example shown)

    This perl script is setup with exacts values :
    Your IPv6 address : 3ffe:b00:c18:1fff:0:0:0:287
    Freenet6 IPv6 address (server side) : 3ffe:b00:c18:1fff:0:0:0:286
    Freenet6 IPv4 address (server side): 206.123.31.102
    Your IPv4 address : 62.158.197.92

    What does this data mean and where to put the values in the configuration files

    Freenet6 name Freenet6 value Explanation Which file is related Where to put this value
    Your IPv6 address :  3ffe:b00:c18:1fff:0:0:0:287 Freenet6 assign only one IPv6 address to you, not more! Because of routing issues, the prefix length has to be 0 e.g.
    ifcfg-sit2
    IPV6ADDR="3ffe:b00:c18:1fff:0:0:0:287/0"
    Freenet6 IPv6 address (server side) :  3ffe:b00:c18:1fff:0:0:0:286 They also assigned a relating IPv6 address on their tunnel server (it's now a point-to-point IPv6 link) Value is locally not needed (but for easier ping6 tests you can put it in /etc/hosts)
    Freenet6 IPv4 address (server side):  206.123.31.102 The IPv4 address of their tunnel server e.g.
    ifcfg-sit2
    IPV6TUNNELIPV4="206.123.31.102
    Your IPv4 address :  62.158.197.92 Your global IPv4 address, static or dynamically assigned interface or
    ial-up configuration
    Value must be already assigned static or dynamically, otherwise no Internet connection is possible