## SYNOPSIS

           telnet  [-8]  [-E] [-F] [-K] [-L] [-S tos] [-X authtype] [-a] [-c] [-d]
           [-e escapechar] [-f] [-k realm] [-l  user]  [-n  tracefile]  [-r]  [-x]
           [host [port]]

## DESCRIPTION

           The  telnet  command is used to communicate with another host using the
           TELNET protocol.  If telnet is invoked without the  host  argument,  it
           enters command mode, indicated by its prompt ( telnet>).  In this mode,
           it accepts and executes the commands listed below.  If  it  is  invoked
           with arguments, it performs an open command with those arguments.

## OPTIONS

           -8     Specify an 8-bit data path.  This causes an attempt to negotiate
                  the TELNET BINARY option on both input and output.

           -E     Stop any character from being recognized as an escape character.

           -F     forward  a  forwardable  copy  of  the  local credentials to the
                  remote system.

           -K     Specify no automatic login to the remote system.

           -L     Specify an 8-bit data path on output.  This  causes  the  BINARY
                  option to be negotiated on output.

           -S tos Set  the  IP type-of-service (TOS) option for the telnet connec-
                  tion to the value tos, which can be a numeric TOS value (in dec-
                  imal,  or a hex value preceded by 0x, or an octal value preceded
                  by a leading 0) or, on systems that support it, a  symbolic  TOS
                  name found in the /etc/iptos file.

           -X atype
                  Disable the atype type of authentication.

           -a     Attempt  automatic login.  This sends the user name via the USER
                  variable of the ENVIRON option, if supported by the remote  sys-
                  tem.   The  name used is that of the current user as returned by
                  getlogin(2) if it agrees with the current user ID; otherwise  it
                  is the name associated with the user ID.

           -c     Disable the reading of the user's .telnetrc file.  (See the tog-
                  gle skiprc command on this man page.)

           -d     Set the initial value of the debug flag to TRUE

           -e escape char
                  Set the initial telnet escape  character  to  escape  char.   If
                  escape  char is omitted, then there will be no escape character.

           -f     forward a copy of the local credentials to the remote system.

           -r     Specify a user interface similar to rlogin(1).   In  this  mode,
                  the  escape  character is set to the tilde (~) character, unless
                  modified by the -e option.

           -x     Turn on encryption of the data  stream.   When  this  option  is
                  turned on, telnet will exit with an error if authentication can-
                  not be negotiated or if encryption cannot be turned on.

           host   Indicates the name, alias, or Internet  address  of  the  remote
                  host.

           port   Indicates  a  port  number  (address of an application).  If the
                  port is not specified, the default telnet port (23) is used.

           When in rlogin mode, ~ is the telnet escape character; a  line  of  the
           form ~. disconnects from the remote host.  Similarly, the line ~^Z sus-
           pends the telnet session.  The line ~^] escapes to  the  normal  telnet
           escape prompt.

           Once  a  connection  has been opened, telnet will attempt to enable the
           TELNET LINEMODE option.  If this fails, then telnet will revert to  one
           of  two  input  modes:  either ``character at a time'' or ``old line by
           line,'' depending on what the remote system supports.

           When LINEMODE is enabled, character processing is  done  on  the  local
           system,  under the control of the remote system.  When input editing or
           character echoing is to be disabled, the remote system will relay  that
           information.   The remote system will also relay changes to any special
           characters that happen on the remote system,  so  that  they  can  take
           effect on the local system.

           In ``character at a time'' mode, most text typed is immediately sent to
           the remote host for processing.

           In ``old line by line'' mode, all text is  echoed  locally,  and  (nor-
           mally)  only  completed lines are sent to the remote host.  The ``local
           echo character'' (initially ``^E'') may be used to turn off and on  the
           local  echo.  (This would mostly be used to enter passwords without the
           password being echoed).

           If the LINEMODE option is enabled, or if the localchars  flag  is  TRUE
           (the  default  for  ``old  line by line''; see below), the user's quit,
           intr, and flush characters are trapped locally, and sent as TELNET pro-
           tocol sequences to the remote side.  If LINEMODE has ever been enabled,
           then the  user's  susp  and  eof  are  also  sent  as  TELNET  protocol
           sequences,  and quit is sent as a TELNET ABORT instead of BREAK.  There
           are options (see toggle autoflush and  toggle  autosynch  below)  which
           cause this action to flush subsequent output to the terminal (until the
           remote host acknowledges the TELNET sequence) and flush previous termi-
           nal input (in the case of quit and intr).

                  disable type
                         Disables the specified type of authentication.  To obtain
                         a  list  of available types, use the auth disable ?  com-
                         mand.

                  enable type
                         Enables the specified type of authentication.  To  obtain
                         a  list  of  available types, use the auth enable ?  com-
                         mand.

                  status Lists the current status of the various types of  authen-
                         tication.

           close  Close a TELNET session and return to command mode.

           display argument ...
                  Displays some or all of the set and toggle values (see below).

           encrypt argument ...
                  The encrypt command manipulates the information sent through the
                  TELNET ENCRYPT option.

           Note:  Because of export controls, the TELNET  ENCRYPT  option  is  not
           supported outside of the United States and Canada.

           Valid arguments for the encrypt command are as follows:

                  disable type [input|output]
                         Disables  the  specified type of encryption.  If you omit
                         the input and output, both input and output are disabled.
                         To obtain a list of available types, use the encrypt dis-
                         able ?  command.

                  enable type]fP [input|output]
                         Enables the specified type of encryption.   If  you  omit
                         input  and output, both input and output are enabled.  To
                         obtain a list of available types, use the encrypt  enable
                         ?  command.

                  input  This is the same as the encrypt start input command.

                  -input This is the same as the encrypt stop input command.

                  output This is the same as the encrypt start output command.

                  -output
                         This is the same as the encrypt stop output command.

                  start [input|output]
                         Attempts to start encryption.  If you omit input and out-
                         put, both input and output are enabled.  To obtain a list

                  my be sent through the TELNET ENVIRON option.  The  initial  set
                  of  variables is taken from the users environment, with only the
                  DISPLAY and PRINTER variables being exported  by  default.   The
                  USER variable is also exported if the -a or -l options are used.

           Valid arguments for the environ command are:

                  define variable value
                         Define the variable variable to have a  value  of  value.
                         Any  variables  defined by this command are automatically
                         exported.  The value may be enclosed in single or  double
                         quotes so that tabs and spaces may be included.

                  undefine variable
                         Remove variable from the list of environment variables.

                  export variable
                         Mark  the  variable variable to be exported to the remote
                         side.

                  unexport variable
                         Mark the variable variable  to  not  be  exported  unless
                         explicitly asked for by the remote side.

                  list   List  the  current  set  of environment variables.  Those
                         marked with a * will be sent automatically;  other  vari-
                         ables will only be sent if explicitly requested.

                  ?      Prints out help information for the environ command.

           logout Sends the TELNET LOGOUT option to the remote side.  This command
                  is similar to a close command; however, if the remote side  does
                  not  support  the  LOGOUT option, nothing happens.  If, however,
                  the remote side does support the  LOGOUT  option,  this  command
                  should cause the remote side to close the TELNET connection.  If
                  the remote side also supports the concept of suspending a user's
                  session  for  later  reattachment, the logout argument indicates
                  that you should terminate the session immediately.

           mode type
                  Type is one of several options, depending on the  state  of  the
                  TELNET  session.   The remote host is asked for permission to go
                  into the requested mode.  If  the  remote  host  is  capable  of
                  entering that mode, the requested mode will be entered.

                  character
                         Disable  the  TELNET  LINEMODE  option, or, if the remote
                         side does not understand the LINEMODE option, then  enter
                         ``character at a time'' mode.

                  line   Enable the TELNET LINEMODE option, or, if the remote side
                         does not understand the LINEMODE option, then attempt  to
                         LINEMODE option.  This requires that the LINEMODE  option
                         be enabled.

                  litecho (-litecho)
                         Attempt  to  enable  (disable)  the  LIT_ECHO mode of the
                         LINEMODE option.  This requires that the LINEMODE  option
                         be enabled.

                  ?      Prints out help information for the mode command.

           open host [-a] [[-l] user] [-port]
                  Open a connection to the named host.  If no port number is spec-
                  ified, telnet will attempt to contact a  TELNET  server  at  the
                  default  port.  The host specification may be either a host name
                  (see hosts(5) or an Internet  address  specified  in  the  ``dot
                  notation''  (see  inet(3).  After establishing a connection, the
                  file .telnetrc in the user's home directory  is  opened.   Lines
                  beginning  with a # are comment lines.  Blank lines are ignored.
                  Lines that begin without white space are the start of a  machine
                  entry.   The  first thing on the line is the name of the machine
                  that is being connected to.  The rest of the line,  and  succes-
                  sive  lines that begin with white space are assumed to be telnet
                  commands and are processed as if they had been typed in manually
                  to the telnet command prompt.

                  -a     Attempt  automatic  login.   This sends the user name via
                         the USER variable of the ENVIRON option, if supported  by
                         the  remote system.  The name used is that of the current
                         user as returned by getlogin(2) if  it  agrees  with  the
                         current user ID; otherwise it is the name associated with
                         the user ID.

                  [-l] user
                         may be used to specify the user name to be passed to  the
                         remote system via the ENVIRON option.

                  -port  When  connecting to a non-standard port, telnet omits any
                         automatic initiation of TELNET options.   When  the  port
                         number  is  preceded  by a minus sign, the initial option
                         negotiation is done.

           quit   Close any open TELNET session and exit telnet.  An end  of  file
                  (in command mode) will also close a session and exit.

           send arguments
                  Sends  one  or  more  special  character sequences to the remote
                  host.  The following are the arguments which  may  be  specified
                  (more than one argument may be specified at a time):

                  abort  Sends the TELNET ABORT (Abort processes) sequence.

                  el     Sends  the  TELNET EL (Erase Line) sequence, which should
                         cause the remote system to erase the line currently being
                         entered.

                  eof    Sends the TELNET EOF (End Of File) sequence.

                  eor    Sends the TELNET EOR (End of Record) sequence.

                  escape Sends the current escape character (initially ``^''.

                  ga     Sends the TELNET GA (Go Ahead) sequence, which likely has
                         no significance to the remote system.

                  getstatus
                         If the remote side supports the  TELNET  STATUS  command,
                         getstatus  will  send  the subnegotiation to request that
                         the server send its current option status.

                  ip     Sends the TELNET IP (Interrupt Process)  sequence,  which
                         should  cause  the  remote  system to abort the currently
                         running process.

                  nop    Sends the TELNET NOP (No OPeration) sequence.

                  susp   Sends the TELNET SUSP (SUSPend process) sequence.

                  synch  Sends the TELNET SYNCH sequence.   This  sequence  causes
                         the  remote  system  to discard all previously typed (but
                         not yet read) input.  This sequence is sent as TCP urgent
                         data  (and  may not work if the remote system is a 4.2BSD
                         system -- if it doesn't work, a lower case ``r''  may  be
                         echoed on the terminal).

                  do cmd

                  dont cmd

                  will cmd

                  wont cmd
                         Sends  the  TELNET  DO cmd sequence.  Cmd can be either a
                         decimal number between 0 and 255, or a symbolic name  for
                         a  specific  TELNET command.  Cmd can also be either help
                         or ?  to print out help information, including a list  of
                         known symbolic names.

                  ?      Prints out help information for the send command.

           set argument value

           unset argument value
                  The set command will set any one of a number of telnet variables

                  echo   This is the  value  (initially  ``^E'')  which,  when  in
                         ``line  by line'' mode, toggles between doing local echo-
                         ing of entered characters (for  normal  processing),  and
                         suppressing  echoing of entered characters (for entering,
                         say, a password).

                  eof    If telnet is operating  in  LINEMODE  or  ``old  line  by
                         line'' mode, entering this character as the first charac-
                         ter on a line will cause this character to be sent to the
                         remote system.  The initial value of the eof character is
                         taken to be the terminal's eof character.

                  erase  If telnet is in mode (see toggle localchars  below),  and
                         if  telnet  is operating in ``character at a time'' mode,
                         then when this character is typed, a TELNET  EC  sequence
                         (see  send  ec  above) is sent to the remote system.  The
                         initial value for the erase character is taken to be  the
                         terminal's erase character.

                  escape This  is  the  telnet escape character (initially ``^['')
                         which causes entry into telnet command  mode  (when  con-
                         nected to a remote system).

                  flushoutput
                         If  telnet  is  in localchars mode (see toggle localchars
                         below) and the flushoutput character is typed,  a  TELNET
                         AO  sequence  (see  send  ao above) is sent to the remote
                         host.  The initial value for the flush character is taken
                         to be the terminal's flush character.

                  forw1

                  forw2  If telnet is operating in LINEMODE, these are the charac-
                         ters that, when typed, cause partial  lines  to  be  for-
                         warded  to  the remote system.  The initial value for the
                         forwarding characters are taken from the  terminal's  eol
                         and eol2 characters.

                  interrupt
                         If  telnet  is  in localchars mode (see toggle localchars
                         below) and the interrupt character is typed, a TELNET  IP
                         sequence  (see send ip above) is sent to the remote host.
                         The initial value for the interrupt character is taken to
                         be the terminal's intr character.

                  kill   If  telnet  is  in localchars mode (see toggle localchars
                         below), and if telnet is operating in  ``character  at  a
                         time''  mode, then when this character is typed, a TELNET
                         EL sequence (see send el above) is  sent  to  the  remote
                         system.   The  initial  value  for  the kill character is
                         taken to be the terminal's kill character.
                         line''  mode, then this character is taken to be the ter-
                         minal's reprint character.  The initial value for the re-
                         print  character  is  taken  to be the terminal's reprint
                         character.

                  rlogin This is the rlogin escape character.  If set, the  normal
                         TELNET  escape character is ignored unless it is preceded
                         by this character at the beginning of a line.  This char-
                         acter,  at  the  beginning  of  a  line followed by a "."
                         closes the connection; when followed by a ^Z it  suspends
                         the  telnet command.  The initial state is to disable the
                         rlogin escape character.

                  start  If  the  TELNET  TOGGLE-FLOW-CONTROL  option   has   been
                         enabled,  then  this  character is taken to be the termi-
                         nal's start character.  The initial value  for  the  kill
                         character  is taken to be the terminal's start character.

                  stop   If  the  TELNET  TOGGLE-FLOW-CONTROL  option   has   been
                         enabled,  then  this  character is taken to be the termi-
                         nal's stop character.  The initial  value  for  the  kill
                         character is taken to be the terminal's stop character.

                  susp   If  telnet is in localchars mode, or LINEMODE is enabled,
                         and  the  suspend  character  is  typed,  a  TELNET  SUSP
                         sequence  (see  send  susp  above)  is sent to the remote
                         host.  The initial value for  the  suspend  character  is
                         taken to be the terminal's suspend character.

                  tracefile
                         This  is  the file to which the output, caused by netdata
                         or option tracing being TRUE, will be written.  If it  is
                         set to ``-'', then tracing information will be written to
                         standard output (the default).

                  worderase
                         If telnet is operating  in  LINEMODE  or  ``old  line  by
                         line''  mode, then this character is taken to be the ter-
                         minal's worderase character.  The initial value  for  the
                         worderase   character  is  taken  to  be  the  terminal's
                         worderase character.

                  ?      Displays the legal set (unset) commands.

           slc state
                  The slc command (Set Local Characters) is used to set or  change
                  the state of the the special characters when the TELNET LINEMODE
                  option has been enabled.  Special characters are characters that
                  get  mapped  to  telnet commands sequences (like ip or quit ) or
                  line editing characters (like erase and kill).  By default,  the
                  local special characters are exported.

                  ?      Prints out help information for the slc command.

           status Show the current status of telnet.  This includes the  peer  one
                  is connected to, as well as the current mode.

           toggle arguments ...
                  Toggle  (between  TRUE and FALSE) various flags that control how
                  telnet responds to events.  These flags may be set explicitly to
                  TRUE  or  FALSE  using  the set and unset commands listed above.
                  More than one argument may be specified.   The  state  of  these
                  flags may be interrogated with the display command.  Valid argu-
                  ments are:

                  authdebug
                         Turns on debugging  information  for  the  authentication
                         code.

                  autoflush
                         If autoflush and localchars are both TRUE , then when the
                         ao, or quit characters are  recognized  (and  transformed
                         into TELNET sequences; see set above for details), telnet
                         refuses to display any data on the user's terminal  until
                         the  remote system acknowledges (via a TELNET TIMING MARK
                         option) that it has  processed  those  TELNET  sequences.
                         The initial value for this toggle is TRUE if the terminal
                         user had not done an "stty noflsh", otherwise FALSE  (see
                         stty(1).

                  autodecrypt
                         When  the TELNET ENCRYPT option is negotiated, by default
                         the actual encryption (decryption)  of  the  data  stream
                         does  not  start automatically.  The autoencrypt (autode-
                         crypt) command  states  that  encryption  of  the  output
                         (input) stream should be enabled as soon as possible.

                  Note:   Because of export controls, the TELNET ENCRYPT option is
                  not supported outside the United States and Canada.

                  autologin
                         If the remote side  supports  the  TELNET  AUTHENTICATION
                         option  telnet  attempts  to  use it to perform automatic
                         authentication.  If the AUTHENTICATION option is not sup-
                         ported,  the user's login name are propagated through the
                         TELNET ENVIRON option.  This command is the same as spec-
                         ifying the -a option on the open command.

                  autosynch
                         If  autosynch  and  localchars  are  both TRUE, then when
                         either the intr or quit  characters  is  typed  (see  set
                         above  for descriptions of the intr and quit characters),
                         the resulting TELNET sequence sent  is  followed  by  the

                  crlf   If this is TRUE, then carriage returns will  be  sent  as
                         <CR><LF>.   If  this is FALSE, then carriage returns will
                         be send as <CR><NUL>.  The initial value for this  toggle
                         is FALSE.

                  crmod  Toggle  carriage return mode.  When this mode is enabled,
                         most carriage return characters received from the  remote
                         host  will be mapped into a carriage return followed by a
                         line feed.  This mode does not  affect  those  characters
                         typed  by  the  user, only those received from the remote
                         host.  This mode is not very  useful  unless  the  remote
                         host  only  sends  carriage  return, but never line feed.
                         The initial value for this toggle is FALSE .

                  debug  Toggles socket level debugging (useful only to the  super
                         user).  The initial value for this toggle is FALSE .

                  encdebug
                         Turns on debugging information for the encryption code.

                  localchars
                         If this is TRUE , then the flush, interrupt, quit, erase,
                         and  kill  characters  (see  set  above)  are  recognized
                         locally,  and  transformed  into  (hopefully) appropriate
                         TELNET control sequences (respectively ao, ip,  brk,  ec,
                         and el; see send above).  The initial value for this tog-
                         gle is TRUE in ``old line by line'' mode,  and  FALSE  in
                         ``character  at  a time'' mode.  When the LINEMODE option
                         is enabled, the  value  of  localchars  is  ignored,  and
                         assumed  to  always  be  TRUE.  If LINEMODE has ever been
                         enabled, then quit is sent as abort, and eof and  suspend
                         are sent as eof and susp, see send above).

                  netdata
                         Toggles  the  display of all network data (in hexadecimal
                         format).  The initial value for this toggle is FALSE.

                  options
                         Toggles the display of some internal telnet protocol pro-
                         cessing  (having to do with TELNET options).  The initial
                         value for this flag is FALSE .

                  prettydump
                         When the  netdata  flag  is  enabled,  if  prettydump  is
                         enabled  the output from the netdata command will be for-
                         matted in a more user-readable format.   Spaces  are  put
                         between  each  character in the output, and the beginning
                         of any TELNET escape sequence is preceded by a '*' to aid
                         in locating them.

                  skiprc When the skiprc flag is TRUE, TELNET skips the reading of

                  ?      Displays the legal toggle commands.

           z      Suspend  telnet.   This command only works when the user's shell
                  is csh(1).

           ! [command]
                  Execute a single command in a subshell on the local system.   If
                  command is omitted, then an interactive subshell is invoked.

           ? command
                  Get  help.  With no arguments, prints a help summary.  If a com-
                  mand is specified, will print the help information for just that
                  command.

## ENVIRONMENT

           Telnet  uses  at  least  the HOME, SHELL, DISPLAY, and TERM environment
           variables.  Other environment variables may be propagated to the  other
           side via the TELNET ENVIRON option.

## FILES

           ~/.telnetrc  user-customized telnet startup values
           ~/.k5login   (on remote host) - file containing Kerberos princi-
                        pals that are allowed access.

## HISTORY

           The Telnet command appeared in 4.2BSD.

## NOTES

           On some remote systems, echo has to be turned off manually  when
           in ``old line by line'' mode.

           In  ``old  line  by  line''  mode or LINEMODE the terminal's eof
           character is only recognized (and sent  to  the  remote  system)
           when it is the first character on a line.

                                                                         TELNET(1)