Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

So I have an ubuntu 10.04 router that is tunneling ipv6 to hurricane electric. It has perfectly fine ipv6 connectivity. My problem is that I want to have my ubuntu 10.04 machine behind it be able to connect (at least to the router, then out it) via ipv6. How do I do this?

info:

I set up ipv6 using:

    ifconfig sit0 up
    ifconfig sit0 inet6 tunnel ::a.b.c.d
    ifconfig sit1 up
    ifconfig sit1 inet6 add 2001:xxxx:yyyy:zzzz::2/64
    route -A inet6 add ::/0 dev sit1

ifconfig on router:

  eth0      Link encap:Ethernet  HWaddr 00:02:55:f9:7a:c1  
            inet addr:192.168.1.x  Bcast:192.168.1.255  Mask:255.255.255.0
            inet6 addr: fe80::202:55ff:fef9:7ac1/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:10813 errors:0 dropped:0 overruns:0 frame:0
            TX packets:11016 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000 
            RX bytes:3081850 (3.0 MB)  TX bytes:1399231 (1.3 MB)

  eth1      Link encap:Ethernet  HWaddr 00:0a:cd:19:37:e1  
            inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
            inet6 addr: fe80::20a:cdff:fe19:37e1/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:5209 errors:0 dropped:0 overruns:0 frame:0
            TX packets:4147 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000 
            RX bytes:724340 (724.3 KB)  TX bytes:2392799 (2.3 MB)
            Interrupt:16 Base address:0x3000 

  lo        Link encap:Local Loopback  
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:16436  Metric:1
            RX packets:63 errors:0 dropped:0 overruns:0 frame:0
            TX packets:63 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0 
            RX bytes:7413 (7.4 KB)  TX bytes:7413 (7.4 KB)

  sit0      Link encap:IPv6-in-IPv4  
            inet6 addr: ::192.168.1.x/96 Scope:Compat
            inet6 addr: ::127.0.0.1/96 Scope:Unknown
            inet6 addr: ::10.0.0.1/96 Scope:Compat
            UP RUNNING NOARP  MTU:1480  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0 
            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

  sit1      Link encap:IPv6-in-IPv4  
            inet6 addr: fe80::c0a8:14b/64 Scope:Link
            inet6 addr: 2001:xxxx:yyyy:zzzz::2/64 Scope:Global
            inet6 addr: fe80::a00:1/64 Scope:Link
            UP POINTOPOINT RUNNING NOARP  MTU:1480  Metric:1
            RX packets:6034 errors:0 dropped:0 overruns:0 frame:0
            TX packets:6103 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0 
            RX bytes:500568 (500.5 KB)  TX bytes:482704 (482.7 KB)

Any help would be appreciated.

edit:

# ip -6 route show

    ::/96 via :: dev sit0  metric 256  mtu 1480 advmss 1420 hoplimit 0
    2001:xxxx:yyyy:zzzz::/64 via :: dev sit1  proto kernel  metric 256  mtu 1480 advmss 1420 hoplimit 0
    fe80::/64 dev eth0  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 0
    fe80::/64 dev eth1  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 0
    fe80::/64 via :: dev sit1  proto kernel  metric 256  mtu 1480 advmss 1420 hoplimit 0
    default dev sit1  metric 1  mtu 1480 advmss 1420 hoplimit 0

# ip -6 addr show

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
        inet6 fe80::202:55ff:fef9:7ac1/64 scope link 
           valid_lft forever preferred_lft forever
    3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
        inet6 fe80::20a:cdff:fe19:37e1/64 scope link 
           valid_lft forever preferred_lft forever
    5: sit0: <NOARP,UP,LOWER_UP> mtu 1480 
        inet6 ::10.0.0.1/96 scope global 
           valid_lft forever preferred_lft forever
        inet6 ::192.168.1.x/96 scope global 
           valid_lft forever preferred_lft forever
        inet6 ::127.0.0.1/96 scope host 
           valid_lft forever preferred_lft forever
    6: sit1: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1480 
        inet6 2001:xxxx:yyyy:zzzz::2/64 scope global 
           valid_lft forever preferred_lft forever
        inet6 fe80::a00:1/64 scope link 
           valid_lft forever preferred_lft forever
        inet6 fe80::c0a8:14b/64 scope link 
           valid_lft forever preferred_lft forever
share|improve this question
1  
please post ip -6 route show and ip -6 addr show –  Mike Pennington Jun 8 '11 at 1:50
add comment

3 Answers

The first thing you need to do is to get a routed /48 subnet from Hurricane, because what you have now is only for the system where you terminate your tunnel Then you can use one of the /64's from your /48 on your ethernet. Enable IPv6 forwarding in /etc/sysctl.conf and start radvd on the ethernet so the rest of the network knows about your router/system. Please be aware that you won't have a firewall for IPv6 yet!

share|improve this answer
    
Actually the default /64 should be enough for one LAN. The tunnel interface will use the tunnel PtP /64. –  snap Aug 7 '11 at 15:33
    
A /64 is the size you need for each link. Hurricane uses a /64 for the PtP link and they assign a /48 for further networks. You can't use the /64 of the PtP link on your LAN. –  Sander Steffann Aug 11 '11 at 7:33
2  
Yes, you are correct. But they provide a routed /64 by default, in addition to the PtP /64. The routed /64 is enough for one LAN. For several LANs you need to request the /48 and split it up to /64s. –  snap Aug 11 '11 at 14:08
add comment

You'll need to send IPv6 Router Advertisement packets for the client device to figure it out, unless it's manually configured. (is it?)

The radvd package is what you'll want to send RAs.

share|improve this answer
    
I already tried that using wiki.ubuntu.com/… but it didn't work when i set my ubuntu desktop to try to get an ipv6 address automatically. –  Jeff Jun 8 '11 at 2:07
add comment

I am not going to read the man pages to cut'n'paste the exact syntax for you, but it is the same as with IPv4 and the same on any UNIX-like operating system:

  • Enable IPv6 forwarding on the gw.
  • Enable your IPv6 uplink with he.net with your PtP /64 address on the gw.
  • Configure your LAN network interface on the gw with a static IPv6 address from your routed /64 space.
  • Configure machines in your LAN (either static route to your gw or run radvd on the gw).
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.