home | help
DTCPC(8)		     System Manager's Manual			DTCPC(8)

NAME
     dtcpc -- Dynamic Tunnel Configuration Protocol client

SYNOPSIS
     dtcpc [-a] [-A address] [-b udp-port] [-c] [-d] [-D] [-f file] [-i if] [-l]
	   [-m mtu] [-n] [-o] [-p port] [-P prefix-delegation] [-r routecommand]
	   [-R destination] [-t tuntype] [-u user] [-U] server

DESCRIPTION
     dtcpc  implements	Dynamic  Tunnel  Configuration Protocol (DTCP for short)
     proposed by Trumpet.  dtcpc will first ask the DTCP password to  the  user.
     Then,  the  program  will try to connect DTCP server on server, to IPv4 TCP
     port 20200 (or port specified by port), login as DTCP client, and	maintain
     IPv6 over IPv4 tunnel connection.

     The  spec defines several kind of tunnel requests.  dtcpc will request tun-
     nel typed tuntype to the DTCP server.  The default  value	for  tuntype  is
     "tunnelonly".  For tunnel types, please refer to dtcps(8).

     By  default,  dtcpc  dynamically  creates	gif as tunnelling device on such
     platform as interface cloning is available.  You can disable use of  inter-
     face cloning by using -c.	When -o is specified, dtcpc creates an interface
     dynamically  but don't destroy it at exit.  On the platform where interface
     cloning is not available, dtcpc will use gif0 as tunnelling  device.   This
     can be altered by using -i.

     If  -U  is specified, an IPv6 over an UDP/IPv4 tunnel is created instead of
     generic tunnel.  An UDP port is specified by -b, and its default is "4028".
     An IPv6 over an UDP/IPv4 tunnel requires Netgraph.  (Experimental)

     -r specifies how the default route is configured.	If "static" is specified
     as routecommand, dtcpc uses the route(8) command  to  install  the  default
     route  towards the corresponding tunnel interface.  This is the default be-
     havior.  If "solicit" is specified, dtcpc will call the rtsol(8) command to
     send router solicitation messages toward the other end of the tunnel.

     By default, when routecommand is "static", the default route is configured.
     But, in some situation, you may want to install the specific routes instead
     of the default route towards the corresponding tunnel interface.	You  can
     specify the destination with -R destination.  The destination is an accept-
     able  form  by  route(8), like as "3ffe:505:2:: -prefixlen 48".  If you are
     running recent FreeBSD, it can  be  simplifed  by	"3ffe:505:2::/48".   The
     destination may be comma separated list.

     -u is needed when DTCP user account is different from the login name on the
     host.

     When  -A address is specified, address is added to the corresponding tunnel
     interface.  The address is  a  acceptable	form  by  ifconfig(8),	like  as
     "3ffe:505:2:ffff::1  -prefixlen  128".   It  may  help some situation.  The
     address may be comma separated list.

     -n may save the user lives behind NAT that maps  private  IPv4  address  to
     global IPv4 address.

     dtcpc can be configured to do prefix-delegation.  When -P prefix-delegation
     is   specified,  dtcpc  initialize  the  LAN  interfaces.	 The  format  of
     prefix-delegation is a comma separated list of the interface, SLA-id, host-
     id and prefixlen.	And the interface, SLA-id, host-id and prefixlen  should
     be written as a slant separated list such as "fxp0/1/0:0:0:1".  If you omit
     host-id,  EUI-64  address is assumed to be used.  If you omit prefixlen, 64
     is assumed.

     When prefix-delegation is enabled and rtadvd(8) is not running,  dtcpc  in-
     vokes  rtadvd(8) appropriately.  You can disable this behvior by specifying
     -a.

     When -D is specified, dtcpc becomes daemon.

     By default, when connection to the server is closed, dtcpc will  exit.   -l
     is  specified,  dtcpc  doesn't  exit  on connection close, and continuously
     tries to re-connect.

     If dtcpc is invoked as daemon, the process ID of  the  dtcpc  are	held  in
     /var/run/dtcpc.pid  by  default.  You may want to specify -f file to change
     the file name.

     When -m mtu is specified, set the MTU of the tunnel to mtu.  The default is
     "1280".

     -d puts dtcpc to debug mode.

     Upon receipt of signal SIGHUP, dtcpc will try  to	reconnect  to  the  DTCP
     server.

RETURN VALUES
     dtcpc will exit with positive value on errors.

FILES
     /usr/local/etc/dtcpc.auth
	       You  can  specify your password to connect to DTCP server in this
	       file.  If your password is found in this file, dtcpc does not ask
	       for your password.  The format is a colon-separated list  of  the
	       server name, the user name and the password.
     /var/run/dtcpc.pid
	       Contains  the  process ID of the dtcpc listening for connections.
	       The content of this file is not sensitive; it can be  world-read-
	       able.  This file name may be changed by -f option.

SEE ALSO
     gif(4), dtcps(8), gifconfig(8), ifconfig(8), route(8), rtadvd(8)

HISTORY
     The dtcpc command first appeared in WIDE/KAME IPv6 protocol stack kit.

     "network"	tunnel	type  and  other  useful facilities were added by Hajimu
     UMEMOTO <ume@mahoroba.org>.

BUGS
     dtcpc will not work if you are behind a NAT box (This is  a  protocol  fea-
     ture,  not  a bug).  -n may help you on such case.  But, it is still depend
     on the behavior of your NAT box.

     dtcpc was written in Ruby. :-)

FreeBSD ports 15.quarterly	   Jan 6, 2006				DTCPC(8)

home | help