为什么我可以使用网络外部的静态 IP 访问以太网连接设备?

为什么我可以使用网络外部的静态 IP 访问以太网连接设备?

在我的本地网络中,我有以下设置。

LAN 设置

我的笔记本电脑的ipconfig输出是

在此处输入图片描述

我还通过以太网将一台物理打印机连接到路由器。这台打印机有一个http接口,允许您更改其 IP、子网和网关。这是当前设置。

在此处输入图片描述

如您所见,即使打印机位于不同的网络 10.0.0.100 上,我的笔记本电脑 (10.1.1.15) 仍可以访问它。是因为笔记本电脑和打印机共享同一个默认网关吗?这些是目前正在“幕后”进行的步骤吗?

  1. 笔记本轮胎看10.0.0.100
  2. 笔记本电脑无法看到它,因为 10.0.0.100 位于不同的网络上
  3. 笔记本电脑向路由器请求 10.0.0.100
  4. 路由器通常会进入外部互联网世界来查找 10.0.0.100,但由于打印机已“注册”自身,因此路由器能够找到 10.0.0.100 处连接的以太网打印机。

如果这些步骤准确,为什么我无法在路由器的“附加设备”部分看到打印机?

我还尝试了几种不同的打印机设置,结果如下。

printer setup 1 -- laptop successfully reaches http interface at 10.1.10.100
ip - 10.1.10.100
subnet- 255.255.255.0
default gateway - 192.168.1.1

printer setup 2 -- laptop fails to reach http interface at 10.0.0.100
ip - 10.0.0.100
subnet- 255.255.255.0
default gateway - 192.168.1.1

printer setup 3 (setup described above) -- laptop successfully reaches http interface at 10.0.0.100
ip - 10.0.0.100
subnet- 255.255.255.0
default gateway - 10.1.10.1

10.1.10.100设置 1是否由于打印机位于同一网络中,我的笔记本电脑是否无需通过路由器即可访问?

答案1

这好像是路由器的一个神器。

从笔记本电脑的角度来看,这是会发生的情况,它涉及将 IP 地址转换为 MAC 地址的 ARP 协议。第 3 层处理 IP 地址。IP 地址在第 2 层转换为 MAC 地址,然后在第 1 层通过线路发送出去。

  1. 笔记本电脑确定 10.0.0.100 不在同一个网络上。
  2. 笔记本电脑发出ARP请求,将请求发送给默认网关:Who has 10.1.10.1?
  3. 路由器响应:10.1.10.1 is at <Router’s MAC Address>
  4. 笔记本电脑向路由器发送请求。

这就是奇怪的地方:

  1. 路由器必须通过 WAN 接口发送 ARP 请求和 LAN 接口Who has 10.0.0.100?
  2. 打印机响应:10.0.0.100 is at <Printer’s MAC address>
  3. 路由器通过 LAN 接口向打印机发送请求。
  4. 打印机接收请求。
  5. 打印机确定10.1.10.15 不在同一个网络上。
  6. 打印机发送ARP请求,将响应发送给默认网关:Who has 10.1.10.1?
  7. 路由器响应:10.1.10.1 is at <Router’s MAC Address>
  8. 打印机向路由器发送响应。
  9. 路由器发送 ARP 请求:Who has 10.1.10.15?
  10. 笔记本电脑响应:10.1.10.15 is at <Laptop’s MAC address>
  11. 路由器向笔记本电脑发送响应。

这是我唯一能想到的,这意味着路由器在第 5 步时的行为有点奇怪,因为它在 WAN 和 LAN 接口上都查找目标地址。除此之外,这是网络上基本 IP 通信的发生方式。

而不是步骤 5。路由器可能准备将请求从 WAN 接口发送到互联网,但路由器中的某些机制会将请求转发回 LAN 接口。由于这是 SoHo 路由器,我认为不会有任何设置可以做到这一点。但谁知道呢。

为了证明这一点,请安装 Wireshark 并查看是否看到上述数据包流。具体来说,请在网络跟踪中查找步骤 5 和 6。

相关内容