日期:2014-05-16  浏览次数:20654 次

linux有函数获取局域网中各个的主机名、ip等信息吗?
麻烦大家给告诉一下先阿。。。。。。。

------解决方案--------------------
要用到NetBIOS,可以参考nbtscan的实现。
------解决方案--------------------
是指局域网内计算机名到IP地址的相互映射?
还是说要扫描所有的局域网机器?

前者需要使用samba中的功能。因为计算机名到IP地址是windows的SMB协议的作用。
百科介绍http://baike.baidu.com/view/262410.htm
所以你安装samba开发包, sudo apt-get install samba4-dev   (ubuntu 12.10)
命令行获取可以参考http://blog.csdn.net/yming0221/article/details/6368554
至于是其中的哪个函数,你自己找找吧。/usr/include/samba-4.0/

至于是扫描所有机器,那就写个程序ping局域网网段下的所有地址。。