计算机如何检测路由器?


10

路由器是否总是在广播“我在这里”(例如,每隔一段时间),并且计算机在收听或路由器在收听,并且一旦计算机广播“这里是否有路由器?” 它回应吗?这听起来像是一个愚蠢的问题,但我找不到答案。虽然我确实知道,当计算机已经知道路由器的存在时,它会首次请求IP地址。

Answers:


9

查看您的问题,您似乎在混淆DHCP和路由。

要明确的是,它们都完成不同的任务,并且彼此之间实际上没有任何关系。DHCP是一种将IP动态分配给客户端的方法。路由允许您从一个网络到达另一个网络。

回答您的问题。.您的计算机实际上有两种方法可以知道网络上是否存在路由器。可能是因为您已使用默认网关(默认网关是路由器)手动分配了IP地址/子网掩码,或者是因为计算机已设置为通过DHCP请求IP,并且在DHCP报价中从服务器接收到的IP包含了一个客户端使用的默认网关。

在客户端配置了IP地址和默认网关(再次手动或通过dhcp)之前,客户端将不会尝试与路由器进行任何通信。然后,计算机将查看自己的IP地址和子网掩码,以确定其尝试与之通信的IP地址是否在其本地网络上。如果是,它将尝试直接将数据发送到设备,如果不是,则它将查看其配置的默认网关(路由器)并将其发送到该设备。然后,路由器会将流量发送到目的地(因为它具有路由),或者发送到可能知道目的地网络存在的其他路由器。


我注意到ARP首次出现时(通过Wireshark)假定为xxx1。路由器如何正式“询问”?如果路由器不在xxx1上怎么办?它广播什么ARP或保留.1?
PeterT

2

使用IPv4,计算机实际上并不了解路由器。主机将具有已配置的网关,它将向该网关发送发往其他网络的所有流量。网关可能是路由器,但不一定。网关可以手动配置,也可以通过DHCP分配。在手动或动态分配主机之前,主机没有配置的网关。这意味着,除非分配了一个网络,否则它无法与其他网络通信。

另一方面,IPv6已添加ND(邻居发现),并且ND的一部分包括RA(路由器广告)。可以将路由器配置为通告其存在以及本地网络前缀。尽管存在用于IPv6的DHCP版本,但这使IPv6主机无需DHCP即可配置自己。


根据定义,IP网关是路由器。
罗尼·罗斯顿

不,不一定。几乎在所有情况下都是如此,但是在某些奇怪的情况下,网关可能是其他东西,而不必像路由器那样将流量发送到其他网络。
罗恩·莫平

1

现代以太网控制器具有链接状态检测。他们可以检测到何时建立与其以太网端口的链接。

对于IPv4和IPv6,情况有所不同。首先是IPv4场景。

插入以太网电缆后,操作系统会通过链接状态检测来检测到此情况。如果接口配置为使用DHCP,则客户端将发出DHCP请求。在典型的家庭/小型企业网络中,路由器将运行DHCP服务器,该服务器将为客户端分配IP地址,并告诉客户端要使用的子网掩码,默认网关和DNS服务器。在较大的网络中,路由器和DHCP服务器可能位于不同的设备上。

如果未找到DHCP服务器,则客户端可以继续尝试和/或可以使用“自动专用IP寻址”分配本地IP。

IPv6有点复杂。与IPv4节点不同,IPv6节点始终具有分配给自己的链接本地地址。为了访问Internet,他们将需要一个全局作用域地址和相关设置。IPv6自动配置有三种主要可能性。

  1. 仅RA。路由器发出广告,告知客户端链路上有哪些前缀以及路由器向其提供路由的网络(如果适用,还包括默认网关)。广告被发送到链接上的所有IPv6节点(从技术上来说,这是多播,但实际上它是IPv6与广播最接近的东西),并向客户端通知客户端应使用的前缀和路由器的地址。客户端可以发出请求以提示RA的发送早于路由器发送RA的请求。客户端根据前缀构造自己的IPv6地址。较旧的系统根据其MAC地址使用单个地址,而具有隐私扩展功能的较新的系统将使用多个短期地址。不幸的是,RA不提供DNS服务器配置,
  2. 具有无状态DHCPv6的RA。此处,地址由RA如上处理,但DNS服务器详细信息(可能还有其他次要的配置)由DHCP服务器响应客户端请求发出。
  3. 有状态的DHCPv6,其工作原理类似于IPv4的DHCP。

0

打开您的PC时,它使用DHCP协议来请求IP地址和网络设置。然后,每次从计算机发送数据包时,都会将其发送到路由器的默认网关。路由器不能始终如一地ping通“ hello im here”,就像主机在需要时直接引导流量一样。-希望这可以澄清它。


在请求IP之前。我的计算机如何知道周围有路由器?那是我的问题
Zach P

不是-这就是为什么在您启动PC时发送DHCP请求的原因。如果没有路由器,那么它将不会返回任何信息,例如IP,子网和默认网关。
CrazyHorse019 '16

<<每次从计算机发送一个数据包时,都会将其发送到路由器的默认网关>>不正确。同一LAN上的计算机直接将数据包相互发送。另外,默认网关路由器。
罗尼·罗斯顿

0

在“会话词”中。

您打开计算机,然后计算机检测到网线已连接电缆。

计算机认为“ NICE!我已连接到网络-他们的DHCP服务器是否在线,所以我知道我在哪里?”

计算机发出DHCP请求。

路由器/ DHCP服务器收到此请求并对计算机说:

“嘿!您是,这是您的Netmask,默认网关和其他信息-欢迎使用网络!”

在此处输入图片说明

仅当您的NIC配置为DHCP时,此方法才有效。


0

路由器不会广播它作为默认网关的位置。但是,DHCP服务器确实响应来自端点的呼喊(广播)。DHCP响应的一部分是默认网关(路由器)的IP地址。大多数路由器都内置了DHCP服务器,默认情况下处于禁用状态。许多服务器/ IT管理员更喜欢使用Windows Server DHCP。


路由器不向端点广播它。 ” IPv6路由器不广播(IPv6不广播),但是默认情况下,它会向所有主机多播它是一个路由器。
罗恩·莫平

就像我说的,路由器并没有播出,这是那里的主机。其中的一种过程(例如路由协议)可能会进行广播,以供其他路由器收听,但这是另一种情况。
罗尼·罗斯顿

0

对于您的问题,最合适的答案是DHCP(动态主机配置协议)。当计算机或任何网络设备连接到网络时,它将发送带有广播IP地址(255.255.255.255)的DHCP发现消息,以获得自己的IP地址。收到DHCP Discover消息的 DHCP服务器以DHCP Offer消息响应客户端。如果我们更接近此消息,我们将在其中查看路由器选项字段。在这里,主机或任何要获取IP地址的网络设备实际上都从该字段学习默认网关的IP地址。

在此处输入图片说明

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.