直接连接到仅知道MAC地址的另一台计算机?


13

据我了解,ARP将IP地址转换为MAC地址,然后计算机使用该MAC地址建立直接连接。

如果我已经知道要连接的计算机的MAC地址,是否可以直接连接到该计算机(无需路由器)?有这个例子吗?


当然。但是,即使没有路由器,您也可以在每台计算机上分别分配IP地址,并在它们之间使用IP协议-使用集线器或直接连接
svidgen '16

Answers:


12

如果我已经知道要连接的计算机的MAC地址,是否可以直接连接到它?有这个例子吗?

您可以在较低级别进行连接,然后将数据包发送到同一本地网络上的其他计算机,但是如果不了解更多有关上层协议的信息,就很难知道要在这些数据包中放入什么。

例如,除了IP以外,还有一些网络协议可以通过以太网工作,并且实现这些协议的驱动程序完全按照您的描述进行操作-它们在不知道IP地址的情况下以低级连接(因为没有IP地址可知)并传输数据。

也就是说,MAC地址在局域网范围内的意义并不大,因此您需要能够理解它们的更高级别的协议和路由器,才能与其他网络上的计算机进行通信。


1
谢谢。网络接口如何确切知道如何连接到另一个接口?接口是否像无线路由器一样发出信标帧?
科林

1
不知道 基本上,这就是以太网的工作方式。当网络上的一个节点有话要说时,它会先侦听是否有其他人在发送东西,否则,它只会将消息放在网络上,让任何人都可以听到。如果某个其他节点恰好在同一时间启动,则它们都会检测到冲突,停止说话,稍等片刻,然后重试。
卡雷布

1
@Colin:在MAC级别上,网络接口只能连接到同一(子)网络中的接口。为了与本地网络外部的计算机进行通信,路由器用于将数据包从一个网络传输到另一网络并到达目的地,您和远程计算机之间可以有多个路由器。
Bart van Ingen Schenau '16

1
对。那么如何创建或定义(子)网络?所有计算机都必须连接到同一集线器/交换机/路由器吗?还是有没有办法创建一个没有它们的网络?
科林

@Colin取决于物理层-有时所有机器都连接到单个集线器,例如10baseT等。有时它们都连接到同一根物理线路,如10base2(又称“瘦网”),有时它们根本没有连接,但都通向同一个集线器(如WiFi)。但是有很多不同的网络技术,每个细节都不尽相同,因此,尽管以太网是您心目中的一个很好的模型,但不要以为这是做事的唯一方法。
卡雷布

3

有点。

IP寻址在某种程度上是象征性的,通常依赖于较低层的网络协议(具有较少的层次结构)来实际完成传输。

在IP级别上,每台计算机在(至少)一个子网中具有(至少)一个IP。它也可能(通常确实)有一个“默认网关”(即一个IP地址,通过它它将所有数据包发送到本地子网以外的其他地方)。

抽象而言,发往Web端口的数据包看起来像这样:

[以太网头] [ip头] [tcp头] [有效载荷]

以太网头包含各种控制信息,包括LAN上的源和目标MAC地址。

IP标头包含各种控制信息,例如源IP和目标IP以及封装的协议(在此示例中为TCP)。

TCP头包含各种控制信息,各种标志(会话的内容是什么,序列号是什么,源和目标TCP端口,...)

有效负载仅由TCP传输,“仅由应用程序负责”。

当本地网络上的某人想要发送IP数据包到没有MAC地址的IP时,就使用ARP。

大多数机器都不会监听纯以太网连接,但是您仍然可以将MAC映射到IP地址。在非交换式LAN中,您只需要观察数据包,找到带有您要与之交谈的源或目标MAC的东西,然后解析IP。

如果该计算机具有某种以太网级别的侦听器,则可以与之交谈,但是您将无法从本地LAN之外与之进行交谈,因为发往该计算机的以太网帧不会被拾取。本地路由器的另一侧。


0

这篇文章比较老,但我认为它没有正确的答案。

如果您可以连接到知道同一网络上的MAC的设备(最好是交叉电缆)。您可以为MAC分配一个IP地址,然后以这种方式访问​​该IP:

Microsoft Windows Windows系统要求MAC地址(以太网地址)的每个数字之间都包含破折号“-”。

arp -s 192.168.1.2 00-80-77-31-01-07
ping 192.168.1.2

UNIX / Linux UNIX和Linux系统在MAC地址(以太网地址)的每个数字之间需要冒号“:”字符。

arp -s 192.168.1.2 00:80:77:31:01:07
ping 192.168.1.2

但是,要使此功能起作用,您必须位于同一以太网段上(也就是说,您和您尝试连接的设备之间不能有路由器)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.