当我使用 telnet 访问本地主机上的端口时,网络会发生什么情况?

What happens in the network when I access port on localhost using telnet?

我的ubuntu机器的无线接口正在连接到无线路由器。我写了一个简单的 web 服务器监听端口 8888。我想了解如何使用 localhost 发送和接收数据包。所以我做了以下实验:

我在监听 wlan0 的同一台机器上启动了 wireshark,并在终端上输入:

$telnet localhost 8888

然后我观察TCP SYN,SYN/ACK,ACK。在这些消息中,MAC src 和 dest 地址都是 00:00:00:00:00:00。 src和dst IP地址都是127.0.0.1。

这是否意味着这些数据包永远不会从我的 wlan0 接口传出到无线路由器并直接在我的机器内环回?它甚至到达我的无线网卡还是只是在 ubuntu linux OS 内环回?

发送到本地主机的数据包不'go out on wire';即数据包由网络驱动程序发送到本地接收缓冲区。

如果您通过 telnet 连接到本地服务器 IP,则数据包会通过网络发送出去。例如telnet 192.168.100.1 将使数据包通过网络发送出去。