# IPv6 /48 subnet from SixXS



## monsieurq (Jun 8, 2011)

Hello,

I have an IPv6-in-IPv4 tunnel from SixXS which is working fine for the one computer that is using it (which happens to be the computer that does packet filtering and NAT'ing). Yesterday I was granted a /48 subnet from SixXS and I'm having a hard time understanding what to do. I've read several threads on the SixXS forums and elsewhere but it seems the more I read, the more confused I get.

"Tunnel information"


```
Tunnel Name ayiya
PoP Name xxxxx01
PoP Location xxxx, xxxxxx
PoP IPv4 x.x.x.x
TIC Server tic.sixxs.net (default in AICCU)
Your Location xxxx, xxxxxx
Your IPv4 AYIYA
IPv6 Prefix 2001:1234:5678:90a::1/64
PoP IPv6 2001:1234:5678:90a::1
Your IPv6 2001:1234:5678:90a::2
State AYIYA (automatically enabled on the fly)
```

"Subnet configuration"


```
IPv6 Them 2001:1234:5678:90a::2/64 (TXXXXX)
Prefix 2001:1234:56ef::/48
State Enabled
```

My LAN looks like this:


```
[ outlet in wall ] <== [ packet filtering and NAT'ing machine (FreeBSD 8.2) ] <== [ switch ] <== [ computers and servers ]
```
Below are the relevant bits of the config files in the state they are currently (same way as they were before I got the /48 subnet, i.e. when only the router was supposed to have IPv6).

/etc/rc.conf:


```
ifconfig_stge0="inet 10.12.34.10 netmask 255.255.255.0"
gateway_enable="YES"
pf_enable="YES"
pf_rules="/etc/pf.conf"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
ftpproxy_enable="YES"
ifconfig_bge0="DHCP"
ipv6_enable="YES"
ipv6_network_interfaces="bge0 stge0 re0"
ipv6_gateway_enable="YES"
ipv6_ifconfig_bge0="2001:1234:5678:90a:4321:8765:5678:1234"
ipv6_prefix_bge0="2001:1234:5678:90a"
ipv6_ifconfig_stge0="fec0::1122:3344:5566:7788"
ipv6_prefix_stge0="fec0::"
ipv6_router_enable="YES"
ipv6_router="/usr/sbin/route6d"
rtadvd_enable="YES"
rtadvd_interfaces="stge0"
```

/usr/local/etc/aiccu.conf:


```
username MYUSERNAME
password MYPASSWORD
protocol tic
server tic.sixxs.net
ipv6_interface tun0
tunnel_id TXXXXX
verbose true
daemonize true
automatic true
```

What do I need to do in order to hand out IPv6 adresses to all the computers on my LAN? Also, I'll get rid of NAT soon - how will this affect the setup?


----------



## SirDice (Jun 8, 2011)

I don't use SixXS but my ISP has something similar. Here's my working configuration:

*rl0* is my 'outside' interface and *rl1* 'inside'.
/etc/rc.conf:

```
#IPv6
gif_interfaces="gif0"
gifconfig_gif0="82.95.254.112 194.109.5.241"
ipv6_enable="YES"
ipv6_network_interfaces="rl0 rl1 gif0"
ipv6_ifconfig_rl1="2001:888:1c5b::1 prefixlen 48"
ipv6_ifconfig_gif0="2001:888:10:c5b::2 prefixlen 64"
ipv6_defaultrouter="2001:888:10:c5b::1"
rtadvd_enable="YES"
rtadvd_interfaces="rl1"
ipv6_gateway_enable="YES"
```

194.109.5.241 is the IPv4 address of the tunnel broker at my ISP, 2001:888:10:c5b::1 and 2001:888:10:c5b::2 are the two IPv6 tunnel end-points. 2001:888:1c5b::/48 is my assigned prefix.

/etc/rtadvd.conf:

```
rl1: \
        :addrs#1:addr="2001:888:1c5b::":prefixlen#64:
```

That's pretty much all that's needed. Because of *rtadvd* clients only need to enable IPv6 and will get their address auto-assigned. Keep in mind that *rtadvd* doesn't seem to like a /48 prefix, it only seems to accept /64.


----------

