| TELNET(1) | General Commands Manual | TELNET(1) |
NAME¶
telnet TELNET
프로토콜을 이용한
사용자 인터페이스
사용법¶
telnet [-d]
[-a] [-n
추적파일]
[-e escape문자]
[[-l
사용자ID]
호스트 [포트]]
설명¶
telnet 명령은 TELNET
프로토콜을 이용해서
다른 호스트에
접속하고, 그 호스트를
사용하는데 사용된다.
만약, telnet 명령을
실행할 때,
호스트 인자를
지정하지 않으면,
(telnet>) 이라는
프롬프트가 나타나고,
이때부터, telnet 명령을
사용할 수 있는 상태가
된다. 이 모드에서는
다음에서 설명할
명령들을 입력하고,
그것을 실행한다. 한편,
호스트 인자가
사용되면, 그 호스트를
대상으로 open
명령이 실행된다.
옵션:
-ddebug초기값을TRUE값으로 지정한다.-a- 자동 접속 시도.
일반적으로, 이
옵션은 리모트
시스템에 의해서
지원되는
ENVIRON옵션의USER변수를 통해 사용자ID를 보낸다. 여기서 사용되는 사용자ID는 getlogin(2) 함수에서 리틴되는 값이다. 이것은-l옵션의 인자로 지정한 사용자ID 이거나, 이 옵션을 사용하지 않는다면, 현재 사용자 ID이다. -n추적파일- 추적 정보를 사용하는
추적파일
인자로 지정한 파일을
연다. 아래,
set tracefile명령 참조. -l사용자ID- 리모트 시스템에
접속을 할 때, 리모트
시스템에서
ENVIRON옵션을 사용한다면, username 프롬프트에 입력할 사용자ID를 USER 환경변수값으로 사용한다. 이 옵션은-a옵션을 포함한다. 또한,open명령에서도 그대로 사용할 수 있다. -eescape문자- telnet 프롬프트로
빠져나오는 문자를
escape문자 로
지정한다. 만약
escape문자 값을
지정하지 않고 단지
-e옵션만 사용되면, `escape off'로 된다. - 호스트
- 접속할 호스트. 인터넷 주소형식으로 사용된다.
- 포트
- 접속에 이용할
호스트의 포트.
지정되지 않으면,
telnet에서 사용되는 초기값이 사용된다.(23번 포트인가?)
리모트 호스트와
연결이 되면, telnet
풀그림은 TELNET LINEMODE
옵션을 사용가능
상태로 하려고 시도할
것이다. 만약 이것이
실패하면, telnet
풀그림은 다음 두 입력
모드 중 하나를
선택한다: 하나는 “character
at a time” 이고 다른 하나는
“old line by line” 인데, 이것은
리모트 시스템이 어느
것을 지원하느냐에
달려있다.
LINEMODE 옵션이
가능상태가 되면,
문자처리는 리모트
시스템의 관리(control)아래,
로칼 시스템에서
처리된다. 입력
편집하기, 또는 문자
반향하기(echoing) 기능이
사용불가 생되로 되어
있을 때, 리모트
시스템은 그 정보를
로칼 시스템에 relay(전달?)
할 것이다. 또한 리모트
시스템은 리모트
시스템에서 발생한
어떤 특별한 문자로
바뀐 것을 전달한다.
그래서, 그 바뀐
내용들이 로칼
시스템에 영향을
끼치도록 한다.
“character at a time” 모드에서는, 사용자가 글쇠판에서 친 내용들 대부분이 즉시 그 처리를 위해 즉시 리모트 시스템으로 보내진다.
“old line by line” 모드에서는, 모든 텍스트가 지역적으로 반향(echo)된다. 그리고 (보통) 완벽한 한 줄만이 리모트 시스템에 보내진다. 이 모드에서는 “로칼 에코 문자” (초기값: “^E”)로 로칼 에코 기능을 사용하거나 사용하지 않을 수 있다. (대부분, 비밀번호를 입력할 때, 그것을 반향하지 않도록 하기 위해서 사용된다.)
LINEMODE 옵션이
사용가능 상태가
되거나, localchars
토클이 TRUE 값을
가지면 (“old line by line“의
초기값; 아래 참조),
사용자의 quit,
intr, flush
문자가 지역적으로
trap(가로채기) 되어지고,
TELNET 프로토콜 처리로
리모트 시스템에
보내진다. LINEMODE
옵션이 사용 불가
상태이면, 사용자의
susp (보류-suspend)
eof (파일 끝)
신호가 TELNET 프로토콜
처리로 리모트
시스템에 보내질 수
있으며, quit
신호는 BREAK
대신에 TELNET ABORT 로
보내진다. 이 모드와
관계되는 옵션은
toggle autoflush 와
toggle autosynch
옵션이 있다(아래
참조).
리모트 호스트에
연결 되어 있을 때는,
telnet “escape 문자”
(초기값: “^]”)를
사용해서 telnet
프롬프트 상태로
진입할 수 있다 -
이때를 명령 모드라
한다. 명령 모드일
때는, 일반 터미날 편집
방식이 사용가능
상태가 된다.
명령 모드에서
사용할 수 있는
telnet 명령은
다음과 같다. 대부분 그
명령만으로 사용이
가능하며, mode,
set, toggle,
unset, slc,
environ, display
명령들은 그 명령에
대한 인자를 지정해야
한다.
close- TELNET 세션을 끝내고, 명령 모드로 돌아온다.
display인자 ...set과toggle값들(아래 참조)을 전부 또는 일부 보여준다.mode형태- 형태 인자로
쓰일 수 있는 것은
다음 중 하나이며,
이것은 TELNET 세션의
상태에 따라 달라 질
수 있다. 이 명령은
지정한 모드를 사용할
수 있도록 리모트
호스트에 요청하며,
그것이 리모트
호스트에서
받아들여지면, 그
지정한 모드가
사용된다.
characterTELNET LINEMODE옵션을 사용불가 상태로 지정한다. 또는 리모트 쪽에서LINEMODE옵션을 지원하지 않으면, “character at a time” 모드로 지정된다.lineTELNET LINEMODE옵션을 사용가능 상태로 지정한다. 리모트 쪽에서LINEMODE옵션을 지원하지 않으면, “old-line-by-line” 모드로 지정된다.isig(-isig)LINEMODE옵션의TRAPSIG모드를 사용가능 (사용불가) 상태로 지정한다. 이것은LINEMODE옵션이 먼저 사용가능 상태여야 지정할 수 있다.edit(-edit)LINEMODE옵션의EDIT모드를 사용가능 (사용불가) 상태로 지정한다. 이것은LINEMODE옵션이 먼저 사용가능 상태여야 지정할 수 있다.softtabs(-softtabs)LINEMODE옵션의SOFT_TAB모드를 사용가능 (사용불가) 상태로 지정한다. 이것은LINEMODE옵션이 먼저 사용가능 상태여야 지정할 수 있다.litecho(-litecho)LINEMODE옵션의LIT_ECHO모드를 사용가능 (사용불가) 상태로 지정한다. 이것은LINEMODE옵션이 먼저 사용가능 상태여야 지정할 수 있다.?mode명령 사용법을 보여준다.
open호스트 [[-l] 사용자ID][-포트]- 지정한 호스트
로 접속한다.
포트 를
지정하지 않으면,
초기값으로 지정된 TELNET
서버 포트를
사용한다.
호스트 인자로
사용할 수 있는 값은
호스트 이름 ( hosts(5)
참조 ) 이거나,
“점(.)으로 구분된”
인터넷 주소 ( inet(3)
참조 ) 가 지정될 수
있다. 리모트
호스트에서
ENVIRON옵션을 사용할 수 있다면, [-l] 옵션을 사용해서, username(login) 프롬프트를 통과 할 수 있다. 표준 포트가 아닌 포트로 접속을 할 경우에는,telnet풀그림은 TELNET 옵션의 자동 초기화를 생략한다. 포트 번호 앞에 빼기(`-') 문자가 오면, 그 옵션의 자동 초기를 실행한다. 리모트 호스트에 접속이 되면, 홈 디렉토리에 있는 .telnetrc 파일이 읽혀 진다. 이 파일에서는 `#' 문자로 시작하는 줄과 빈 줄은 무시되고, machine 부분(호스트지정 부분)은 줄 첫칸에 공백문자가 없어야한다. machine 부분에는 연결할 호스트의 이름을 적어 둔다. (`default'는 모든 호스트) 나머지 줄에는 그 호스트를 대상으로 한 telnet 명령이 지정되는데, 이것은 줄 첫칸에 공백문자가 있어야 한다. telnet 명령은 보통 telnet 명령 모드에서 사용자가 직접 입력한 그 내용을 그대로 적어주면 된다. quit- 리모트 호스트와의
접속을 끊고,
telnet풀그림을 마친다. (명령 모드에서) 파일 끝 문자(일반 적으로 `^D')도 그 세션을 끊고, 풀그림을 마친다. send인자- 하나 또는 그 이상의
특수 문자를 리모트
호스트에 보낸다.
다음은 이 명령에서
사용될 수 있는
인자들이다. (또한
여러 인자들이 한번에
같이 사용될 수 있다.)
abortTELNET ABORT문자 보냄. (프로세스 중지)aoTELNET AO(Abort Output) 문자 보냄, 이것은 리모트 시스템에서 발생하는 모든 출력을 사용자의 터미날로 보내는(flush) 일을 한다.aytTELNET AYT(Are You There) 문자 보냄, 이것은 리모트 시스템에서 받아드려 질 수도 있고, 아닐 수도 있다.brkTELNET BRK(Break) 문자 보냄, 이것은 리모트 시스템에서 의미가 있을 수도 있다.ecTELNET EC(Erase Character) 문자 보냄, 이것은 리모트 시스템에 마지막으로 입력된 문자를 지우는 역할을 한다.elTELNET EL(Erase Line) 문자 보냄, 이것은 리모트 시스템에 현재 입력되어 있는 줄 전체를 지우는 역할을 한다.eofTELNET EOF(End Of File) 문자 보냄.eorTELNET EOR(End of Record) 문자 보냄.escape- 현재
telnetescape 문자 (초기값: “^”) 보냄. gaTELNET GA(Go Ahead) 문자 보냄, 이것은 리모트 시스템에 의미가 없을 수도 있다.getstatus- 리모트 쪽에서
TELNET STATUS명령을 지원한다면,getstatus문자를 보내면, 그 리모트 서버에서 현재 옵션 상태를 로칼 쪽으로 보낸다. ipTELNET IP(Interrupt Process) 문자를 보냄, 현재 리모트 시스템에서 실행 중인 프로세스를 중지한다.nopTELNET NOP(No OPeration, 무연산) 문자 보냄.suspTELNET SUSP(SUSPend process) 문자 보냄.synchTELNET SYNCH문자 보냄. 이 처리는 리모트 시스템이 이미 이전에 입력된 (하지만 아직 읽혀지지 않은) 모든 내용을 취소하도록 한다. 이것은 TCP urgent data 로 처리된다(만약, 리모트 시스템이 4.2BSD 시스템일 경우에는 바르게 동작하지 않을 수도 있다 -- 이때, 제대로 동작하지 않는다면, 터미날에 소문자 “r” 문자가 보여진다).?send명령에 대한 도움말을 보여준다.
set인자 인자값unset인자 인자값set명령은telnet변수들의 값을 특정 값으로 지정하거나, 아니면,TRUE값을 가지게 지정한다.off라는 특별 변수값은 그 변수와 연결되는 기능을 사용하지 못하게 한다. 이것은unset명령을 사용하는 효과와 같다.unset명령은 변수를 사용하지 못하게 하거나, 그 값을FALSE로 지정하는 역할을 한다. any of the specified functions. 변수에 지정된 값은display명령으로 살펴볼 수 있다. 다음 변수들은 set, unset 명령으로만 그 값을 지정하거나, 사용하지 않게 할 수 있으며, 아래,toggle명령에서 설명하고 있는 변수들은 set, unset 명령으로도 처리가 가능하다. (set, unset 명령은 변수 값을 특정 값으로 지정하거나, 아니면, 그 변수 자체를 사용하지 않으려고 할 때, 사용되지만, toggle 명령은 이미 있는 변수의 값을 ``on/off''하는 기능을 한다.)echo- “line by line” 모드에서 로칼 호스트의 사용자 입력을 에코 하는 것과 그렇지 않게 하는 것을 전환하는 글쇠. 초기값은 “^E”.
eof- 텔넷 세션이
LINEMODE옵션으로 운영되거나, “old line by line” 모드 상태에서, 입력 줄의 처칸에 이 글쇠를 입력하면, 리모트 시스템에 ``파일끝'' 문자를 보낸다. 초기값은 현재 사용하고 있는 터미날의eof문자를 그대로 사용한다.(일반적으로 ^D) erasetelnet풀그림이localchars모드 (아래togglelocalchars참조) 상태이고,telnet풀그림이 “character at a time” 모드로 운영될 때, 이 글쇠를 누르면,TELNET EC처리 (윗sendec참조)를 리모트 시스템에 보낸다. 초기값은 현재 터미날의erase문자와 같다. (일반적으로 ^H 문자나, 백스페이스, Delete 글쇠)escape- 리모트 호스트와의
연결 중에, 이 글쇠를
누르면,
telnet명령 모드로 진입한다. 초기값은 “^[”. flushoutputtelnet풀그림이localchars모드 (아래togglelocalchars참조) 상태일 때,flushoutput문자를 입력하면,TELNET AO처리 (윗sendao참조) 가 리모트 시스템에 보내진다. 초기값은 현재 터미날의flush문자와 같다.interrupttelnet풀그림이localchars모드 (아래togglelocalchars참조) 상태일 때,interrupt문자를 입력하면,TELNET IP처리 (윗sendip참조) 가 리모트 시스템에 보내진다. 초기값은 현재 터미날의intr문자와 같다.killtelnet풀그림이localchars모드 (아래togglelocalchars참조) 상태이고, “character at a time” 모드로 운영될 때, 이 글쇠를 누르면,TELNET EL처리 (윗sendel참조) 가 리모트 시스템에 보내진다. 초기값은 현재 터미날의kill문자와 같다.lnexttelnet풀그림이LINEMODE옵션 상태로 운영되거나, “old line by line“ 모드 일 때, 이 문자가 입력되면, 리모트 시스템에lnext문자를 보낸다. 초기값은 현재 터미날의lnext문자와 같다.quittelnet풀그림이localchars모드 (아래togglelocalchars참조) 일 때,quit문자가 입력되면,TELNET BRK처리 (윗sendbrk참조) 가 리모트 시스템으로 보내진다. 초기값은 현재 터미날의quit문자와 같다.reprintLINEMODE옵션이나, “old line by line“ 모드 상태 일 때, 이 문자가 입력되면, 리모트 시스템의reprint문자(화면 정리 문자)를 보낸다. 초기값은 현재 터미날의reprint문자와 같다.startTELNET TOGGLE-FLOW-CONTROL옵션이 사용가능 상태일 때, 이 문자를 입력하면, 리모트 시스템의start문자를 보낸다. 초기값은 현재 터미날의start문자(일반적으로 ``^Q'')와 같다.stopTELNET TOGGLE-FLOW-CONTROL옵션이 사용가능 상태일 때, 이 문자를 입력하면, 리모트 시스템의stop문자를 보낸다. 초기값은 현재 터미날의stop문자(일반적으로 ``^S'')와 같다.susptelnet풀그림이localchars모드 (아래togglelocalchars참조) 이거나,LINEMODE옵션이 사용 가능 상태일 때,suspend문자로 보낼 문자. 초기값은 현재 터미날의suspend문자와 같다.tracefilenetdata또는option추적 기능이TRUE일 때, 그 추적 내용이 이 파일에 쓰여진다. 이 값을 “-” 이렇게 지정하면, 추적 정보는 표준 출력(초기값)으로 보내진다.worderaseLINEMODE옵션으로 운영되거나, “old line by line“ 모드일 때, 이 문자가 입력되면, 리모트 시스템의worderase문자로 처리된다. 초기값은 현재 터미날의worderase문자와 같다.?set(unset) 명령의 도움말을 보여준다.
slcstateslc(Set Local Characters) 명령은TELNET LINEMODE옵션이 사용가능 상태일 때, 특수 문자들을 지정하거나 바꾸는데 사용된다. 여기서 특수 문자란 TELNET 명령어들 (ipquit같은 것)을 처리하는 문자나, 줄 편집 문자들 (erase또는kill같은 것)을 뜻한다. 이들 문자들의 초기값은 현재 사용하고 있는 터미날의 특수문자들을 그대로 사용한다.environ인자...environ명령은TELNET ENVIRON옵션에서 사용하는 각종 변수들을 관리하는데 사용된다. 각 변수들의 초기값은 그 사용자의 환경 변수들 값이 사용되며,DISPLAY와PRINTER변수 값은 현재 터미날의 변수값이 사용된다.USER변수값은-a또는-l옵션이 사용되었을 때, 리모트 호스트쪽으로 보내진다.
environ명려에서 사용할 수 있는 인자들은 다음과 같다:define변수 변수값- 변수 의 변수값 으로 지정한다. 이렇게 지정된 변수는 자동으로 리모트 호스트쪽에 지정된다. 변수값 지정에 있어, 공백문자가 있으면, 따움표로 묶어준다.
undefine변수- 지정한 변수 를 환경 변수 목록에서 지운다.
export변수- 리모트 쪽에 자동으로 보낼 변수 들을 표시한다.
unexport변수- 리모트 쪽에서 요구할 경우에 보낼 변수 로 바꾼다. (environ list 명령에서 ``*'' 표시가 있는 변수에서 그 표시를 없애는 기능을 한다.)
list- 현재 환경 변수들의
목록을 보여준다.
*표시가 있는 것은 자동으로 보내지는 것들이며, 나머지는 필요에 따라 보내지는 변수들이다. ?environ명령 도움말을 보여준다.
toggle인자들...- 이 명령은 telnet에서
사용하는 각종 on/off 되는
기능, 변수값들을
서로 전환하는데
사용된다. 이 명령의
인자에서 필요에
따라,
TRUE또는FALSE값을 지정할 수가 있는데, 이것은 각각, `지정', `해제' 기능을 한다. 한번에 여러 인가들을 함게 사용할 수도 있다. 현재 상태는display명령으로 살펴 볼 수 있다. 사용할 수 있는 인자들은 다음과 같다:autoflushautoflush와localchars값이 모두TRUE면,ao,quit문자가 인식 될 때( 그래서, TELNET 처리가 이루워질 때; 윗set명령 참조),telnetrefuses to display any data on the user's terminal until the remote system acknowledges (via aTELNET TIMING MARKoption) that it has processed those TELNET sequences. 초기값은TRUE. 만약, 사용자가 "stty noflsh" 명령으로 터미날 설정을 하지 않았다면,FALSE( stty(1) 명령 참조).autosynchautosynch와localchars값이 모두TRUE면,intr나,quit문자가 입력될 때(윗set명령의intr와quit문자 설명 참조), TELNET 처리 결과는TELNET SYNCH처리에 의해 이루워진다. This procedureshouldcause the remote system to begin throwing away all previously typed input until both of the TELNET sequences have been read and acted upon. 초기값은FALSE.binaryTELNET BINARY옵션의 8비트 입/출력 전환.inbinaryTELNET BINARY옵션의 8비트 입력 전환.outbinaryTELNET BINARY옵션의 8비트 출력 전환.crlf- 이 값이
TRUE면, 사용자의 엔터글쇠는<CR><LF>문자로 리모트 호스트 쪽으로 보내지며,FALSE면<CR><NUL>문자로 보내진다. 초기값은FALSE. crmod- 캐리지 리턴 모드
토클. 이 모드가 TRUE면,
리모트 호스트에서
받아드려지는
대부분의 캐리지
리턴 문자(Enter 글쇠를
쳤을 때 입력되는
문자)는 라인 피드
문자(줄바꿈문자)로
처리된다. 이 모드는
리모트 측에만
영향을 끼친다. 이
모드는 리모트
호스트가 단지
캐리지 리턴 문자만
보내고, 라인 피드
문자를 보내지 않을
경우를 제외하고는
전혀 거의 쓸모 없는
모드이다. 초기값은
FALSE. debug- 소켓 레벨 디버깅
토클 (이것은
시스템 관리자에게 유용하게 쓰인다) . 초기값은FALSE. localchars- 이 기능이
TRUE면,flush,interrupt,quit,erase,kill문자들은 (윗set명령 참조) 로칼쪽으로 인식되고, 각각 고유한 TELNET 제어 문자 처리가 이루워진다. (각각,ao,ip,brk,ec,el; 윗send명령 참조). 초기값은 “old line by line” 모드에서는TRUE, “character at a time” 모드에서는FALSE.LINEMODE옵션이 사용가능 상태이면, 현재,localchars상태는 무시되며, 항상TRUE. 계속LINEMODE옵션이 가능상태이면,quit처리는abort문자로 보내지며,eof, 처리는eof,susp문자로 보내진다. 윗send명령 참조). netdata- 네트워크 상으에서
움직이는 모든
데이터를 보여주는
것(16진수 형식)을
전환한다. 초기값은
FALSE. options- 몇몇 내부적인
telnet프로토콜 처리( TELNET 옵션 처리)를 보여주는 것을 천환한다. 초기값은FALSE. prettydumpnetdata토클이 TRUE 상태일 때, ifprettydump상태가 TRUE면,netdata명령은 사용자가 읽기 쉽도록 형식화(format)된다. 각 문자들은 공백문자로 나뉘어 출력되고, TELNET escape 처리 문자들은 앞에 '*' 표시가 덧붙어 출력된다.?toggle명령의 도움말을 보여준다.
ztelnet실행 보류. 이 명령은 사용하고 있는 쉘에서 보류 기능(suspend)을 제공하고 있을 때만 가능하다.![명령]- 로칼 시스템의
하위쉘을 실행하고,
그곳에서 인자로
지정한
명령을 실행한다. 이 옵션의 인자가 빠지면, 단지 하위셀만 실행한다. statustelnet풀그림의 현재 상태를 보여준다. 이것은 현재 접속 상태를 보여주며, 또한 현재 모드에 대한 정보를 보여준다.?[명령]- 도움말. 인자 없이
사용되면
telnet명령의 개요를 보여준다. 명령 인자는telnet프롬프트 상에서 사용되는 명령으로 이것이 사용되면, 그 명령에 대한 도움말을 보여준다.
환경변수¶
telnet 풀그림은
최소한 HOME,
SHELL, DISPLAY,
TERM 환경 변수를
사용한다. 다른 환경
변수들은 리모트 쪽의
TELNET ENVIRON 옵션에
지원 여부에 따라
사용될 수도 있다.
관련파일¶
- ~/.telnetrc
- 사용자 정의의 telnet 초기화 파일
발자취¶
telnet 명령은
4.2BSD 에서 처음
나타났다.
참고¶
어떤 리모트 시스템에서는 “old line by line” 모드에서 echo 기능을 꺼야지만 제대로 동작하는 경우도 있다.
“old line by line” 모드나,
LINEMODE 에서는 줄
처음에 eof
문자가
사용되어야지만
제대로 인식된다.
ztelnet¶
ztelnet 명령은
정식 버클리판의 NetKit-B
패키지에 포함된 것은
아니나, telnet으로 zmodem
프로토콜을 지원하는
BBS에 접속할 때, 그곳의
zmodem 프로토콜을 telnet에서
사용할 수 있도록
수정된 풀그림이다.
자료 받기:
- 1
- 리모트 호스트 쪽의 자료를 받으려면, 먼저 리모트 호스트 쪽의 자료 전송 프로토콜을 실행시킨다. (일반적으로 리모트 호스트쪽에서 sz(1) 명령을 실행시키거나, BBS일 경우는 자료 전송 항목에서 zmodem을 선택 한다.)
- 2
- 다음 escape
문자(일반적으로 ^])를
입력하고 나서,
ztelnet명령인 rz 명령을 실행한다. (참고: 이때, 먼저 입력 모드가 당연히 binary 모드(set bin 명령)로 되어 있어야 한다.)
- 1
- 로칼 호스트의 자료를 리모트 호스트 쪽으로 보내려면, 먼저 리모트 호스트 쪽의 자료 전송 프로토콜을 실행시킨다. (일반적으로 리모트 호스트쪽에에서 rz(1) 명령을 실행시키거나, BBS일 경우는 자료 전송 항목에서 zmodem을 선택한다.)
- 2
- 다음 escape
문자(일반적으로 ^])를
입력하고 나서,
ztelnet명령인 sz 명령을 실행하는데, 그 명령의 인자로 보낼 파일 이름을 함께 입력해 준다.
| July 27, 1991 | BSD 4.2 |