diff options
Diffstat (limited to 'net/hf6to4')
-rw-r--r-- | net/hf6to4/DESCR | 8 | ||||
-rw-r--r-- | net/hf6to4/MESSAGE | 11 | ||||
-rw-r--r-- | net/hf6to4/Makefile | 33 | ||||
-rw-r--r-- | net/hf6to4/PLIST | 6 | ||||
-rw-r--r-- | net/hf6to4/files/Makefile | 2 | ||||
-rwxr-xr-x | net/hf6to4/files/hf6to4 | 214 | ||||
-rw-r--r-- | net/hf6to4/files/hf6to4.8 | 208 | ||||
-rw-r--r-- | net/hf6to4/files/hf6to4.conf | 35 | ||||
-rw-r--r-- | net/hf6to4/files/hf6to4.html | 264 |
9 files changed, 781 insertions, 0 deletions
diff --git a/net/hf6to4/DESCR b/net/hf6to4/DESCR new file mode 100644 index 00000000000..8fd0fdd07b8 --- /dev/null +++ b/net/hf6to4/DESCR @@ -0,0 +1,8 @@ +The hf6to4 script can be used to setup IPv6 on your home machine and net- +work for exploring IPv6 without any registrations. 6to4 is a mechanism by +which your IPv6 address(es) are derived from an assigned IPv4 address, +and which involves automatic tunnelling to one or more remote 6to4 hubs, +which will then forward your v6 packets on the 6bone etc. Replies are +routed back to you over IPv4 via (possibly) other 6to4 capable remote +gateways. As such, IPv6-in-IPv4-encapsulated packets are accepted from +all v4-hosts. diff --git a/net/hf6to4/MESSAGE b/net/hf6to4/MESSAGE new file mode 100644 index 00000000000..5d9d52d6c1e --- /dev/null +++ b/net/hf6to4/MESSAGE @@ -0,0 +1,11 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1.1.1 2003/08/23 13:30:35 hubertf Exp $ + +To configure a 6to4 tunnel, modify the configuration file +${PKG_SYSCONFDIR}/hf6to4.conf for your system, then run + + ${RCD_SCRIPTS_DIR}/hf6to4 -v start + +You should then be able to ping6 www.kame.net. + +=========================================================================== diff --git a/net/hf6to4/Makefile b/net/hf6to4/Makefile new file mode 100644 index 00000000000..44819f199f7 --- /dev/null +++ b/net/hf6to4/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.1.1.1 2003/08/23 13:30:35 hubertf Exp $ +# + +DISTNAME= hf6to4-1.0 +WRKSRC= ${WRKDIR} +CATEGORIES= net +MASTER_SITES= # empty +DISTFILES= # empty + +MAINTAINER= hubertf@NetBSD.org +HOMEPAGE= http://www.NetBSD.org/packages/net/hf6to4/files/hf6to4.html +COMMENT= Enables 6to4 IPv6 automatic tunnels + +USE_PKGINSTALL= YES + +# This pkg doesn't regard USE_INET6 (leave this comment for README-IPv6.html!) +EXTRACT_ONLY= # empty +NO_CHECKSUM= yes +NO_CONFIGURE= yes + +CONF_FILES+= ${PREFIX}/share/examples/hf6to4/hf6to4.conf ${PKG_SYSCONFDIR}/hf6to4.conf + +do-build: + @${SED} ${FILES_SUBST_SED} ${FILESDIR}/hf6to4 > ${WRKSRC}/hf6to4 + +do-install: + ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/hf6to4 + ${INSTALL_SCRIPT} ${WRKSRC}/hf6to4 ${PREFIX}/sbin/hf6to4 + ${INSTALL_MAN} ${FILESDIR}/hf6to4.8 ${PREFIX}/man/man8 + ${INSTALL_DATA} ${FILESDIR}/hf6to4.html ${PREFIX}/share/doc/hf6to4.html + ${INSTALL_DATA} ${FILESDIR}/hf6to4.conf ${PREFIX}/share/examples/hf6to4 + +.include "../../mk/bsd.pkg.mk" diff --git a/net/hf6to4/PLIST b/net/hf6to4/PLIST new file mode 100644 index 00000000000..531a6e52ba2 --- /dev/null +++ b/net/hf6to4/PLIST @@ -0,0 +1,6 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2003/08/23 13:30:35 hubertf Exp $ +sbin/hf6to4 +share/doc/hf6to4.html +share/examples/hf6to4/hf6to4.conf +man/man8/hf6to4.8 +@dirrm share/examples/hf6to4 diff --git a/net/hf6to4/files/Makefile b/net/hf6to4/files/Makefile new file mode 100644 index 00000000000..9f4ae64c417 --- /dev/null +++ b/net/hf6to4/files/Makefile @@ -0,0 +1,2 @@ +hf6to4.html: hf6to4.8 + nroff -mdoc2html hf6to4.8 > hf6to4.html diff --git a/net/hf6to4/files/hf6to4 b/net/hf6to4/files/hf6to4 new file mode 100755 index 00000000000..de79d05f99f --- /dev/null +++ b/net/hf6to4/files/hf6to4 @@ -0,0 +1,214 @@ +#!/bin/sh +# +# hf6to4 - Setup 6to4 IPv6, for NetBSD (and maybe others) +# +# (c) Copyright 2000, 2003 Hubert Feyrer <hubert@feyrer.de> +# + +etcdir="/usr/pkg/etc"; + +not=false +verbose=false + +f=$etcdir/hf6to4.conf +if [ -f "$f" ] +then + . $f +else + echo "$0: config file $f missing." + exit 1 +fi + +########################################################################### +run() +{ + if $not + then + echo "$@" + else + if $verbose + then + echo "$@" + fi + "$@" + fi +} + +########################################################################### +usage() +{ + echo "Usage: $0 [-n] [-v] {start | stop | rtadvd-start | rtadvd-stop}"; +} + +########################################################################### +### M A I N +########################################################################### +# +# Process options +# +args=`getopt nvh $*` +if [ $? != 0 ] +then + usage + exit 1 +fi + +set -- $args +while [ $# -gt 0 ] +do + case "$1" in + -n) + not=true + ;; + -v) + verbose=true + ;; + --) + shift + break + ;; + -h) + usage + exit 0 + ;; + *) + usage + exit 1 + ;; + esac + shift +done + + +# maybe ifconfig stf0 create? + + +# +# Some sanity checks +# +if [ `ifconfig -a | grep fe80: | wc -l` -le 0 -o \ + `ifconfig -a | grep stf | wc -l` -le 0 ]; then + echo "$0: It seems your kernel does not support IPv6 or 6to4 (stf)." + echo "Add 'options INET6' and 'pseudo-device stf 1' to your kernel and retry!"; + exit 1 +fi + + +# +# Figure out IP#s etc. +# +localadr4=`ifconfig $out_if inet \ + | grep inet \ + | sed 's/^.*inet *//' \ + | sed 's/ .*$//'` + +l4c=`echo $localadr4 | sed 's,\., ,g'` +prefix=`printf "2002:%02x%02x:%02x%02x" $l4c` + +localadr6=`printf "$prefix:%04x" $v6_net` + + +if [ "$peer" = "6to4-anycast" ] +then + # magic values from rfc 3068 + remoteadr4="192.88.99.1" + remoteadr6="2002:c058:6301::" +else + if [ `expr "$remoteadr4" : "^[0-9.]*$"` -gt 0 ] + then + $verbose && \ + echo "IPv4 address of peer given numerically, no resolving needed" + else + # Hostname, needs resolving + + remoteadr4=`host $peer | sed 's/^.*address //'` + + $verbose && \ + echo "resolving IPv4 address of peer $peer as $remoteadr4" + fi + + if [ `expr "$remoteadr6" : "^[0-9a-fA-Z:]*$"` -gt 0 ] + then + $verbose && \ + echo "IPv6 address of peer given numerically, no resolving needed" + else + remoteadr6=`host -t AAAA $peer | sed 's/^.*address //'` + + $verbose && \ + echo "resolving IPv6 address of peer $peer as $remoteadr6" + fi +fi + + +if $verbose +then + echo "remote v4 address: $remoteadr4" + echo "local v4 address: $localadr4" + echo "remote v6 address: $remoteadr6" + echo "local v6 address: $localadr6:$hostbits6" + echo "" +fi + + +# +# Handle commands +# + +# stop: +if [ "$1" = "stop" ] +then + run ifconfig stf0 down + + # remove all v6 addresses from stf interface: + adrs=`ifconfig stf0 inet6 \ + | grep inet6 \ + | sed -e 's/inet6//' \ + -e 's/prefix.*//g' \ + -e 's/^[ ]*//' \ + -e 's/[ ]*\$//'` + for adr in $adrs + do + run ifconfig stf0 inet6 -alias $adr + done + + # remove default route: + run route delete -inet6 default +fi + + +# start: +if [ "$1" = "start" ] +then + run ifconfig stf0 inet6 $localadr6:$hostbits6 prefixlen $v6_prefixlen alias + run route add -inet6 default $remoteadr6 + if [ "$in_if" != "" ] + then + run ifconfig $in_if inet6 $prefix:$v6_innernet:$hostbits6 + fi +fi + +# rtadvd-stop: +if [ "$1" = "rtadvd-stop" -o "$1" = "stop-rtadvd" ] +then + if [ -f "/var/run/rtadvd.pid" ] + then + pid=`cat /var/run/rtadvd.pid` + run kill -TERM $pid + run rm -f /var/run/rtadvd.pid + else + echo $0: no rtadvd running! + fi +fi + +# rtadvd-start: +if [ "$1" = "rtadvd-start" -o "$1" = "start-rtadvd" ] +then + if [ -f "/var/run/rtadvd.pid" ] + then + echo $0: rtadvd already running! + else + run sysctl -w net.inet6.ip6.forwarding=1 + run sysctl -w net.inet6.ip6.accept_rtadv=0 + run rtadvd $in_if + fi +fi diff --git a/net/hf6to4/files/hf6to4.8 b/net/hf6to4/files/hf6to4.8 new file mode 100644 index 00000000000..2d1f02381e3 --- /dev/null +++ b/net/hf6to4/files/hf6to4.8 @@ -0,0 +1,208 @@ +.\" $NetBSD: hf6to4.8,v 1.1.1.1 2003/08/23 13:30:35 hubertf Exp $ +.Dd August 23, 2003 +.Dt hf6to4 8 +.Os +.Sh NAME +.Nm hf6to4 +.Nd setup automatic 6to4 IPv6 tunnelling +.Sh SYNOPSIS +.Nm +.Op Fl vn +.Ar command +.Sh DESCRIPTION +The +.Nm +script can be used to setup IPv6 on your home machine and +network for exploring IPv6 without any registrations. 6to4 is a +mechanism by which your IPv6 address(es) are derived from an assigned +IPv4 address, and which involves automatic tunnelling to one or more +remove 6to4 relay routers, which will then forward your v6 packets on the 6bone. +Replies are routed back to you over IPv4 via (possibly) other +6to4 relay routers. As such, IPv6-in-IPv4-encapsulated +packets are accepted from all v4-hosts. See +.Xr stf 4 +for security discussion. +.Pp +From your (single) IPv4 address, you get a whole IPv6 /48 network, +which allows you to split your network in 2^16 subnets, with 2^64 +hosts each. You need to setup routing for your internal network +properly, help is provided for setting up the border router here. +.Pp +This script takes the burden to calculate your IPv6 address from +existing IPv4 address and runs the commands to setup (and tear down) +automatic 6to4 IPv6 tunnelling. In a seperate step, router +advertisement for the inside network can be started and stopped. +.Pp +Possible options are: +.Bl -tag -width xxx +.It Fl n +Do not. Only print the commands that would be run, but do not execute +them. +.It Fl v +Verbose operation. Print the commands that are about to be run, before +running them. Displays some additional information. +.It Fl h +Show usage. +.El +.Pp +Possible commands are: +.Bl -tag -width rtadvd-start +.It Sy start +Configure 6to4 IPv6. The +.Xr stf 4 +interface is configured, and a default route to a remote 6to4 +gateway is established. In addition, the internal +network interface is assigned an address. +.It Sy stop +Stops 6to4 IPv6. All addresses are removed from the +.Xr stf 4 +device, and the default route is removed. +.It Sy rtadvd-start +Starts router advertizement and IPv6 packet forwarding, +turning the machine into a IPv6 router. +Clients just need to be told to accept router advertizements, i.e. +the +.Sq net.inet6.ip6.accept_rtadv +sysctl needs to be set to +.Sq 1 . +On NetBSD, you can arrange that by setting +.Dq ip6mode=autohost +in +.Pa /etc/rc.conf . +.It Sy rtadvd-stop +Stops router advertizement and IPv6 packet forwarding. +.Xr rtadvd 8 +is stopped. +.El +.Sh REQUIREMENTS +Besides IPv4 connectivity, you need support for IPv6 and the +.Xr stf 4 +device in your kernel. While the GENERIC +.Nx +1.5 kernel does support IPv6, it does not contain support for the +.Xr stf 4 +device. +.Pp +Make sure you have the following options in your kernel config file: +.Bd -literal -offset +options INET # IP + ICMP + TCP + UDP +options INET6 # IPV6 +pseudo-device stf 1 # 6to4 IPv6 over IPv4 encapsulation +.Ed +.Pp +In systems that run past-1.5, +you will have to explicitly create an +.Xr stf 4 +device after compiling it in the kernel. You do this by running +the following command before calling the +.Nm +script: +.Bd -literal -offset +ifconfig stf0 create +.Ed +As an alternative, you can also put the following lines into +.Pa /etc/rc.conf : +.Bd -literal -offset +net_interfaces="stf0" +ifconfig_stf0="create" +.Ed +.Pp +See also the comment on setting up IPv6-clients +.Sq behind +your 6to4 router for the +.Sy rtadvd-start +command! +.Sh CONFIGURATION +The +.Nm +script reads its configuration from a config file named +.Pa hf6to4.conf . +The +.Pa hf6to4.conf +file is in +.Xr sh 1 +syntax, and contains several +variables that can be tuned to adjust your setup. Default values +should work for use on a modem/DSL dialup. +.Bl -tag -width rtadvd-stop +.It Sy out_if +The outbound interface that has a valid IPv4 address +assigned, that can be used to derive the IPv6 +addresses from. Usually +.Dq ppp0 +for a modem setup, or your ethernet interface if you have +IPv4 connectivity via LAN. This +can't be empty, and is assigned the IPv6 address +2002:x:x:v6_net:hostbits6, see below. +.It Sy in_if +The inside interface. If non-empty, this interface is +assigned the IPv6 address +2002:x:x:v6_innernet:hostbits6, see below. +This is only useful on machines that +have more than one network interfaces, e.g. with a modem and a +local ethernet. +.It Sy v6_net +The subnet address you want to use on the address of +your outbound interface. Defaults to +.Dq 1 . +.It Sy v6_innernet +The subnet address you want to use on the address of +your inbound interface. Defaults to +.Dq 2 . +.It Sy hostbits6 +The lower 64 bits of both the inbound and outbound interface's +addresses. +.It Sy peer +Name of the remote 6to4 server that'll take our +IPv6-in-IPv4 encapsulated packets and route them on +via IPv6. A special value of +.Dq 6to4-anycast +can be used for the anycast service defined in RFC 3068. +Other possible values are given in the example config file. +.It Sy remoteadr4, remoteadr6 +If the +.Sy peer +variable is set to the relay router's name, DNS lookups for A and AAAA +records will be made to +determine its IPv4 and IPv6 address. To avoid these lookups, the variables +.Sy remoteadr4 +and +.Sy remoteadr6 +can be set to strings containing the numerical IPv4 and IPv6 numbers +directly. +.El +.Sh EXAMPLES +The +.Nm +script can be run automatically by +.Xr pppd 8 +when a connection is made. For this, put the following into +.Pa /etc/ppp/ip-up : +.Bd -literal -offset +( /usr/pkg/sbin/hf6to4 stop + /usr/pkg/sbin/hf6to4 start ) & +.Ed +.Pp +To shut down properly, put this into +.Pa /etc/ppp/ip-down : +.Bd -literal -offset +/usr/pkg/sbin/hf6to4 stop +.Ed +.Sh SEE ALSO +.Xr stf 4 , +.Dq 6to4 IPv6 Explained +at +.Pa http://www.feyrer.de/NetBSD/6to4.html , +.Nx +IPv6 Documentation at +.Pa http://www.netbsd.org/Documentation/network/ipv6/ , +RFC 3068. +.Sh HISTORY +The +.Nm +utility and manpage were written by +Hubert Feyrer <hubert@feyrer.de>. +.Sh BUGS +On systems running past-1.5, the +.Dq ifconfig stf0 create +should be run automatically. diff --git a/net/hf6to4/files/hf6to4.conf b/net/hf6to4/files/hf6to4.conf new file mode 100644 index 00000000000..70cc7fbd1eb --- /dev/null +++ b/net/hf6to4/files/hf6to4.conf @@ -0,0 +1,35 @@ +# hf6to4.conf +# + +out_if="ppp0" # Our outgoing (uplink) interface +in_if="rtk0" # Inside (ethernet) interface + +v6_net="1" # 2002:x:x:v6_net:: +v6_innernet="2" # 2002:x:x:v6_innernet:: +v6_prefixlen=16 # Change for more +hostbits6=":1" # should be determined via MAC of $in_if + +########################################################################### +# +# Selection of 6to4 relay router. If "peer" is not set, +# "remoteadr4" and "remoteadr6" must be set! +# + +# Some possible remote 6to4 routers; DNS lookups will be used +# to determine their IPv4 and IPv6 adresses (see below on how +# to avoid these lookups): +#peer="6to4.ipv6.fh-regensburg.de" # Germany, Europe +#peer="6to4-anycast" # use RFC 3068 magic values +#peer="asterix.ipv6.bt.com" # Great Britain, Europe +#$peer="6to4.kfu.com" # USA, West coast +#peer="6to4.ipv6.microsoft.com" # USA, West coast +#peer="ipv6-router.cisco.com" # USA, West coast; register at http://www.cisco.com/ipv6/ + +# +# To prevent DNS lookups of peer, directly specify IPv4 and IPv6 address +# of 6to4 relay router: +# + +# 6to4.ipv6.fh-regensburg.de - Germany, Europe: +remoteadr4="194.95.108.191" +remoteadr6="2002:c25f:6cbf:1::1" diff --git a/net/hf6to4/files/hf6to4.html b/net/hf6to4/files/hf6to4.html new file mode 100644 index 00000000000..bfba491a6fa --- /dev/null +++ b/net/hf6to4/files/hf6to4.html @@ -0,0 +1,264 @@ +<html> +<head> + <title> + August 23, 2003 hf6to4 8 + + </title> + <style type="text/css"> + <!-- + body { margin-left:4%; } + H1, H2, H3, H4, H5 { + color: maroon; padding: 4pt; margin-left: -4%; + border: solid; border-width: thin; width: 100%; + background: rgb(204,204,255) + } + --> + </style> +</head> +<body bgcolor="#FFFFFF" text="#000000"> + <h3> + NAME + </h3> +<b>hf6to4</b> +- setup automatic 6to4 IPv6 tunnelling + <h3> + SYNOPSIS + </h3> +<b>hf6to4</b> +[<b>-</b><b></b><b>vn</b>] +<i></i><i>command</i> + <h3> + DESCRIPTION + </h3> +The +<b>hf6to4</b> +script can be used to setup IPv6 on your home machine and +network for exploring IPv6 without any registrations. 6to4 is a +mechanism by which your IPv6 address(es) are derived from an assigned +IPv4 address, and which involves automatic tunnelling to one or more +remove 6to4 relay routers, which will then forward your v6 packets on the 6bone. +Replies are routed back to you over IPv4 via (possibly) other +6to4 relay routers. As such, IPv6-in-IPv4-encapsulated +packets are accepted from all v4-hosts. See +<a href="../html4/stf.html">stf(4)</a> +for security discussion. + <p> +From your (single) IPv4 address, you get a whole IPv6 /48 network, +which allows you to split your network in 2^16 subnets, with 2^64 +hosts each. You need to setup routing for your internal network +properly, help is provided for setting up the border router here. + <p> +This script takes the burden to calculate your IPv6 address from +existing IPv4 address and runs the commands to setup (and tear down) +automatic 6to4 IPv6 tunnelling. In a seperate step, router +advertisement for the inside network can be started and stopped. + <p> +Possible options are: +<dl compact> +<p><dt><b>-</b><b></b><b>n</b><dd> +Do not. Only print the commands that would be run, but do not execute +them. +<p><dt><b>-</b><b></b><b>v</b><dd> +Verbose operation. Print the commands that are about to be run, before +running them. Displays some additional information. +<p><dt><b>-</b><b></b><b>h</b><dd> +Show usage. +</dl> + <p> +Possible commands are: +<dl compact> +<p><dt><b></b><b>start</b><dd> +Configure 6to4 IPv6. The +<a href="../html4/stf.html">stf(4)</a> +interface is configured, and a default route to a remote 6to4 +gateway is established. In addition, the internal +network interface is assigned an address. +<p><dt><b></b><b>stop</b><dd> +Stops 6to4 IPv6. All addresses are removed from the +<a href="../html4/stf.html">stf(4)</a> +device, and the default route is removed. +<p><dt><b></b><b>rtadvd-start</b><dd> +Starts router advertizement and IPv6 packet forwarding, +turning the machine into a IPv6 router. +Clients just need to be told to accept router advertizements, i.e. +the +`net.inet6.ip6.accept_rtadv' +sysctl needs to be set to +`1'. +On NetBSD, you can arrange that by setting +``ip6mode=autohost'' +in +<code></code><code>/etc/rc.conf</code>. +<p><dt><b></b><b>rtadvd-stop</b><dd> +Stops router advertizement and IPv6 packet forwarding. +<a href="../html8/rtadvd.html">rtadvd(8)</a> +is stopped. +</dl> + <h3> + REQUIREMENTS + </h3> +Besides IPv4 connectivity, you need support for IPv6 and the +<a href="../html4/stf.html">stf(4)</a> +device in your kernel. While the GENERIC +NetBSD +1.5 kernel does support IPv6, it does not contain support for the +<a href="../html4/stf.html">stf(4)</a> +device. + <p> +Make sure you have the following options in your kernel config file: +<dl compact><dt><dd> +<code> +<pre> +options INET # IP + ICMP + TCP + UDP +options INET6 # IPV6 +pseudo-device stf 1 # 6to4 IPv6 over IPv4 encapsulation +</pre> +</code> +</dl> + <p> +In systems that run past-1.5, +you will have to explicitly create an +<a href="../html4/stf.html">stf(4)</a> +device after compiling it in the kernel. You do this by running +the following command before calling the +<b>hf6to4</b> +script: +<dl compact><dt><dd> +<code> +<pre> +ifconfig stf0 create +</pre> +</code> +</dl> +As an alternative, you can also put the following lines into +<code></code><code>/etc/rc.conf</code>: +<dl compact><dt><dd> +<code> +<pre> +net_interfaces="stf0" +ifconfig_stf0="create" +</pre> +</code> +</dl> + <p> +See also the comment on setting up IPv6-clients +`behind' +your 6to4 router for the +<b></b><b>rtadvd-start</b> +command! + <h3> + CONFIGURATION + </h3> +The +<b>hf6to4</b> +script reads its configuration from a config file named +<code></code><code>hf6to4.conf</code>. +The +<code></code><code>hf6to4.conf</code> +file is in +<a href="../html1/sh.html">sh(1)</a> +syntax, and contains several +variables that can be tuned to adjust your setup. Default values +should work for use on a modem/DSL dialup. +<dl compact> +<p><dt><b></b><b>out_if</b><dd> +The outbound interface that has a valid IPv4 address +assigned, that can be used to derive the IPv6 +addresses from. Usually +``ppp0'' +for a modem setup, or your ethernet interface if you have +IPv4 connectivity via LAN. This +can't be empty, and is assigned the IPv6 address +2002:x:x:v6_net:hostbits6, see below. +<p><dt><b></b><b>in_if</b><dd> +The inside interface. If non-empty, this interface is +assigned the IPv6 address +2002:x:x:v6_innernet:hostbits6, see below. +This is only useful on machines that +have more than one network interfaces, e.g. with a modem and a +local ethernet. +<p><dt><b></b><b>v6_net</b><dd> +The subnet address you want to use on the address of +your outbound interface. Defaults to +``1''. +<p><dt><b></b><b>v6_innernet</b><dd> +The subnet address you want to use on the address of +your inbound interface. Defaults to +``2''. +<p><dt><b></b><b>hostbits6</b><dd> +The lower 64 bits of both the inbound and outbound interface's +addresses. +<p><dt><b></b><b>peer</b><dd> +Name of the remote 6to4 server that'll take our +IPv6-in-IPv4 encapsulated packets and route them on +via IPv6. A special value of +``6to4-anycast'' +can be used for the anycast service defined in RFC 3068. +Other possible values are given in the example config file. +<p><dt><b></b><b>remoteadr4,</b><b> remoteadr6</b><dd> +If the +<b></b><b>peer</b> +variable is set to the relay router's name, DNS lookups for A and AAAA +records will be made to +determine its IPv4 and IPv6 address. To avoid these lookups, the variables +<b></b><b>remoteadr4</b> +and +<b></b><b>remoteadr6</b> +can be set to strings containing the numerical IPv4 and IPv6 numbers +directly. +</dl> + <h3> + EXAMPLES + </h3> +The +<b>hf6to4</b> +script can be run automatically by +<a href="../html8/pppd.html">pppd(8)</a> +when a connection is made. For this, put the following into +<code></code><code>/etc/ppp/ip-up</code>: +<dl compact><dt><dd> +<code> +<pre> +( /usr/pkg/sbin/hf6to4 stop + /usr/pkg/sbin/hf6to4 start ) & +</pre> +</code> +</dl> + <p> +To shut down properly, put this into +<code></code><code>/etc/ppp/ip-down</code>: +<dl compact><dt><dd> +<code> +<pre> +/usr/pkg/sbin/hf6to4 stop +</pre> +</code> +</dl> + <h3> + SEE ALSO + </h3> +<a href="../html4/stf.html">stf(4)</a>, +``6to4 IPv6 Explained'' +at +<code></code><code>http://www.feyrer.de/NetBSD/6to4.html</code>, +NetBSD +IPv6 Documentation at +<code></code><code>http://www.netbsd.org/Documentation/network/ipv6/</code>, +RFC 3068. + <h3> + HISTORY + </h3> +The +<b>hf6to4</b> +utility and manpage were written by +Hubert Feyrer <hubert@feyrer.de>. + <h3> + BUGS + </h3> +On systems running past-1.5, the +``ifconfig stf0 create'' +should be run automatically. +</font></body> +</html> + + |