求一个linux c程序,来查看局域网的主机名和mac地址?

求一个linux c程序,来查看局域网的主机名和mac地址?,第1张

4.2如何察看本机的MAC地址

这个.....最简单明了的方法.....

就是拔出网卡,直接在网卡上寻找(网卡制造商通常都会把网卡的MAC地址标识在网卡上面)

如果不方便的,我们可以在不同的OS下面通过一些简单的命令察看到网卡的MAC地址

Windows类

对于win98/winme

开始-->运行-->winipcfg

对于win2k/xp/2003

命令行下 ipconfig /all

显示结果中的Phyical Address即为需要寻找的MAC地址

UNIX类

对于Linux使用ifconfig命令

# ifconfig -a

eth0 Link encap:Ethernet HWaddr 00:60:08:C4:99:AA

inet addr:131.225.84.67 Bcast:131.225.87.255 Mask:255.255.248.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:15647904 errors:0 dropped:0 overruns:0

TX packets:69559 errors:0 dropped:0 overruns:0

Interrupt:10 Base address:0x300

//HWAddr后面那串数值就是MAC地址

对于Solaris同样也是ifconfig -a

# ifconfig -a

le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>mtu 1500

inet 131.225.80.209 netmask fffff800 broadcast 131.225.87.255

ether 8:0:20:10:d2:ae

//ether后面那串数值

对于FreeBSD而言使用dmesg命令

对于HPUX机器使用lanscan命令

$ lanscan

Hardware Station Dev Hardware Net-Interface NM Encapsulation Mjr

Path Address lu State NameUnit State ID Methods Num

2.0.2 0x08000935C99D 0 UP lan0 UP 4 ETHER 52

4.3如何察看远程主机的MAC地址

分成两种情况

1.同一网段

先ping一下对端主机

然后通过arp -a可以察看到相应主机的mac地址

例如:

C:\Documents and Settings\Administrator>arp -a

Interface: 10.1.7.88 --- 0x4

Internet Address Physical Address Type

10.1.7.250 00-0a-eb-cb-ca-c0 dynamic

2.不同网段

nbtstat -a ip-address

但是前提是对端为windows主机同时打开了相应的端口

本地连接:

Node IpAddress: [10.1.7.88] Scope Id: []

NetBIOS Remote Machine Name Table

Name Type Status

---------------------------------------------

INet~Services <1C>GROUP Registered

IS~SOFTLORD....<00>UNIQUE Registered

SOFTLORD <00>UNIQUE Registered

WORKGROUP <00>GROUP Registered

ADMINISTRATOR <03>UNIQUE Registered

WORKGROUP <1E>GROUP Registered

SOFTLORD <20>UNIQUE Registered

IWAM_SOFTLORD <03>UNIQUE Registered

SOFTLORD <03>UNIQUE Registered

WORKGROUP <1D>UNIQUE Registered

..__MSBROWSE__.<01>GROUP Registered

MAC Address = 00-0C-76-C6-55-FC

4.4修改网卡的MAC地址

修改网卡的MAC地址我们可以简单分为"硬改"和"软改"

总所周知,网卡的MAC地址是固化在网卡的某块EEPROM里面的

我们可以通过特殊软件进行修改

比如早期的ISA总线的网卡(很Old的那种,估计好多人都没有见过)

这类网卡所带的驱动软盘上往往有一个诊断程序,通过这个程序我们

可以修改固化在网卡上的MAC地址,这类程序一般只能运行在纯DOS环境

对于广泛采用的Realtek 8029/8139的网卡也有专门的程序可以修改其MAC地址

程序名叫:pg8029.exe

再说说软修改,所谓的软修改就是修改OS相应的协议栈里面的数据达到修改发送

Frame时源MAC地址的目的

对于windows平台,有专门的软件可以修改(大家可以Google一下)

也可以直接修改注册表或者相应的驱动属性.

对于Linux而言据说需要修改相应的源码之后再编译内核即可

对Linux不熟悉,大家如果想了解的化,可以Google一下

那个是堆栈生成器,你可要可不要,根据你自己的情况来定,具体如下

1、新建一个登录账号假设为andy, 并加入Administrators组和Remote Users组,以便能执行安装程序和登录远程桌面。

2、使用新登录账号andy登录,并创建好安装目录c:postgreSQL,然后对该目录授予users组的全部控制权限。

3、执行安装程序就这样安装成功了,与之前安装的不同之处在于,没有使用Administrator账号来执行安装,安装主目录事先就创建好了,并授予users的全部权限。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12160964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存