将数据包发送到本地网络接口的专用 IP 地址是否与将数据包发送到环回地址的工作方式相同?

网络工程 IP地址 局域网 环回
2022-02-21 02:44:27

在我的本地主机上,有一个环回地址 127.0.0.1,以及一个192.168.1.97本地 wifi 网络分配的私有地址的 wifi 接口。

环回和私有 IP 地址是否以相同的“环回”方式在数据包级别工作?

  • 当一个进程向 lo 发送数据包时127.0.0.1,环回意味着数据包没有离开本地主机,而是到达同一主机上的 127.0.0.1 是否正确?

  • 当一个进程向 发送数据包时 192.168.1.97,数据包是否必须离开本地主机,到达本地 wifi 网络的路由器,然后路由器将数据包发送回同一本地主机的 wifi 接口?

如果在这两种情况下,数据包都没有离开本地主机,那么私有地址和环回地址有什么区别?

谢谢。

1个回答

环回和私有 IP 地址是否以相同的“环回”方式在数据包级别工作?

所有本地地址通常都被视为环回地址,是的。

当进程向 lo 127.0.0.1 发送数据包时,环回是否意味着数据包不会离开本地主机,而是在同一主机上到达 127.0.0.1?

这就是环回功能——数据包不会离开主机,但会被视为从网络接收到的。通常,这是在第 3 层 = 网络层中实现的。

当一个进程向virbr0 192.168.1.97发送数据包时,数据包是否必须离开本地主机,到达本地wifi网络的路由器,然后路由器将数据包发送回同一本地主机的wifi接口?

在您的示例中, 192.168.1.97 是本地地址。因此,数据包不会离开主机,而是被视为从网络接收到的数据包,地址为 192.168.1.97。

如果在这两种情况下,数据包都没有离开本地主机,那么私有地址和环回地址有什么区别?

差异是微妙的。如果侦听器绑定到 127.0.0.1,则只能通过寻址到 127.0.0.1 的数据包访问它 - 实际上只能来自同一主机。绑定到 192.168.1.97 的侦听器只能由寻址到 192.168.1.97 的数据包访问 - 来自网络或来自同一主机。任何发往任何本地地址的数据包都可以到达绑定到 0.0.0.0 的侦听器。

其它你可能感兴趣的问题