家用路由器如何获取其 IP 地址?

家用路由器如何获取其 IP 地址?

当您首次打开家用路由器时,它如何获取公共 IP 地址?它是您的 ISP 提供商给您的静态分配 IP 地址吗?还是路由器在获取动态地址时充当 DHCP 客户端。如果路由器充当 DHCP 客户端,它会向哪个服务器请求 IP 地址?每次打开路由器时它都必须发出 DHCP 请求吗?

答案1

当您第一次打开家用路由器时,它是如何获取公共 IP 地址的?

大多数情况下,任何新的 SOHO 路由器都设置为动态获取外部 IP(DHCP)。任何其他设置都需要一些手动设置值才能正确连接。

它向哪个服务器请求 IP 地址?

路由器像广播一样发送其 DHCP 请求。因此提供商的 DHCP 会接受它(如果它存在并且当前客户端连接必须使用 DHCP)。

每次打开路由器时是否都必须发出 DHCP 请求?

是的。

此外,当路由器的地址是从 DHCP 设置时,它具有其最大可能年龄(租用时间)的属性,并且当此时间到期时(实际上 - 当接近 80% 的租用时间到期时)路由器会再次发送 DHCP 请求以续订租约并重置租用时间(但在某些情况下 DHCP 服务器可能不会续订,而是更改租用的 IP 地址)。

答案2

这实际上有点取决于你的调制解调器,但大体上就是这样的。你的调制解调器可能有不同的协议和设置,- 有各种协议,如 PPPoe 等

在此处输入图片描述

以下是我的旧路由器支持的各种协议的示例。(由于我将其用作 AP,因此我已将其禁用)。其中许多协议通过其他协议运行 DHCP。

这些可能根据您的 ISP,可选择使用 DHCP 或静态 IPv4 寻址,并且租用时间完全取决于您的 ISP。

我在一个完美的原始 ONT 上运行自己的 Linux 路由器 - 它使用与客户端相同的基本设置 - 自动 DHCP。

查看 DHCP 客户端日志(不是我的实际 IP - 将其替换为 RFC 5737 IP,并将一些其他内容替换为虚假值)

Nov 13 09:20:44 heckate_router dhclient[1231]: Internet Systems Consortium DHCP Client 4.3.5
Nov 13 09:20:44 heckate_router dhclient[1231]: Copyright 2004-2016 Internet Systems Consortium.
Nov 13 09:20:44 heckate_router dhclient[1231]: All rights reserved.
Nov 13 09:20:44 heckate_router dhclient[1231]: For info, please visit https://www.isc.org/software/dhcp/
Nov 13 09:20:44 heckate_router dhclient[1231]:
Nov 13 09:20:44 heckate_router dhclient[1231]: Listening on LPF/enp1s0/FF:FF:FF:FF:FF:FF
Nov 13 09:20:44 heckate_router dhclient[1231]: Sending on   LPF/enp1s0/FF:FF:FF:FF:FF:FF
Nov 13 09:20:44 heckate_router dhclient[1231]: Sending on   Socket/fallback
Nov 13 09:20:44 heckate_router dhclient[1231]: DHCPDISCOVER on enp1s0 to 255.255.255.255 port 67 interval 3 (xid=0xDEADBEEF)
Nov 13 09:20:47 heckate_router dhclient[1231]: DHCPDISCOVER on enp1s0 to 255.255.255.255 port 67 interval 8 (xid=0xDEADBEEF)
Nov 13 09:20:55 heckate_router dhclient[1231]: DHCPDISCOVER on enp1s0 to 255.255.255.255 port 67 interval 17 (xid=0xDEADBEEF)
Nov 13 09:20:55 heckate_router dhclient[1231]: DHCPREQUEST of 192.0.2.197 on enp1s0 to 255.255.255.255 port 67 (xid=0xDEADBEEF)
Nov 13 09:20:55 heckate_router dhclient[1231]: DHCPOFFER of 192.0.2.197 from 203.0.113.3
Nov 13 09:20:55 heckate_router dhclient[1231]: DHCPACK of 192.0.2.197 from 203.0.113.3
Nov 13 09:20:55 heckate_router dhclient[1231]: bound to 192.0.2.197 -- renewal in 74135 seconds.
Nov 14 05:56:30 heckate_router dhclient[1794]: DHCPREQUEST of 192.0.2.197 on enp1s0 to 198.51.100.201 port 67 (xid=0xDEADBEEF)
Nov 14 05:56:30 heckate_router dhclient[1794]: DHCPACK of 192.0.2.197 from 172.17.0.201
Nov 14 05:56:30 heckate_router dhclient[1794]: bound to 192.0.2.197 -- renewal in 88638 seconds.

这几乎与局域网内部的工作方式相同,IP 地址租约会定期刷新。事实上,在面向“互联网”的端,一旦协商了底层协议(在我的情况下是 ONT,在其他情况下是调制解调器),它就与局域网中的客户端计算机没有区别了

答案3

在您与 ISP 及其网络签订的服务范围内:

  • 您的 ISP 问题路由器获取静态 IP 地址

或者

  • 您的 ISP 问题路由器获取动态 IP 地址

处理 IP 分配的具体协议可能会有所不同,具体取决于您的 ISP 的设备是否最新。

假设您的 ISP 使用 DHCP 来解决您的 ISP 问题路由器,您的路由器确实是它的客户端,它从提供商网络内的服务器获取地址。当您首次连接路由器时,它会向网络发送广播请求地址。当它获得地址时,地址类型就会发挥作用。如果您有静态 IP 地址,此地址不会改变。

但更常见的情况是动态地址是签约的,并且具有租约时间,即在需要续订之前持续多长时间。如果您关闭路由器并将其恢复,则它不会请求新地址,因为它已经有一个地址,假设租约仍然有效(如果路由器内存中有地址或服务器跟踪谁是哪个地址是另一个问题)。通常,当租约时间过半时,会请求新的 IP。

相关内容