在本地网络外部发送数据包时,目标mac地址应该设置为什么?

如果我在本地网络中的机器上使用arp和arping,我会从中获取mac地址。以同样的方式,我可以构造并发送ARP请求并收集对这些机器的响应。这是因为我从沙哑中完全构建原始数据包(允许欺骗每个可能的字段,包括mac地址,如果需要)。但是,当我在外部IP和google.com等主机上尝试arping或arp时,它没有得到任何回复。将数据包发送到本地网络外的目标时,目标mac地址应该设置为什么?我想路由器,因为那是传递它... ...我是对的吗? ANSI C中有一种快速的方法来收集计算机使用的路由器的mac地址吗?或者至少是IP,所以我可以向它发送ARP请求。 Thanx提前     
已邀请:
MAC操作仅限于在子网内直接连接的计算机。因此,您应该将路由器的MAC地址用于适用于子网外部主机的数据包。 有许多方法可以获取路由器的IP地址。 如果静态配置接口,则可以解析本地主机上的配置文件。 您可以查看您的计算平台是否具有允许您直接访问接口配置信息的API。这适用于静态和dhcp情况。 您可以编写套接字代码以将ICMP消息发送到外部地址,然后解析传入的响应。他们将来自路由器。在这种情况下,堆栈将为您找到路由器。     
它应该设置为网关(假设该链路上的以太网......)。     

要回复问题请先登录注册