我最近买了一台新打印机,它只有 Wi-Fi,没有以太网。所以,我想设置一个静态路由,这样我就不必处理每次 DHCP 更新后可能更改 IP 地址的问题。设置打印机后,我打印了打印机提供的网络表,并将子网掩码和 IP 地址输入到路由器中以进行静态路由
我还尝试输入 表上列出的默认网关地址192.168.1.1
,但它给出了一个错误,说网关地址不正确。这是一个 linksy 路由器。打印机使用的是 DHCP,而不是静态 IP。我用来192.168.1.1
访问我的路由器,当我在电脑上使用ipconfig /all
命令时,它还说默认网关是192.168.1.1
。
一切都告诉我我的默认网关是,192.168.1.1
但我的路由器说这是不正确的。当我 ping 时192.168.1.1
,我得到了预期的响应,但如果 ping 192.168.0.1
,我得不到响应,我的路由器在静态路由中接受的地址。
我很困惑为什么192.168.0.1
会这样,但其他一切都告诉我,我并不清楚。ChatGPT 告诉我可以尝试,192.168.0.1
但无法回答我为什么会这样,尽管我 99% 确定我的默认网关是192.168.1.1
。
我用 Google 搜索没有找到任何关于此问题的具体信息。有人能给我解释一下吗?
人们还需要什么其他信息?另外,据我检查,没有 IP 冲突。
网络图如下:
答案1
打印机不在不同的子网上,打印机子网是 255.255.255.0,路由器是 255.255.255.0。
那些是不是子网。它们是子网面具,它仅定义子网的大小,而不定义其身份。例如,192.168.1.0/255.255.255.0 和 192.168.0.0/255.255.255.0 是两个非常不同的子网,即使它们的大小相同。
但如果打印机实际上不是位于不同的子网中 – 如果它与 LAN 的其余部分位于同一个 192.168.1.0/255.255.255.0(即 192.168.1.0/24)中 – 那么为其创建静态路由绝对毫无意义。您的路由器已经为其所在的整个子网提供了路由。
因此,我想设置静态路由,这样我就不必在每次 DHCP 更新后更改 IP 地址。设置打印机后,我打印了打印机提供的网络表,并将子网掩码和 IP 地址输入到路由器中,以进行静态路由
静态路由在这里确实是错误的工具。
即使操作正确,静态路由也需要指向静态 IP 地址 - 如果打印机有静态 IP 地址,那么这已经解决了它更改 IP 地址的问题,您可以直接使用该地址没有无需定制路线即可处理。
除此之外,您的路由器可能有一个更简单的选项来设置静态 DHCP 租约分配 - DHCP 并不意味着“每次续订后更改地址”;打印机的地址将与路由器告诉设备的地址完全相同。
一切都告诉我我的默认网关是 192.168.1.1,但我的路由器说这是不正确的。当我 ping 192.168.1.1 时,我得到了预期的响应,但如果 ping 192.168.0.1,我得不到响应,这是我的路由器在静态路由中接受的地址。
路由器说这是“不正确的”,因为这是路由器的自己的地址。
“网关”字段并不是一个需要通过占卜来发现的神奇参数——它实际上只是您希望设备将数据包传递给的路由器的 IP 地址;如果您知道数据包接下来必须通过 192.168.1.1,那么您将指定 192.168.1.1 作为网关,如果您知道没有设备的 IP 地址为 192.168.7.7,那么这自动意味着 192.168.7.7 也不可能是有效的网关。
这也意味着“正确”的值不是整个网络通用的,而是取决于在哪里使用;例如,连接到路由器 A 的设备将使用 A 作为网关,但 A 本身需要使用路由器 B 或 C 作为网关,依此类推 – 路由器 A 使用“路由器 A”作为自己的网关是没有意义的。因此,192.168.1.1 是您网络某个部分的默认网关是正确的,但这并不适用于此处。
事实上,现在不您可以在此处输入静态路由的有效值,因为您的网络目前甚至没有第二个路由器来转发这些数据包。您可以通过查看周围并确定除了您正在配置的路由器之外没有其他路由器来判断这一点。
在此设置中,即使打印机的 IP 地址在数字上确实位于不同的子网中,它在拓扑上仍然与主子网连接到相同的“链接”,因此您需要的是路由没有指定网关 – “链接路由”或“接口路由”。(有时路由器可能会坚持使用 0.0.0.0 作为此类路由的“网关”,但实际上它是没有网关的路由。)