怎么得到对方的MAC地址?不在一个网内的。(急)

mygarfield 2005-09-16 05:33:38
当有人ping我的时候,怎么得到对方的MAC地址?不在一个局域网内。
我现在用socket做只能得到IP地址。
有思路也行,最好给个例子。
shenzhb@bizsmooth.com
...全文
149 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
teli_eurydice 2005-09-19
不可能吧
回复
springzb 2005-09-19
学习。。。。
回复
逍遥过客 2005-09-19
如果不在同一网段,理论上你是得不到对方的IP地址的,如果你使用的网关恰好是两个网段的连接网关,那么你可以查看该网关的ARP表,能够得到对方的IP。否则你是没有机会得到对方的IP的。

因为PING报文在从网关离开你的网段的时候,源MAC已经变成了网关的MAC,目的MAC变成了下一条路由器接口或网关的MAC,也就是二层网络的信息都改变了,不变的是三层以上的网络信息,比如IP地址,端口号等。
回复
Bare_Foot 2005-09-18
http://www.99xue.com/View_Article/36207.html
不知道这篇文章对你有没有用,试试看吧
回复
oyljerry 2005-09-18
ping属于ICMP,通过的IP包
MAC地址需要通过对方机器网段内的路由器等来得到
回复
lifengice0706 2005-09-18
你能收到他的ping包,那nbtstat行不?
回复
nntg 2005-09-17
MAC地址只具有本地意义。通过3层设备后MAC地址会更改为相应设备接口的MAC地址。
想得到不在同一个网段的mac地址,除非你能通过后门控制开网段的一台机器,由它获得本地网络机器的mac地址后,再把信息封装到上层应用中发回给你。
回复
shootingstars 2005-09-16
数据链路层的信息在经过路由层(三层)后,都会改变。

所以如果通信的节点之间隔着路由器,那么别人Ping你,你是不可能获得对方的Mac地址的。
回复
oyljerry 2005-09-16
不同局域网不好得到MAC
回复
DentistryDoctor 2005-09-16
不在一个局域内?
回复
zxyjyzxyjy 2005-09-16
学习
回复
发帖
网络编程
创建于2007-09-28

1.8w+

社区成员

VC/MFC 网络编程
申请成为版主
帖子事件
创建了帖子
2005-09-16 05:33
社区公告
暂无公告