(A) 两个路由器通过PPP(point to protocol)连接是什么意思?据我了解,两台路由器是直连的。
路由器(或任何节点)可以使用 PPP 连接。PPP 使用像 RS-232 这样的底层简单串行接口,并提供 IP(数据成帧)所需的数据链路层功能。
(B) 为什么如果两个路由器通过 PPP 连接,则不需要 ARP?
这些接口是点对点的,不使用寻址,因此没有使用 ARP。
为完整起见:PPP 成帧规范 ( RFC 1662 )确实包含一个 8 位地址字段,但由于未使用 L2 寻址(该成帧是从 HDLC 中借用的),该地址字段被指定为常量 0xff:
3.1. 帧格式
...
地址字段
地址字段是单个八位字节,其中包含二进制序列 11111111(十六进制 0xff),即全站地址。不分配单个站地址。必须始终识别和接收全站地址。
因此,具有任何其他地址的 PPP 帧都是无效的。
(C) 两台路由器通过以太网连接是什么意思?
路由器可以通过以太网与点对点链路(简单电缆)或使用交换机连接。在任何情况下,以太网都是点对多点网络,需要正确的 MAC 地址。
(D) 为什么如果两个路由器通过以太网连接,那么需要 ARP?
ARP 仅用于基于 MAC 的网络上的 IPv4,最突出的是以太网/IEEE 802.3 或 IEEE 802.11。
基于 MAC 的网络需要顶部的协议为其有效负载指定所需的目标 MAC 地址。IPv4 使用带有广播地址的 ARP 来了解目标 MAC。然后它使用底层网络作为 L2 来传递它的数据包。
您不能在这样的点对多点网络上运行 PPP,但可能有特殊的变体,如 PPPoE。
PPPoE 在以太网的 L2 之上创建了另一个 L2,但 PPPoE 和 IP 之间仍然没有寻址(PPPoE 使用以太网向下的 MAC 地址,即以太网的 MAC 地址由 PPPoE 控制,而不是 IP)。
(E) 如果两个路由器直接相连,那么它们可以通过 IP 地址或 Mac 地址或两者进行通信?
任何使用 IP 的节点都使用底层数据链路层 (L2) 协议进行本地通信。L2 协议可以沿 IP 路径变化。以太网包括所需的 L2 协议,串行链路需要 PPP、(过时的)SLIP 或类似的东西。
基本上,路由器使用 IP 地址在网络层 (L3) 进行通信。如上所述,他们还需要在某些网络上使用适当的 L2 寻址,因此需要 ARP(或 ipV6 的 NDP)作为“胶水”。