如何枚举本地网络中远程计算机的所有计算机名和IP?
注意:不是在windows上(如何通过google找到),我需要在linux上工作的东西!
或者一个C/C++样本也能做到这一点,我可以用C语言调用LIBC。

最佳答案

您可以运行smbtree确保安装了samba。
运行smbtree,它将显示网络上的所有域、计算机和公共共享。将此详细信息写入文件并使用此文件获取所需信息
查看smbtree的输出

[paul@RHEL4b ~]$ smbtree
Password:
WORKGROUP
    \\W2000
PEGASUS
    \\WINXP
    \\RHEL4B                        Pegasus Domain Member Server
        \\RHEL4B\ADMIN$                 IPC Service (Pegasus Domain Member Server)
        \\RHEL4B\IPC$                   IPC Service (Pegasus Domain Member Server)
        \\RHEL4B\domaindata             Active Directory users only
    \\HM2003

WORKGROUPPEGASUS是域名
W2000WINXPRHEL4BHM2003这些是服务器名称
RHEL4B\ADMIN$RHEL4B\IPC$RHEL4B\domaindata这些是股份

10-08 02:20