假设一组计算机连接到以太网 LAN。如果计算机仅相互通信,那么在计算机中使用 IP 协议是否有意义?计算机是否应该直接在以太网上运行 TCP?如何处理寻址?
答案1
如果计算机仅彼此通信,那么在计算机中使用 IP 协议是否有意义?
很多软件都假设 IP 无处不在,但如果您不使用任何此类软件,则无需 IP。您和计算机之间可能没有任何设备需要以太网帧以外的任何数据。您可能会遇到防火墙、托管交换机等问题。
计算机是否应该通过以太网直接运行 TCP?
如果没有 IP,则无法运行基于标准的 TCP,因为 TCP 使用 IP 地址。您必须使用基于以太网或其他链路层作为下层的自定义流式传输协议。
IP 所做的一件事是从堆栈的上层抽象出链路层 - 曾经有一段时间您可能拥有以太网或令牌环,并且有像 PPP 和 HDLC 之类的东西,还有环回接口。
如果您想尝试类似的东西而不开发自己的协议,您可以尝试在小型网络上运行 IPX/SPX 或 AppleTalk。
如何处理寻址?
这是您在创建上述自定义协议时需要决定的事情。如果您根本不想支持路由,那么一个选项就是只使用 MAC 地址。非 IP 协议(如 IPX/SPX 和 AppleTalk)有自己的地址方案和获取主机地址的方法。
答案2
这里实际上有多个问题。
第一个是关于在人身上使用 IP 的。是的,这是一个好主意,因为该协议无处不在。在互联网出现之前的遥远过去,存在多种竞争协议,但对于一般情况来说,这些协议已经过时了,因为 IP 很容易理解、标准化、易于编码且可扩展
TCP 位于 IP 之上,而不是替代 IP - 您需要 IP 识别和路由数据包的能力。TCP 在此之上添加了一层以提供可靠的会话。
关于 IP 寻址,有多种选择。使用 DHCP 服务器集中控制,但使用静态 IP 可以更轻松地配置。这两种方法都不需要路由器。据我了解,如果您使用 IPv6,则根本不需要指定 IP 地址,因为它可以根据您的 MAC 地址自动配置工作 IP 地址。
答案3
正如您所描述的,PC 无法访问互联网。如果这是真的,那么您将无法访问 DHCP 服务器。然后,您需要创建自己的子网并在自己的 PC 上配置自己的 IP 地址,而且由于您没有与服务器通信,因此 TCP 应该无关紧要。