간단하게 Telnet Protocol 구현해서 소켓 열고 텔넷 포트로 접속 후
간단하게 negotiation 거친후 명령어 send하고 결과 recv하고
소켓 닫고... 그 이상의 방법은 없어보입니다.
expect 를 가지고 스크립트 프로그램을 짠 후에 그 프로그램을
실행시키는게 그 다음 방법이겠군요.
구리고 첨 제글의 바로 윗분이 쓰신 내용이 될듯한데요.
telnet 프로토콜의 관련 RFC859 에 보면 "FTP의 화일 송수신 기능을 추가.."라고나와요. 관련 RFC인거 같아서리...
제 첫글의 윗분이 쓰신 내용인즉 >
작업완료 -> 연결 종료 -> telnet 옵션 변경 -> 재 연결 -> send or recv -> 종료
로 이해 했는데 ...
위의 순서로 하면 될거 같아요 ^^; 옵션 변경은 toggle binary[전송],
toggle inbinary[수신]하면서 바꾸고 다시 telnet 연결해서 곧바로 커맨드없이
데이터의 송수신만 한다는.. 걸로 이해했는데 ..
toggle은 telent 클라이언트안에서 설정하는 거구 . 소켓으로 위의 링크의
소스처럼 toggle처럼 구현한다면 RFC에 관련 내용이 있겠져..
telnet 연결이라면 간단히 popen이나 fork로는 쉽지 않습니다.
telnet 연결이라면 간단히 popen이나 fork로는 쉽지 않습니다. 터미널 제어까지 해야 하니깐요. tcl/tk에 포함된 expect를 이용해보세요.
음...
저 잘 이해를 못하겠습니다. 초보라서 ^^
telnet만 연결해 명령하나만 수행해서 결과만 가려오고 바로 종료하면 되는데
그렇게 어려울 줄이야
좀 쉽게 설명해 주시면 정말 감사하겠습니다.
도전하라
popen 보다는..
오히려 telnetlib 같은 것을 사용해서 네트웍 통신을 하는 게 좋을 것 같습니다.
환경에 따라 조금은 다르겠지만.. popen 으로 한정해서 생각지 마시고, 네트웍을 기준으로 생각해보세요..
exec 포트를 이용하세요
exec 포트를 이용하면 될 것 같은데요.
512 번 포트가 exec 포트입니다. 512 번 포트로 접속해서 아이디와 패스워드를 입력하고, 명령어를 전송하면 그 결과를 네트웍(접속한 sd)으로 전송해줍니다.
원하시는 용도로는 딱 일것 같은데...
참, 결과를 전송한 후에는 커넥션이 끊깁니다.
참, 결과를 전송한 후에는 커넥션이 끊깁니다.
음...
특정 포트로만 접속해야 하기 때문에 포트변경을 못해요.
휴~~ 앙 어렵다
도전하라
expect
expect shell 에 한표...인터넷 검색 하면..자료도 얻을수 있을꺼예요.
예전에 url 하나 알았는데... 없어졌네요.. :(
Think..
이건..
rsh 이나 또는 ssh 사용은 어떤가요...
$rsh xx.cc.x.cc ls
$ssh 5.3.3.2 ls
이상은 Valkyrie
http://aladdin.co.kr/shop/wproduct.aspx?ISBN=8995710160&kw=00001A
mms://211.106.66.141/live4/kbs/psong182_m.asf
HAPPy !!
저같으면
간단하게 Telnet Protocol 구현해서 소켓 열고 텔넷 포트로 접속 후
간단하게 negotiation 거친후 명령어 send하고 결과 recv하고
소켓 닫고... 그 이상의 방법은 없어보입니다.
expect 를 가지고 스크립트 프로그램을 짠 후에 그 프로그램을
실행시키는게 그 다음 방법이겠군요.
저는여.
->포트 변경 추가 가 불가능 하다면 wish는 좀...결국 wish셀이
21포트 말구 다른 포트로 접속을 새로 만든다는 거니까..
-> telnet 클라이언트(일반적인)에서 서버와 ftp처럼 데이터 송수신하는걸 봤거덩요.어떤 커맨드를 날리니까..
->zmodem을 이용하면 데이터 송수신가능쿠여
(zmodem은 제가 알기로 telnet 포트로 연결하며, telnet과 같은 기능과 화일
송수신 기능이 같이 들어가 있는....ztelnet을 설치하고 텔넷 서버에 접속하고
rz, sz 명령을 쓰면 될거에염)
[-> 텔넷 포트를 이용한 소켓 접속이라면]
위에서 처럼 telnet 프로토콜에 그와 관련 커맨드?가 정의되 있다는 것이고,,
해당 커맨드와 얻고자 하는 화일명 정보를 서버에 전해주면 ...
서버가 화일을 전해 주지 않을까여??
wish ...셀?을 짜는것 보다는 좀 시간이 걸려도 더 일반적이지 않을까 하는
생각이 드네요.
\\(^^ )^^)// **
우와 감사합니다.
제가 tcl은 한번도 해본적이 없는데요
대충보니까 제가 원하는 거랑 비슷한거 같은데요
그래서 소켓으로 프로그래밍을 할까 아니면 tcl을 해볼까 고민중입니다.
많은 고수님들의 조언 부탁 드립니다.
소켓은 조금 해봤거든요 아 어떻게 해야할지 ...
감사합니다.
도전하라
이게 도움이 될런지.
전 고수는 아니지만, 도움이 되길 바랍니다.
아래는 telnet 클라이언트 설명과 구현 소스에여
첨 negotiation 부터 커맨드 파싱이 쬐만하게 구현된
http://www.linuxlab.co.kr/docs/97-12-3.htm
구리고 첨 제글의 바로 윗분이 쓰신 내용이 될듯한데요.
telnet 프로토콜의 관련 RFC859 에 보면 "FTP의 화일 송수신 기능을 추가.."라고나와요. 관련 RFC인거 같아서리...
제 첫글의 윗분이 쓰신 내용인즉 >
작업완료 -> 연결 종료 -> telnet 옵션 변경 -> 재 연결 -> send or recv -> 종료
로 이해 했는데 ...
위의 순서로 하면 될거 같아요 ^^; 옵션 변경은 toggle binary[전송],
toggle inbinary[수신]하면서 바꾸고 다시 telnet 연결해서 곧바로 커맨드없이
데이터의 송수신만 한다는.. 걸로 이해했는데 ..
toggle은 telent 클라이언트안에서 설정하는 거구 . 소켓으로 위의 링크의
소스처럼 toggle처럼 구현한다면 RFC에 관련 내용이 있겠져..
구럼 수거여 ~
\\(^^ )^^)// **
댓글 달기