DragonFly On-Line Manual Pages
DTCPC(8) DragonFly 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
tunnel 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
interface 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 behavior. 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 acceptable 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
invokes 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-
readable. 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
feature, 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. :-)
DragonFly 6.5-DEVELOPMENT January 6, 2006 DragonFly 6.5-DEVELOPMENT