telnet(1)

๐Ÿ“ฆ
version 2.8 ยท 2 versions
, in debian trixie, ubuntu questing, ubuntu resolute, ubuntu stonking

๐Ÿ’– telnet(1) โ€” the User's Reference Manual ๐Ÿ’–

okay bestie, this is the telnet(1) page from the User's Reference Manual ๐Ÿ“–โœจ it's the user interface to the TELNET protocol, so it's how you talk to another machine over the network ๐Ÿซถ

๐ŸŒธ NAME ๐ŸŒธ

telnet is a user interface to the TELNET protocol ๐Ÿ’…

๐Ÿฆ‹ SYNOPSIS ๐Ÿฆ‹

telnet [options ...] [host [port]]

โœจ DESCRIPTION โœจ

okay so the telnet command is how you communicate with another host using the TELNET protocol ๐Ÿ“ก if you run telnet with no host argument, it drops you into command mode, and you'll know because the prompt says telnet> ๐Ÿ’œ in this mode it accepts and runs the commands listed below. if you DO give it arguments, it just runs an open command with those arguments, so it's giving efficiency ๐Ÿ”ฅ

๐ŸŽ€ OPTIONS ๐ŸŽ€

  • -4, --ipv4 โ€” connect to hosts using IPv4 ๐ŸŒ
  • -6, --ipv6 โ€” connect to hosts using IPv6 ๐ŸŒˆ
  • -8, --binary โ€” sets up an 8-bit data path โœจ this tries to negotiate the TELNET BINARY option on both input and output, so both directions get the binary treatment ๐Ÿ’…
  • -L, --binary-output โ€” sets up an 8-bit data path on output only ๐Ÿฆ‹ this makes the BINARY option get negotiated on output
  • -e, --escape escape-char โ€” sets the starting telnet escape character to escape-char ๐Ÿช„ if you leave escape-char out, there won't be an escape character at all ๐Ÿ™ˆ
  • -E, --no-escape โ€” stops ANY character from being recognized as an escape character, no exceptions ๐Ÿšซ
  • -a, --login โ€” tries automatic login ๐Ÿ”‘ right now this sends your user name through the USER variable of the ENVIRON option, but only if the remote system supports it ๐Ÿ’– the name it uses is whatever getlogin(2) returns, as long as that agrees with your current user ID; otherwise it uses the name tied to your user ID
  • -K, --no-login โ€” no automatic login to the remote system, bestie, you'll have to do it yourself ๐Ÿ™…โ€โ™€๏ธ
  • -l, --user user โ€” when you connect, if the remote system understands the ENVIRON option, user gets sent over as the value for the USER variable ๐Ÿ‘‘ this option implies -a, and you can also use it with the open command
  • -n, --trace tracefile โ€” opens tracefile so it can record trace information ๐Ÿ“ see the set tracefile command below for more
  • -r, --rlogin โ€” gives you a user interface that's similar to rlogin(1) ๐ŸŽ€ in this mode the escape character is set to the tilde (~) character, unless you change it with -e
  • -c, --no-rc โ€” turns off reading of your .telnetrc file ๐Ÿ™ˆ (check out the toggle skiprc command on this page for the deets)
  • -d, --debug โ€” sets the starting value of the debug toggle to TRUE ๐Ÿ›
  • -x, --encrypt โ€” turns on encryption of the data stream, if it's possible ๐Ÿ”
  • -X, --disable-auth atype โ€” disables the atype type of authentication ๐Ÿšซ
  • -k, --realm realm โ€” if you're using Kerberos authentication, this asks telnet to get tickets for the remote host in realm realm, instead of the remote host's realm as figured out by krb_realmofhost(3) ๐Ÿ‘‘
  • host โ€” the official name, an alias, or the Internet address of a remote host ๐ŸŒธ
  • port โ€” a port number (basically the address of an application) ๐Ÿงš if you don't specify one, the default telnet port gets used

๐ŸŒˆ OPERATION ๐ŸŒˆ

๐ŸŽ€ rlogin mode ๐ŸŽ€

okay so when you're in rlogin mode, a line of the form ~. disconnects you from the remote host ๐Ÿ’€ (the ~ is the telnet escape character). the line ~^Z suspends your telnet session, and the line ~^] escapes you to the normal telnet escape prompt ๐Ÿซถ

๐Ÿ’… LINEMODE and input modes ๐Ÿ’…

once a connection is open, telnet will try to enable the TELNET LINEMODE option โœจ if that fails, telnet falls back 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 happens on your local system, but the remote system is the one in charge ๐Ÿ‘‘ if input editing or character echoing needs to be turned off, the remote system tells you about it. it also relays any changes to special characters that happen on the remote side, so those changes can take effect locally too ๐Ÿ”ฅ

in "character at a time" mode, most of the text you type gets sent to the remote host right away for processing โšก

in "old line by line" mode, all text is echoed locally, and (normally) only completed lines get sent to the remote host ๐Ÿ“ the "local echo character" (starts out as ^E) lets you turn local echo on and off ๐Ÿ™ˆ this is mostly used for typing in passwords without them showing up on screen ๐Ÿ”’

โš ๏ธ if LINEMODE is enabled, OR the localchars toggle is TRUE (which is the default for "old line by line", see below), your quit, intr, and flush characters get trapped locally and sent to the remote side as TELNET protocol sequences ๐Ÿ’€ if LINEMODE has EVER been enabled, your susp and eof get sent as TELNET protocol sequences too, and quit is sent as a TELNET ABORT instead of BREAK ๐Ÿ˜ญ there are options (see toggle autoflush and toggle autosynch below) that make this action flush any later output to the terminal (until the remote host acknowledges the TELNET sequence) and flush previous terminal input (for quit and intr)

๐Ÿงš command mode ๐Ÿงš

while you're connected to a remote host, you can get into telnet command mode by typing the telnet "escape character" (starts out as ^]) โœจ once you're in command mode, the normal terminal editing conventions are available to you ๐Ÿ’–

the following telnet commands are available ๐ŸŒธ you only need to type enough of each command to uniquely identify it (this goes for arguments to the mode, set, toggle, unset, slc, environ, and display commands too) ๐Ÿ’…

auth argument ... ๐Ÿ”‘

the auth command messes with the information sent through the TELNET AUTHENTICATE option ๐Ÿ” these are the valid arguments:

  • disable type โ€” disables the specified type of authentication ๐Ÿšซ to see a list of available types, use auth disable ?
  • enable type โ€” enables the specified type of authentication โœ… to see a list of available types, use auth enable ?
  • status โ€” lists the current status of the various types of authentication ๐Ÿ“‹

close ๐Ÿšช

closes a TELNET session and sends you back to command mode ๐Ÿซถ

display argument ... ๐Ÿ–ฅ๏ธ

displays all, or some, of the set and toggle values (see below) โœจ

encrypt argument ... ๐Ÿ”

the encrypt command messes with the information sent through the TELNET ENCRYPT option ๐Ÿ’œ

โš ๏ธ heads up: because of export controls, the TELNET ENCRYPT option is NOT supported outside of the United States and Canada ๐ŸŒŽ no cap

these are the valid arguments for encrypt:

  • disable type [input|output] โ€” disables the specified type of encryption ๐Ÿšซ if you leave out input and output, both get disabled. to see a list of available types, use encrypt disable ?
  • enable type [input|output] โ€” enables the specified type of encryption โœ… if you leave out input and output, both get enabled. to see a list of available types, use encrypt enable ?
  • input โ€” the same as encrypt start input ๐Ÿ“ฅ
  • -input โ€” the same as encrypt stop input ๐Ÿ“ค
  • output โ€” the same as encrypt start output ๐Ÿ“ค
  • -output โ€” the same as encrypt stop output ๐Ÿ“ฅ
  • start [input|output] โ€” tries to start encryption ๐Ÿ”’ if you leave out input and output, both get enabled. to see a list of available types, use encrypt enable ?
  • status โ€” lists the current status of encryption ๐Ÿ“‹
  • stop [input|output] โ€” stops encryption ๐Ÿ›‘ if you leave out input and output, encryption is stopped on both input and output
  • type type โ€” sets the default type of encryption to be used with later encrypt start or encrypt stop commands ๐ŸŽฏ

environ arguments... ๐ŸŒˆ

the environ command is for messing with the variables that can be sent through the TELNET ENVIRON option โœจ the starting set of variables comes from your user's environment, and only the DISPLAY and PRINTER variables get exported by default ๐Ÿ’– the USER variable gets exported too if you use the -a or -l options ๐Ÿ‘‘

these are the valid arguments for environ:

  • define variable value โ€” defines the variable variable to have a value of value ๐ŸŒธ anything defined with this command gets exported automatically ๐Ÿฆ‹ the value can be wrapped in single or double quotes so tabs and spaces can be included
  • undefine variable โ€” removes variable from the list of environment variables ๐Ÿ—‘๏ธ
  • export variable โ€” marks the variable variable to be exported to the remote side ๐Ÿ“ค
  • unexport variable โ€” marks the variable variable to NOT be exported, unless the remote side explicitly asks for it ๐Ÿ™…โ€โ™€๏ธ
  • list โ€” lists the current set of environment variables ๐Ÿ“‹ the ones marked with a * will be sent automatically, and the other variables will only be sent if they're explicitly requested ๐Ÿ’…
  • ? โ€” prints out help information for the environ command ๐Ÿ†˜

๐Ÿ’Œ logout

okay so logout sends the TELNET LOGOUT option to the remote side ๐Ÿšชโœจ It's basically a close vibe, BUT if the remote side doesn't support LOGOUT, nothing happens ๐Ÿ™ˆ If it does support it, this should make the remote side close the TELNET connection ๐Ÿ’€ And if the remote side can also suspend your session so you can jump back in later, logout tells it to end the session right away. no cap, it's giving finality ๐Ÿ˜ญ

๐ŸŽ€ mode type

okay this one is so good ๐Ÿ”ฅ mode takes a type, and which types you get depends on what state your TELNET session is in ๐Ÿฆ‹ You ask the remote host for permission to switch into the mode you picked. If the host can handle that mode, you're in โœจ

  • character โ€” disables the TELNET LINEMODE option. If the remote side doesn't understand LINEMODE at all, you get "character at a time" mode instead ๐Ÿ’–
  • line โ€” enables the TELNET LINEMODE option. If the remote side doesn't understand LINEMODE, it tries "old-line-by-line" mode ๐ŸŒธ
  • isig (-isig) โ€” tries to turn the TRAPSIG mode of LINEMODE on (or off with -isig) ๐Ÿงš This only works if LINEMODE is already enabled
  • edit (-edit) โ€” tries to turn the EDIT mode of LINEMODE on (or off with -edit) ๐Ÿ’… Same deal: LINEMODE has to be enabled first
  • softtabs (-softtabs) โ€” tries to turn the SOFT_TAB mode of LINEMODE on (or off with -softtabs) ๐Ÿ“ LINEMODE must already be on
  • litecho (-litecho) โ€” tries to turn the LIT_ECHO mode of LINEMODE on (or off with -litecho) ๐ŸŒˆ LINEMODE must be enabled for this one too
  • ? โ€” prints out help info for the mode command ๐Ÿซถ

๐ŸŒธ open

open host [[-l] user][- port]

okay this is the big one, bestie ๐Ÿ’œ open connects you to the named host โœจ If you don't give a port, telnet tries the default TELNET server port ๐Ÿฆ‹ The host can be a host name (check out hosts(5)) or an Internet address in "dot notation" (see inet(3)) ๐ŸŒŸ

The [-l] option lets you pass a user name to the remote system through the ENVIRON option ๐ŸŽ€ Heads up: when you connect to a non-standard port, telnet skips the automatic starting of TELNET options ๐Ÿ’€ But if you put a minus sign in front of the port number, the initial option negotiation does happen ๐Ÿ˜ญ

Once you're connected, telnet opens the file .telnetrc in your home directory ๐Ÿ“‚ Lines starting with a # are comments and get ignored ๐Ÿ™ˆ Blank lines also get skipped ๐Ÿซง A line that starts with no whitespace is the start of a machine entry, and the first thing on that line is the name of the machine you're connecting to ๐Ÿ–ฅ๏ธ The rest of that line, plus any lines after it that start with whitespace, are treated as telnet commands and get run just like you typed them at the telnet command prompt ๐Ÿงšโœจ

๐Ÿ‘‹ quit

quit closes any open TELNET session and exits telnet ๐Ÿ‘‹ An end of file (in command mode) does the same thing, so it closes the session and exits too ๐Ÿ’…

๐Ÿ“จ send

send arguments

send fires off one or more special character sequences to the remote host ๐Ÿ’Œ You can pass more than one argument at a time, and these are your options:

  • abort โ€” sends the TELNET ABORT (Abort processes) sequence ๐Ÿ’ฅ
  • ao โ€” sends the TELNET AO (Abort Output) sequence ๐ŸŒŠ This should make the remote system flush all its output to your terminal
  • ayt โ€” sends the TELNET AYT (Are You There) sequence ๐Ÿ‘€ The remote system may or may not answer, no pressure ๐Ÿ™ˆ
  • brk โ€” sends the TELNET BRK (Break) sequence ๐Ÿซจ It might mean something to the remote system
  • ec โ€” sends the TELNET EC (Erase Character) sequence โœ๏ธ This should make the remote system erase the last character you entered
  • el โ€” sends the TELNET EL (Erase Line) sequence ๐Ÿงน This should make the remote system erase the line you're currently typing
  • eof โ€” sends the TELNET EOF (End Of File) sequence ๐Ÿ”š
  • eor โ€” sends the TELNET EOR (End of Record) sequence ๐Ÿ“ผ
  • escape โ€” sends the current telnet escape character (starts out as ^) ๐Ÿฆ„
  • ga โ€” sends the TELNET GA (Go Ahead) sequence ๐Ÿšฆ It probably doesn't mean anything to the remote system, lowkey
  • getstatus โ€” if the remote side supports the TELNET STATUS command, this sends the subnegotiation asking the server for its current option status ๐Ÿ“Š
  • ip โ€” sends the TELNET IP (Interrupt Process) sequence โœ‹ This should make the remote system abort whatever process is running right now
  • nop โ€” sends the TELNET NOP (No OPeration) sequence ๐Ÿ˜ด
  • susp โ€” sends the TELNET SUSP (SUSPend process) sequence โธ๏ธ
  • synch โ€” sends the TELNET SYNCH sequence ๐Ÿงผ This makes the remote system throw away all the input it has been sent but hasn't read yet. It goes out as TCP urgent data, and it might not work if the remote system is a 4.2BSD system. If it doesn't work, you might see a lower case โ€œrโ€ echoed on your terminal ๐Ÿ™ˆ
  • do cmd, dont cmd, will cmd, wont cmd โ€” sends the TELNET DO, DONT, WILL, or WONT sequence for cmd ๐ŸŽ€ The cmd can be a decimal number from 0 to 255, or a symbolic name for a specific TELNET command. You can also pass help or ? as the cmd to print help info, including a list of the known symbolic names ๐Ÿ“œ
  • ? โ€” prints out help info for the send command ๐Ÿ’–

โš™๏ธ set and unset

set argument value
unset argument value

okay so set turns any one of a bunch of telnet variables into a specific value, or into TRUE โœจ The special value off turns off the function tied to that variable, and it does the same thing as unset ๐Ÿซถ unset disables the specified functions, or sets them to FALSE ๐ŸŒ™ You can check what a variable's value is with the display command ๐Ÿ‘€ The variables that can be set or unset (but not toggled) are listed below. You can also explicitly set or unset any of the toggle variables using set and unset ๐Ÿ’…

  • ayt โ€” if TELNET is in localchars mode, or LINEMODE is enabled, and you type the status character, a TELNET AYT sequence (see send ayt above) gets sent to the remote host ๐Ÿ‘€ The starting value for the "Are You There" character is your terminal's status character
  • echo โ€” this is the character (starts out as โ€œ^Eโ€) that, when you're in "line by line" mode, switches between local echoing of what you type (normal stuff) and not echoing it at all (handy for typing a password ๐Ÿ”)
  • eof โ€” if telnet is running in LINEMODE or "old line by line" mode, typing this character as the first thing on a line sends it to the remote system ๐Ÿ”š The starting value is your terminal's eof character
  • erase โ€” if telnet is in localchars mode (see toggle localchars below) and it's running in "character at a time" mode, typing this character sends a TELNET EC sequence (see send ec above) to the remote system โœ๏ธ The starting value is your terminal's erase character
  • escape โ€” this is the telnet escape character (starts out as โ€œ^[โ€) that jumps you into telnet command mode while you're connected to a remote system ๐Ÿฆ‹
  • flushoutput โ€” if telnet is in localchars mode (see toggle localchars below) and you type the flushoutput character, a TELNET AO sequence (see send ao above) gets sent to the remote host ๐ŸŒŠ The starting value is your terminal's flush character
  • forw1, forw2 โ€” if TELNET is running in LINEMODE, these are the characters that, when typed, forward partial lines to the remote system ๐Ÿš€ Their starting values come from your terminal's eol and eol2 characters
  • interrupt โ€” if telnet is in localchars mode (see toggle localchars below) and you type the interrupt character, a TELNET IP sequence (see send ip above) gets sent to the remote host โœ‹ The starting value is your terminal's intr character

Okay so the set command keeps going, bestie, and it's giving control freak energy ๐Ÿ’…

  • kill โ€” ๐Ÿ”ช If telnet is in localchars mode (see toggle localchars below) and it's running in "character at a time" mode, typing this character sends a TELNET EL sequence (see send el above) to the remote system. Its starting value is whatever your terminal's kill character is.
  • lnext โ€” โœ๏ธ If telnet is in LINEMODE or "old line by line" mode, this character is treated as the terminal's lnext character. Its starting value is also your terminal's lnext character.
  • quit โ€” ๐Ÿ›‘ If telnet is in localchars mode (see toggle localchars below) and you type the quit character, a TELNET BRK sequence (see send brk above) gets sent to the remote host. Its starting value is your terminal's quit character.
  • reprint โ€” ๐Ÿ” If telnet is in LINEMODE or "old line by line" mode, this character is treated as the terminal's reprint character. Its starting value is your terminal's reprint character.
  • rlogin โ€” ๐Ÿงš This is the rlogin escape character. Once it's set, the normal TELNET escape character gets ignored unless it's preceded by this character at the start of a line. Typing this at the start of a line followed by a . closes the connection, and followed by ^Z it suspends the telnet command. Starts out disabled.
  • start โ€” โ–ถ๏ธ If the TELNET TOGGLE-FLOW-CONTROL option has been enabled, this character is treated as the terminal'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, this character is treated as the terminal'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 you type the suspend character, a TELNET SUSP sequence (see send susp above) gets sent to the remote host. Its starting value is your terminal's suspend character.
  • tracefile โ€” ๐Ÿ“ This is the file where output from netdata or option tracing (when set to TRUE) gets written. If it's set to -, tracing info goes to standard output, which is the default.
  • worderase โ€” ๐Ÿซง If telnet is in LINEMODE or "old line by line" mode, this character is treated as the terminal's worderase character. Its starting value is your terminal's worderase character.
  • ? โ€” ๐Ÿ™‹ Shows you the legal set (unset) commands.

โœจ slc state โœจ

The slc command (Set Local Characters) is how you set or change the state of the special characters when the TELNET LINEMODE option is enabled. Special characters are the ones that get mapped to TELNET command sequences (like ip or quit) or line editing characters (like erase and kill). By default, the local special characters get exported ๐Ÿซถ

  • check โ€” ๐Ÿ” Double-checks the current settings for the current special characters. The remote side gets asked to send all of its special character settings, and if anything doesn't match the local side, the local side switches over to the remote value.
  • export โ€” ๐Ÿ“ค Switches to the local defaults for the special characters. Those are the ones your local terminal had when telnet started.
  • import โ€” ๐Ÿ“ฅ Switches to the remote defaults for the special characters. Those are the ones the remote system had when the TELNET connection was set up.
  • ? โ€” ๐Ÿ’ Prints out help info for the slc command.

๐Ÿ“ก status

Shows you the current status of telnet, bestie! It tells you which peer you're connected to and what mode you're in ๐Ÿ‘€

๐ŸŽ›๏ธ toggle arguments ...

Toggle (flipping between TRUE and FALSE) lets you flip all kinds of flags that control how telnet responds to events. You can explicitly set these flags to TRUE or FALSE with the set and unset commands listed above. You can pass more than one argument at once, and you can check the state of these flags with the display command. Here are the valid arguments:

  • authdebug โ€” ๐Ÿ•ต๏ธ Turns on debugging info for the authentication code.
  • autoflush โ€” ๐ŸŒŠ If autoflush and localchars are both TRUE, then when the ao or quit characters are recognized (and turned into TELNET sequences; see set above for the details), telnet won't display any data on your terminal until the remote system acknowledges (via the TELNET TIMING MARK option) that it has processed those sequences. This toggle starts out TRUE if the terminal user hasn't run stty noflsh, and FALSE otherwise (see stty(1)).
  • autodecrypt โ€” ๐Ÿ” When the TELNET ENCRYPT option gets negotiated, the actual encryption (decryption) of the data stream doesn't kick in automatically by default. The autoencrypt (autodecrypt) command says that encryption of the output (input) stream should be turned on as soon as possible.
โš ๏ธ Note: Because of export controls, the TELNET ENCRYPT option isn't supported outside the United States and Canada.
  • autologin โ€” ๐Ÿชช If the remote side supports the TELNET AUTHENTICATION option, telnet tries to use it for automatic authentication. If AUTHENTICATION isn't supported, your login name gets passed along through the TELNET ENVIRON option. This command does the same thing as specifying an -a option on the open command.
  • autosynch โ€” ๐Ÿ”„ If autosynch and localchars are both TRUE, then when either the intr or quit character is typed (see set above for descriptions of those), the resulting TELNET sequence gets followed by the TELNET SYNCH sequence. This should make the remote system start throwing away all previously typed input until both TELNET sequences have been read and acted on. This toggle starts out FALSE.
  • binary โ€” ๐Ÿค– Enables or disables the TELNET BINARY option on both input and output.
  • inbinary โ€” ๐Ÿ“ฅ Enables or disables the TELNET BINARY option on input.
  • outbinary โ€” ๐Ÿ“ค Enables or disables the TELNET BINARY option on output.
  • crlf โ€” โ†ฉ๏ธ If this is TRUE, carriage returns get sent as <CR><LF>. If it's FALSE, carriage returns get sent as <CR><NUL>. This toggle starts out FALSE.
  • crmod โ€” ๐ŸŽ€ Toggles carriage return mode. When this mode is enabled, most carriage return characters received from the remote host get mapped into a carriage return followed by a line feed. This mode doesn't touch what you type, only what's received from the remote host. It's not super useful unless the remote host only sends carriage return and never line feed. This toggle starts out FALSE.
  • debug โ€” ๐Ÿ› Toggles socket level debugging, which is only useful to the super user ๐Ÿ‘‘ This toggle starts out FALSE.
  • encdebug โ€” ๐Ÿ” Turns on debugging info for the encryption code.
  • localchars โ€” ๐Ÿ”‘ When this is TRUE, the flush, interrupt, quit, erase, and kill characters (see set above) get caught locally and swapped for (hopefully) the right TELNET control sequences: ao, ip, brk, ec, and el, respectively (see send above). The starting value is TRUE in "old line by line" mode and FALSE in "character at a time" mode. If the LINEMODE option is turned on, the value of localchars gets ignored and is treated as always TRUE. And 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 โ€” ๐ŸŒŠ Flips the display of all network data on and off, shown in hexadecimal. It starts out FALSE.
  • options โ€” ๐Ÿง  Flips the display of some of the behind-the-scenes TELNET protocol stuff (the TELNET options stuff). It starts out FALSE.
  • prettydump โ€” ๐ŸŽ€ When netdata is on, turning prettydump on makes the netdata output way easier to read. There are spaces between every character, and any TELNET escape sequence gets a * in front so you can spot them easily. ๐Ÿฆ‹
  • skiprc โ€” ๐Ÿ™ˆ When skiprc is TRUE, TELNET skips reading the .telnetrc file in your home directory whenever it opens a connection. It starts out FALSE.
  • termdata โ€” ๐Ÿ“ Flips the display of all terminal data on and off, in hexadecimal. It starts out FALSE.
  • verbose_encrypt โ€” ๐Ÿ” When this is TRUE, TELNET prints a message every time encryption gets turned on or off. It starts out FALSE.
โš ๏ธ Heads up, bestie! Because of export controls, data encryption is not supported outside of the United States and Canada. ๐Ÿ˜ญ
  • ? โ€” ๐Ÿ™‹ Shows you the legal toggle commands.
  • z โ€” ๐Ÿ˜ด Suspends telnet. This only works when you're using csh(1).
  • ! [command] โ€” ๐Ÿš Runs a single command in a subshell on the local system. If you leave command out, you get an interactive subshell instead.
  • ? [command] โ€” ๐Ÿ†˜ Help, obviously! With no arguments, telnet prints a help summary. If you name a command, you get the help info for just that one. ๐Ÿงš

๐ŸŒ ENVIRONMENT ๐ŸŒ

okay so telnet uses at least the HOME, SHELL, DISPLAY, and TERM environment variables. โœจ Other environment variables can get passed along to the other side through the TELNET ENVIRON option. Cute, right? ๐Ÿ’œ


๐Ÿ“ FILES ๐Ÿ“

  • ~/.telnetrc โ€” your personal telnet startup values, customized just for you ๐ŸŽ€

๐Ÿ“œ HISTORY ๐Ÿ“œ

The telnet command first showed up in 4.2BSD. Iconic. ๐Ÿ‘‘


๐Ÿ“ NOTES ๐Ÿ“

okay bestie, on some remote systems you have to turn echo off by hand when you're in "old line by line" mode. Annoying, but you got this! ๐Ÿ™„

In "old line by line" mode or LINEMODE, the terminal's eof character only gets recognized (and sent to the remote system) when it's the very first character on a line. So no sneaking it in halfway through, fr fr. ๐Ÿ’€


Thanks for sticking with me through the whole telnet glow-up, bestie! ๐Ÿซถ This page came from GNU Network Utilities, dated February 9, 2019, and it's all about telnet(1). Periodt. ๐Ÿ’–โœจ

๐Ÿ“ฆ where this page comes from