tspc: Debian / Ubuntu Linux Configure IPv6 Tunnel

last updated in Categories , , , ,

Q. How do I configure IPv6 Tunnel under Ubuntu Linux? I’d like to browse and use IPv6 utilities under Ubuntu but my ISP is not ready with IPv6 native transport. How do I browser IPv6 ready websites using IPv4?

A. You can easily set IPv6 tunnel under Debian or Ubuntu Linux using tspc (tunnel setup protocol client). tspc provides a mean to configure a tunnel obtained from a tunnel server which is compliant to the tunnel setup protocol (TSP). tspc will connect to a tunnel server and request a tunnel according to the specifications inside the configuration file. As a background process, it will then monitor the state of the tunnel. In the event of a timeout, tspc will reestablish a new tunnel. tspc allows you to connect and browse IPv6 network using IPv4.


Register Free at Freenet6

You can get free IPv6 access through Freenet6. Visit Freenet6 and register yourself to obtain username and password.

Install tspc client

Open terminal and type the following command:
$ sudo apt-get install tspc
# apt-get install tspc

Configure tspc

The default configuration file is located at /etc/tsp/tspc.conf. Open file using a text editor, enter:
# vi /etc/tsp/tspc.conf
You need to provide username, password and hostname registered at Freenet6 (see your tunnel broker registration email). For example,

  • userid – vivek
  • passwd – myPassWord
  • server – broker.freenet6.net

Search, userid, server, and passwd variable in file and set them as follows:

Save and close the file. Restart tspc service, enter
$ sudo /etc/init.d/tspc restart
Run ifconfig command to see your tunnel IPv6 address, enter:
$ /sbin/ifconfig tun
Sample output:

tun       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet6 addr: 2001:5c0:8fff:fffe::a68d/128 Scope:Global
          RX packets:9 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:656 (656.0 b)  TX bytes:240 (240.0 b)

Test IPv6 connectivity, enter:
$ ping6 ipv6.google.com
Sample output:

PING ipv6.google.com(2001:4860:0:2001::68) 56 data bytes
64 bytes from 2001:4860:0:2001::68: icmp_seq=1 ttl=55 time=501 ms
64 bytes from 2001:4860:0:2001::68: icmp_seq=2 ttl=55 time=453 ms
64 bytes from 2001:4860:0:2001::68: icmp_seq=3 ttl=55 time=437 ms
64 bytes from 2001:4860:0:2001::68: icmp_seq=4 ttl=55 time=473 ms

--- ipv6.google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
rtt min/avg/max/mdev = 437.077/466.544/501.926/24.149 ms

View Google.com IPv6 Address, enter:
$ host ipv6.google.com
Sample output:

ipv6.google.com is an alias for ipv6.l.google.com.
ipv6.l.google.com has IPv6 address 2001:4860:0:2001::68

Now you can browse any IPv6 configured website or use all IPv6 utilities such as ping6, tracerout6 without a problem.

How do I stop tunnel?

Open the terminal and type the command, enter:
$ sudo /etc/init.d/tspc stop
$ /sbin/ifconfig

How do I start tunnel?

Open the terminal and type the command, enter:
$ sudo /etc/init.d/tspc start
$ /sbin/ifconfig
$ ping6 ipv6.google.com


Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

13 comment

  1. This was one of the more interesting tech articles/howtos i’ve seen on newsforge lately. Resolving the Google address somehow felt very exciting! ;-)

    And I didn’t know it was THAT easy to setup IPv6. (- bad experiences with the weird infos on sixxs.net..)

  2. sixxs.net sucks, I applied to them 2 months ago and they said I was bot and rejected my application. Today I tried tspc and I’ve got online with Ipv6 immediately.

    Thanks for sharing info.

  3. I have been researching Ipv6 on and off for a while. This is beyond doubt the most comprehensive and easiest-to-follow how-to I have come across. Well done!

  4. IPv6 is ace. If like me you want IPv6 for all the devices in your home you will also need to run radvd on your router. Tscp will even update the radvd conf file with your IPv6 subnet (if you don’t get a static one).

  5. can’t get it to work … download, install and config works fine but on “/sbin/ifconfig tun” I get

    tun: error fetching interface information: Device not found

  6. @Matthias – I (and other people) have had the same thing. It doesn’t seem like something to worry about since it worked just fine. But I dunno, I could be wrong :-)

  7. Matthias säger:
    August 2nd, 2008 at 6:14 pm 2 aug 2008 vid 6:14

    can’t get it to work … download, install and config works fine but on “/sbin/ifconfig tun” I get kan inte fÃ¥ det att fungera … ladda ner, installera och konfigurera det fungerar bra men pÃ¥ “/ sbin / ifconfig Tun” Jag fÃ¥r ….

    Type just “ifconfig” and it will works.
    Lycka till

    Im wander how to get eggdrops to use ipv6? Someone?

  8. Ok i foud command :)
    In the eggdrops folder type
    ./configure –enable-ipv6
    sudo ./configure –enable-ipv6
    and it will reconfigure eggys

  9. hey,i have this problem…
    when i type:

    sudo /etc/init.d/tspc start

    setting up IPv6 tunnel:
    Error is 1: TSP_ERROR
    TSP session done

    what’s the problem actually?? before i had this problem, there’s 1 problem too which is..

    “there’s probably no UDP listener on anon.freenet6.net”,something like that..

  10. http://www.sixxs.net has the worst support imaginable. During my first contact for support, when I asked what they thought the problem was, their response was: PEBKAC. When I responded that they should try to communicate without being insulting, my account was disabled, and they have ignored all my requests to have it enabled again. Besides, freenet6.net is far superior in terms of documentation available, and that they provide DNS for you! I would never use http://www.sixxs.net for anything. In all of my 20 years of professional experience, I have never had any contacts with anyone so unprofessional, rude, or arrogant.

  11. agreed with others, i got all my ipv6 accounts for all and every and even chinese ipv6 backbone, except the sixxs. their doc sucks and worst? this regd process, friggin like a click here to sign up for a free IPvJAIL6 account, with one trillion genuine reasons. if i had been/is now a whistle blower? why will i use IPv6 annoying abnormal regd process. screw sixxs’s netblock, i may use sixxs for other info, but if i want a 6 net block? i will try anything except sixxs.
    (not at “all” so your friendly neighbour, pretty much hostile)

  12. I have good experiance with http://tunnelbroker.net/

    And if you want your machine (Linux) to use your machine as an router, you should add radvd (package name in Debian) on your machine running the tunnel (and set up IPv6 routing and firewall on your tunneling machine).

    Then all machine can, and will, start use IPv6 on your net. If you want your Linux machines in your net to set and use IPv6 DNS servers instead of IPv4 DNS, please add rdnssd (package name i Debian) to the clients.

  13. Im having problems with tscp, this is the third time I install it and gives me the same problem.

    Found out in this forum that I can eliminate the script. I’ve done it with good results. However this will cripples tspc.

    Tried to install the gw6c client and it seems much worse than tspc.

    Please help!

    Still, have a question? Get help on our forum!