为啥我们可以使用 telnet 连接 http 或 memcached?

Posted

技术标签:

【中文标题】为啥我们可以使用 telnet 连接 http 或 memcached?【英文标题】:why can we use telnet to connect http or memcached?为什么我们可以使用 telnet 连接 http 或 memcached? 【发布时间】:2016-05-08 14:26:14 【问题描述】:

我以前认为telnet、http和memcached使用不同的协议,但奇怪的是,我们可以使用telnet来连接http和memcached服务器。

为什么?

【问题讨论】:

【参考方案1】:

许多协议都是简单的 ASCII 字符,以特定的顺序/顺序在客户端和服务器之间来回切换。 Telnet 是最早开发的基于文本的协议之一(1969 年,Wikipedia)。后来出现的协议,如 FTP、SMTP、HTTP 等,都建立在基于文本的协议之上。后来,memcached(和 Redis)之类的东西也做了。调试基于文本的协议更容易,因为人类可以轻松“阅读”来回传递的消息。

并且说 memcached 协议、FTP、SMTP、HTTP、 是不同的协议是正确的——但这并不意味着它们有共同点,例如基于文本的。

还有许多非基于文本的协议(例如 SSH、TLS 等);对于这些,使用 Telnet 将不起作用。因此,Telnet 是一个传输文本消息的简单网络客户端,它可以用于“手动”执行几乎任何其他基于文本的协议。

希望这会有所帮助!

【讨论】:

以上是关于为啥我们可以使用 telnet 连接 http 或 memcached?的主要内容,如果未能解决你的问题,请参考以下文章

为啥ssh可以连接telnet连不上

使用telnet发送HTTP请求报文

是否可以创建一个通过 telnet 或 http 连接到设备的 OPC 服务器?

win7里边使用telnet命令为啥提示telnet不是内部或外部命令,也不是可运行的程序或批处理文件?怎么解决

为啥我建立的oracle数据库,别人连接不上?telnet 本机的ip:1521却报:在端口23:连接失败???急!

为啥有这个提示“Escape character is ”