RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 767857
Accepted
Павел Игорев
Павел Игорев
Asked:2020-01-08 09:07:30 +0000 UTC2020-01-08 09:07:30 +0000 UTC 2020-01-08 09:07:30 +0000 UTC

路由器如何确定目标 IP 地址的路径?

  • 772

我不明白路由器如何理解数据包需要通过哪些其他路由器才能到达所需的 IP 地址?也就是说,例如,从伏尔加格勒的家用计算机(通过家用路由器)向位于墨西哥的站点发送打开 html 页面的请求。而这个家庭路由器又是如何知道数千个中间路由器中的哪一个通过数据包到达墨西哥的呢?

администрирование
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. Best Answer
    user194374
    2020-01-08T15:10:31Z2020-01-08T15:10:31Z

    在路由中有一个概念“默认网关”(default gateway)。事实上,它的存在意味着:“如果你不知道到目标地址的路由,就将它发送到默认网关。”

    除了默认路由,路由器还可以知道具体的子网。例如,家庭路由器通常只知道用户设备连接到的内部子网。他在提供商的网关上“抛出”的所有其他内容。家庭路由器也可能知道提供商的内部网络,但通常这是它的“知识”结束的地方。

    但是提供商的路由器“知道”更多。如果您不深入研究提供商网络的内部路由,那么我们可以简单地说,提供商的路由器知道所有提供商的内部子网,以及与它直接连接的其他提供商的子网(so-称为“对等”)。奇怪的是,大多数提供商还有一个默认网关,可以通向更高级别和规模的提供商(所谓的“上行链路”,上行链路)。

    但!在网络的最顶端是来自第 1 层组的提供者。他们的路由器没有默认网关。他们“知道”任何 IP 地址的位置。一级供应商提供网络连接,即 允许任何两个“白色”IP 地址相互连接。这些供应商的设备自然无法与普通的家用硬件相提并论。

    应该补充的是,如果我们知道目标地址在哪里,即 它所在的路由器的地址,这并不意味着这个目标路由器是唯一的。实际上,子网与路由器地址相关联,即 由该路由器服务的一组连续的地址(或几个组)(所谓的“前缀”)。在这个路由器后面可能有一组其他的,每一个只为这些地址的一部分提供服务。例如,提供商可以为一个地区设置一个路由器,并拥有一个连接地区子网的全市网络。此结构允许您通过减少上行链路级别的前缀数量来聚合地址。

    因此,当您在伏尔加格勒的家用计算机想要从墨西哥的站点获取页面时,它会向家庭路由器发送一个数据包,然后再将数据包发送到供应商的路由器,再将供应商发送到其上行链路,依此类推,直到数据包到达供应商知道墨西哥站点的位置(更准确地说,它知道它所在的路由器的地址)。然后数据包通过另一条路由器链,后面有越来越小的子网,最后到达所需的站点。当网站向您发送响应时,也会发生类似的过程。

    • 9
  2. Akina
    2020-01-08T12:37:29Z2020-01-08T12:37:29Z

    路由器如何了解数据包需要通过哪些其他路由器才能到达所需的 IP 地址?

    没门。这不是他关心的问题。路由器仅根据其本地路由确定目标地址正式可达的下一跳。而进一步发送到哪里是下一个节点关心的问题。

    • 6

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    是否可以在 C++ 中继承类 <---> 结构?

    • 2 个回答
  • Marko Smith

    这种神经网络架构适合文本分类吗?

    • 1 个回答
  • Marko Smith

    为什么分配的工作方式不同?

    • 3 个回答
  • Marko Smith

    控制台中的光标坐标

    • 1 个回答
  • Marko Smith

    如何在 C++ 中删除类的实例?

    • 4 个回答
  • Marko Smith

    点是否属于线段的问题

    • 2 个回答
  • Marko Smith

    json结构错误

    • 1 个回答
  • Marko Smith

    ServiceWorker 中的“获取”事件

    • 1 个回答
  • Marko Smith

    c ++控制台应用程序exe文件[重复]

    • 1 个回答
  • Marko Smith

    按多列从sql表中选择

    • 1 个回答
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Suvitruf - Andrei Apanasik 什么是空? 2020-08-21 01:48:09 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5