(no commit message)
authorelijah <elijah@web>
Mon, 26 Oct 2009 17:50:05 +0000 (10:50 -0700)
committerIkiwiki Owner <ikiwiki@leaf.dragonflybsd.org>
Mon, 26 Oct 2009 17:50:05 +0000 (10:50 -0700)
docs/handbook/handbook-network-ipv6.mdwn

index 91b39de..5bb2188 100644 (file)
@@ -1,6 +1,3 @@
-
-
-
 ## 19.16 IPv6 
 
 
@@ -147,9 +144,6 @@ By now the reader should be able to understand the following:
 
 
 
-
-    
-
     rl0: flags=8943&lt;UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST&gt; mtu 1500
 
              inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255
@@ -178,38 +172,31 @@ For further information on the structure of IPv6 addresses see [RFC3513](http://
 
 
 
-Currently there are four ways to connect to other IPv6 hosts and networks:
-
-
+Currently there are five ways to connect to other IPv6 hosts and networks:
 
 
-* Join the experimental 6bone
 
+* Join the experimental 6bone (Appears to be discontinued)
 
 * Getting an IPv6 network from your upstream provider. Talk to your Internet provider for instructions.
 
-
 * Tunnel via 6-to-4
 
-
 * Join [Sixxs](http://www.sixxs.net/), a free tunnel broker and use the [`net/aiccu`](http://pkgsrc.se/net/aiccu) package to set up your connection.
 
+* Join [gogo6](http://gogonet.gogo6.com/page/freenet6-tunnelbroker), another free tunnel broker and use the [[gw6c]] package to set up your connection.
 
 
-Here we will talk on how to connect to the 6bone since it currently seems to be the most popular way.
-
+###Connect to 6bone (discontinued)
 
 
-First take a look at the [6bone](http://www.6bone.net/) site and find a 6bone connection nearest to you. Write to the responsible person and with a little bit of luck you will be given instructions on how to set up your connection. Usually this involves setting up a GRE (gif) tunnel.
+Here we will talk on how to connect to the 6bone since it currently seems to be the most popular way.
 
 
+First take a look at the [6bone](http://www.6bone.net/) site and find a 6bone connection nearest to you. Write to the responsible person and with a little bit of luck you will be given instructions on how to set up your connection. Usually this involves setting up a GRE (gif) tunnel.
 
 Here is a typical example on setting up a [gif(4)](http://leaf.dragonflybsd.org/cgi/web-man?command#gif&section4) tunnel:
 
-
-
-    
-
     # ifconfig gif0 create
 
     # ifconfig gif0
@@ -221,37 +208,22 @@ Here is a typical example on setting up a [gif(4)](http://leaf.dragonflybsd.org/
     # ifconfig gif0 inet6 alias `***MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR***`
 
 
-
-
-
 Replace the capitalized words by the information you received from the upstream 6bone node.
 
 
-
 This establishes the tunnel. Check if the tunnel is working by [ping6(8)](http://leaf.dragonflybsd.org/cgi/web-man?command#ping6&section8) 'ing `ff02::1%gif0`. You should receive two ping replies.
 
 
-
  **Note:** In case you are intrigued by the address `ff02:1%gif0`, this is a multicast address. `%gif0` states that the multicast address at network interface `gif0` is to be used. Since we `ping` a multicast address the other endpoint of the tunnel should reply as well.
 
 
-
 By now setting up a route to your 6bone uplink should be rather straightforward:
 
 
-
-    
-
     # route add -inet6 default -interface gif0
 
     # ping6 -n `***MY_UPLINK***`
 
-
-
-
-
-    
-
     # traceroute6 www.jp.FreeBSD.org
 
     (3ffe:505:2008:1:2a0:24ff:fe57:e561) from 3ffe:8060:100::40:2, 30 hops max, 12 byte packets
@@ -269,47 +241,117 @@ By now setting up a route to your 6bone uplink should be rather straightforward:
          6  3ffe:1800:0:3:290:27ff:fe14:cdee  394.712 ms  397.19 ms  394.102 ms
 
 
+This output will differ from machine to machine. By now you should be able to reach the IPv6 site [www.kame.net](http://www.kame.net) and see the dancing tortoise -- that is if you have a IPv6 enabled browser such as [`www/mozilla`](http://pkgsrc.se/www/mozilla).
 
+### Connect to gogo6
 
+I have not been able to get NAT traversal to work with gogo6. Your machine must have a world-routable IPv4 address to connect. If you are using DSL or Cable internet, this may mean putting your DragonflyBSD machine in the DMZ.
 
-This output will differ from machine to machine. By now you should be able to reach the IPv6 site [www.kame.net](http://www.kame.net) and see the dancing tortoise -- that is if you have a IPv6 enabled browser such as [`www/mozilla`](http://pkgsrc.se/www/mozilla).
+Create an account on [gogo6](http://gogonet.gogo6.com/page/freenet6-tunnelbroker) if you want a static address or a /56 block
 
+Compile the [[gw6c]] client
 
+Edit /usr/local/gw6c/bin/gw6c.conf
 
-### 19.16.4 DNS in the IPv6 World 
+    gwc6 can be configure for anonymous or authenticated access. Authenticated access give you a DNS name, a more stable address and optionally a /56 block of addresses (that is, 256 IPV6 addresses).
+    
+    #Set userid and password if you want authenticated access
+    userid=myuserid
+    passwd=mypasswd
+    
+    #Set servername to an anonymous or authenticated server
+    server=montreal.freenet6.net
+    #server=anon-montreal.freenet6.net
+    
+    #Set auth_method to anonymous or any depending on above
+    auth_method=any
+    #auth_method=anonymous
 
+    #host_type should be router only if you want a full /56 block. We do in this case so we can give IPs to a jail, or example.
+    host_type=router
+    #host_type=host
 
+    #prefixlen is either 64 or 56. Set to 56 if you want 256 IPv6 addresses.
+    prefixlen=56
+    #prefixlen=64
 
-There are two new types of DNS records for IPv6:
+    #if_prefix should be set only if host_type=router. This interface should be connected to your LAN (or in this case to the only interface)
+    if_prefix=re0
 
+    #if_tunnel_v6v4 should be set to gif0 always
+    if_tunnel_v6v4=gif0
 
+    #template. We compiled gw6c as if we were on a netbsd system
+    template=netbsd
 
 
-* AAAA records,
+Create gif0 interface
 
+     ifconfig gif0 create 
 
-* A6 records
+Run gw6c
 
+    cd /usr/local/gw6c/bin
 
+    ./gw6c
 
-Using AAAA records is straightforward. Assign your hostname to the new IPv6 address you just got by adding:
+Test
+  
+    # ifconfig gif0
+    gif0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1280
+       tunnel inet 99.23.159.141 --> 64.86.88.116
+       inet6 2001:5c0:1000:b::4567 --> 2001:5c0:1000:b::4566 prefixlen 128 
+       inet6 fe80::221:70ff:fef6:8ced%gif0 prefixlen 64 scopeid 0x6 
 
+In this case we can see our address is 2001:5c0:1000:b::4567
 
+    # ping6 ipv6.google.com
+    PING6(56=40+8+8 bytes) 2001:5c0:1000:b::4567 --> 2001:4860:b002::68
+    16 bytes from 2001:4860:b002::68, icmp_seq=0 hlim=53 time=79.582 ms
 
+Ifconfig aliases
     
+    If you have an authenticated connection and a /56 address block, you will see an additional IPv6 address attached to the interface defined in if_prefix= in gw6c.conf.
 
-    MYHOSTNAME           AAAA    MYIPv6ADDR
+    #ifconfig re0 
+    re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
+       options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>
+       inet6 fe80::221:70ff:fef6:8ced%re0 prefixlen 64 scopeid 0x1 
+       inet 99.23.159.141 netmask 0xfffffffc broadcast 99.23.159.143
+       inet6 2001:5c0:1105:1200::1 prefixlen 64 
+       ether 00:21:70:f6:8c:ed
+       media: Ethernet autoselect (100baseTX <full-duplex>)
+       status: active
 
+In this case, we have an IPv6 address of 2001:5c0:1105:1200::1. This is the start of the /56 block we have been assigned. 
 
+We can bind to additional addresses in the 2001:5c0:1105:1200::1/56 range. Example:
 
+    ifconfig re0 inet6 alias 2001:5c0:1105:1201::1
 
+### 19.16.4 DNS in the IPv6 World 
 
-To your primary zone DNS file. In case you do not serve your own DNS zones ask your DNS provider. Current versions of  **bind**  (version 8.3 and 9) support AAAA records.
+
+There are two new types of DNS records for IPv6:
+
+
+* AAAA records,
+
+
+* A6 records
 
 
 
+Using AAAA records is straightforward. Assign your hostname to the new IPv6 address you just got by adding:
+
+
+
+    MYHOSTNAME           AAAA    MYIPv6ADDR
+
 
 
+To your primary zone DNS file. In case you do not serve your own DNS zones ask your DNS provider. Current versions of  **bind**  (version 8.3 and 9) support AAAA records.
+
 
 
 CategoryHandbook