简短的问题是如何检查联网的 DOS6 (MS-DOS 6.22) 机器是否正确加载了其网络和共享驱动器。既可以从该机器内部,也可以从同一内联网内的另一台现代笔记本电脑 (OSX 或 Linux 或 ... Windows-10) 进行检查。
以下是详细信息:
我有一台工业机器,由一台装有 MS-DOS 6.22 的 PC 控制。`MS Network Client` 用于提供网络功能,例如共享驱动器。这台机器位于内联网中,有许多 Windows-10 和我的 OSX 10.8 笔记本电脑,我用它来测试,因为我不想弄乱办公室机器。
与机器的通信(即发送文件)是通过 Windows 10 计算机的共享网络驱动器进行的。它使用无密码的 SMBv1。这不再有效。
DOS6 机器有 `net share test=c:\test /full /yes`,WIN10 会将文件拖放到该机器上(我猜映射是通过 `net use \\DOS6\test` 进行的)。在 2018 年 4 月和 MS windows-10 更新 1803 之后,这在 WIN10 机器上停止工作,因为 SMBv1 现在默认被禁用。很好。因为管理员不想启用 SMBv1,所以我正在寻找替代方案,现在我正尝试使用 OSX 10.8 中的 `smbclient` 连接到 DOS6。但这失败了,我正在尝试排除故障。但我不知道怎么做。
远程确实可以 ping 通。此外,通过使用“nmap”,我发现端口 139 已打开(NetBIOS),但端口 445(SMB)已关闭(在本地检查后,“net share”报告共享驱动器可用)。
我还发现,在同一个内部网内执行 `nmap` 后,DOS6 机器不再 ping 通。这是否意味着奇怪的内部网范围/路由器/硬件防火墙阻止了它?可能是 DOS6 网络堆栈因 `nmap` 而崩溃?我该如何排除后者故障?我如何才能看到网络驱动程序处于活动状态并已加载。我如何才能从内部看到 DOS6 机器公开了哪些端口?我如何在本地验证它确实共享驱动器。
答案1
如果你的供应商不支持现代操作系统,而你又不得不在老旧且低劣的操作系统上运行关键业务应用程序,那就太糟糕了。唉。
我怀疑你的 nmap 正在扰乱入侵检测系统并且流量在扫描过程中被阻止。过去,我曾经在 DOS 系统上手动加载驱动程序来测试它们并观察错误。这对您来说可能是一个很好的调试方法。
DOS6 机器有
net share test=c:\test /full /yes
,WIN10 会将文件放到上面(我猜映射是通过net use \\DOS6\test
)。在 2018 年 4 月和 MS Windows-10 更新 1803 之后,这在 WIN10 机器上停止工作,因为 SMBv1 现在默认被禁用。很好。因为管理员不想启用 SMBv1,所以我正在寻找替代方案,现在我正尝试smbclient
在 OSX 10.8 中使用 DOS6。但这失败了,我正在尝试排除故障。但我不知道怎么做。
我不怪管理员不想启用 SMBv1。抱歉。
我认为这取决于您的工业机械应用有多重要。也许他们可以做一些网络魔术,只允许可怕的(对不起)MSDOS 机器和 Windows 10 机器之间使用 SMBv1。不幸的是,我认为您必须“买入”您的应用才能让其他人支持它。
我假设你已经检查过该应用是否支持现代操作系统?如果供应商允许,那将是最好的解决方案。除此之外,我认为你将不得不做一些网络调整,以便找到一种(相对)安全地运行它的方法。