如何使用Telnet 来测试我的socket 程序?
How to use Telnet to test my socket program?
一切都在标题中,我在 linux,我有一个套接字客户端和一个 C 语言的 socker 服务器程序,我想用 Telnet 测试我的服务器,但我似乎做不到找到方法,你知道吗?
提前致谢
假设您的服务器在端口 9999 上接受传入的 TCP 连接。
然后您可以打开 shell window(在您的服务器 运行 所在的同一台机器上)并输入:
telnet localhost 9999
... 并且(如果一切正常),telnet 将连接到您的服务器。 (如果 telnet 出错而不是 "connection refused",这意味着没有服务器在该端口上接受 TCP 连接)
然后您可以在 telnet window 中输入 ASCII 字符,当您按下 return 时,这些 ASCII 字符将被发送到您的服务器;服务器写入其套接字末端的任何输出都将显示在您的 telnet window.
需要注意的是,如果您的服务器需要 send/receive ASCII 数据,那么 telnet 仅作为测试机制运行良好;如果 OTOH 你的服务器正在发送二进制数据,那将在 telnet window 中显示为看起来很奇怪的垃圾字符,而且也没有简单的方法将任意二进制数据输入 telnet window 以将其发送到你的服务器。
一些最小的 Linux 服务器没有安装 telnet。
在 Redhat / Centos 中你可以做到
yum install telnet
在 Ubuntu 你可以做到
apt-get install telnet
之后就可以telnet 9999了。
您可能想要查看的另一个工具是调用 "nc",它允许您通过 UDP 端口进行通信。
一切都在标题中,我在 linux,我有一个套接字客户端和一个 C 语言的 socker 服务器程序,我想用 Telnet 测试我的服务器,但我似乎做不到找到方法,你知道吗?
提前致谢
假设您的服务器在端口 9999 上接受传入的 TCP 连接。
然后您可以打开 shell window(在您的服务器 运行 所在的同一台机器上)并输入:
telnet localhost 9999
... 并且(如果一切正常),telnet 将连接到您的服务器。 (如果 telnet 出错而不是 "connection refused",这意味着没有服务器在该端口上接受 TCP 连接)
然后您可以在 telnet window 中输入 ASCII 字符,当您按下 return 时,这些 ASCII 字符将被发送到您的服务器;服务器写入其套接字末端的任何输出都将显示在您的 telnet window.
需要注意的是,如果您的服务器需要 send/receive ASCII 数据,那么 telnet 仅作为测试机制运行良好;如果 OTOH 你的服务器正在发送二进制数据,那将在 telnet window 中显示为看起来很奇怪的垃圾字符,而且也没有简单的方法将任意二进制数据输入 telnet window 以将其发送到你的服务器。
一些最小的 Linux 服务器没有安装 telnet。
在 Redhat / Centos 中你可以做到
yum install telnet
在 Ubuntu 你可以做到
apt-get install telnet
之后就可以telnet 9999了。
您可能想要查看的另一个工具是调用 "nc",它允许您通过 UDP 端口进行通信。