linux - SSH 连接未建立,但标准 TCP/IP 连接有效
问题描述
我正在为 Raspberry PI 3 开发自定义 yocto Linux,并尝试让 WIFI 连接与 SSH 一起工作。但是,当尝试从我的 PC(Ubuntu 19.10、SSH OpenSSH_8.0p1 Ubuntu-6build1、OpenSSL 1.1.1c 2019 年 5 月 28 日)连接到运行 Dropbear v2019.78 的 PI 时,连接尝试超时。但只有当我通过 SSH 和通过wlan0
. 其他 TCP/IP 流量有效,并且也使用相同的参与者,但使用eth0
. 由于这是针对机器人的,因此我宁愿不使用系绳...
为了尝试和调试这个,我
- 启用串行控制台,以便我可以在 PI 上工作
- 禁用 eth0
- 在 PI (ip.host == 192.168.0.105) 上启动了一个 tcpdump
- 在 PC 上启动 tcpdump (ip.host == 192.168.0.106)
- 使用了一个用 Python 编写的简单 TCP/IP 套接字示例(取自https://realpython.com/python-sockets/#echo-server)来验证我实际上可以通信。传输成功。我知道该示例缺少(没有适当的协议等),但这不是重点。它就足够了。PI 运行在端口 2222 上侦听的服务器。
- 尝试 SSH 连接,它超时。
我将生成的 PCAP 过滤为仅包含 TCP,因为还有其他我认为不重要的信息(例如 Dropbox 发现)并且可能是信息泄漏。在主机端(enp4s0-tcp-and-pi.pcap),我还过滤ip.host == 192.168.0.105
为仅包含到 PI 的任何流量。
关于我的设置的另一个注意事项:我使用一个 TP-Link 路由器,PC 连接到哪个 LAN 端口,并为 PI 提供 2.4GHz WIFI。所以两者都是同一个子网的一部分,并且没有配置特殊的路由或任何东西。
此外,我停止了 dropbear 守护程序并调整了我的 Python 代码以使用端口 22。它可以工作。
我只是大致了解 TCP 的内部工作原理,所以我无法真正理解我在这里看到的东西。任何见解都非常受欢迎。
https://www.dropbox.com/s/5o4rqr5zdws 2wq7/wlan0-tcp-only.pcap?dl=0 https://www.dropbox.com/s/amypjtk1nvja4qb/enp4s0-tcp-and-pi.pcap?dl =0
解决方案
推荐阅读
- dart - Dart中的常量变量和常量值有什么区别?
- r - ggplot中的矩阵热图在上下三角形中不一致
- google-app-engine - appcfg 工具关闭后,基于 python2 标准运行时应用程序的谷歌 appengine 遗留服务是否会继续工作?
- python - python在小数点分隔符后显示太多数字
- c++ - 尝试使用 Windows Midi API 时出现 gcc 错误
- r - 你好。我在执行下面的 r 代码以用另一个替换一个列值时陷入困境
- java - springboot+mybatis 多模块项目maven
- java - 如何将位图图像保存到手机的内部存储中
- javascript - 单击日期选择器 jQuery
- android - Expo - Android 模拟器中的图标位置不正确