Telnet can be used to manually do things that programs do automatically. When I connect to a server I noticed that it automatically does the 3-way handshake to establish a TCP connection. Can it be done manually in telnet? If not, then what program can do it?

link|improve this question

74% accept rate
Could you explain why this is needed? – grawity Apr 7 '11 at 4:47
I'm learning about TCP/IP and there is a server that has been set up that I can experiment with. – OSX NINJA Apr 7 '11 at 5:27
feedback

1 Answer

up vote 4 down vote accepted

If by "manually" you mean "instruct telnet to send SYN and ACK packets", then no. This is done by the operating system, which needs to keep track of all TCP parameters for a connection – sequence numbers, window size, etc.

It would be possible for a program to use raw IP sockets and manage the TCP layer all by itself. But it's generally an incredibly pointless thing to do – it would copy a lot of code from kernel.

If you are trying to learn how TCP works, try Scapy. It can create and send packets using given parameters, including TCP. (You'll probably have to use a packet sniffer to watch for such things as SYN+ACK though.)

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.