Linux操作系统IP路由基础理论

也许你知道如何在Linux系统上用命令netstat或route来查找(甚至是增加/删除)已经存在的路由。但是在你做这些操作的时候你可能并不知道IP路由是如何工作的。本文将帮助你理解IP路由的原理,以及它是如何工作的。IP路由涉及到IP数据报文的转发。如果主机与目的主机直接相”

【路由器之家】-Linux操作系统IP路由基础理论,下面就是【路由器网】小编整理的路由器设置教程。

 

  也许你知道如何在Linux系统上用命令netstat或route来查找(甚至是增加/删除)已经存在的路由。但是在你做这些操作的时候你可能并不知道IP路由是如何工作的。本文将帮助你理解IP路由的原理,以及它是如何工作的。IP路由涉及到IP数据报文的转发。如果主机与目的主机直接相连,那么主机可以直接发送IP报文到目的主机,这个过程比较简单。例如,通过点对点的链接或通过网络共享。如果主机与目的主机没有直接相连,那么主机会将IP报文发送给默认的路由器,然后由路由器来决定往哪发送IP报文。

Linux操作系统IP路由基础理论

  IP路由涉及到IP数据报文的转发。如果主机与目的主机直接相连,那么主机可以直接发送IP报文到目的主机,这个过程比较简单。例如,通过点对点的链接或通过网络共享。如果主机与目的主机没有直接相连,那么主机会将IP报文发送给默认的路由器,然后由路由器来决定往哪发送IP报文。

  路由原理

  一个普通的主机与路由器之间的根本区别在于,主机不会将一个报文从一个接口转发到另一个接口,而路由器可以转文。

  如今,大多数的多用户系统都可以被配置,从而被当作路由器来用。因此,一个普通路由算法可以被用在路由器上,同样也可以用在一台普通主机上。当一台主机可以用作路由器时,我们通常说这台主机嵌入了路由器的功能。这种具备嵌入路由器功能的主机平常不会转文,除非我们对它进行了配置,使它这种功能。

  IP层着一张路由表,当收到数据报文时,它用此表来决策接下来应该做什么操作。当从网络侧接收到数据报文时,IP层首先会检查报文的IP地址是否是主机自身的地址相同。

  如果数据报文中的IP地址是主机自身的地址,那么报文将被发送到传输层相应的协议中去。如果报文中的IP地址不是主机自身的地址,并且主机配置了具备路由的功能,那么报文将被转发;否则,报文就被丢弃。

  路由表中的数据一般是以条目形式存在。一个典型的路由表条目包含以下主要的条目项:

  ●目的IP地址:此字段表示目标的IP地址。这个IP地址可以是某一台主机的地址,也可以是一个网络地址。如果这个条目包含的是一个主机地址,那么它的主机ID标记为非零;如果这个条目包含的是一个网络地址,那么它的主机ID被标记为零。

  ●下一个路由器的IP地址:为什么我们使用“下一个”的说法,是因为下一个路由器并不总是最后的目的路由器,但它很可能是一个中间路由器。条目给出下一个路由器的地址是用来转发从相应接口收到的IP数据报文。

  ●标志:这个字段提供了另一组重要信息,如目的IP地址(之前提到的)是一个主机地址还是一个网络地址。此外,从标志中可以得知下一个路由器(之前提到的)真的是一个路由器还是一个直接相连的接口。

  ●网络接口规范:一些数据报文的网络接口规范,这个规范跟随报文一起。

  基本的路由是如何工作的?

  因此,如果我们现在想简单而形象地描述路由过程,我们将会看到:一旦主机(被配置成具备路由功能)的IP层接收到从网络侧来的数据报文,它将核实数据包中的目的IP地址,如果此IP不是主机的IP地址,那么包将通过路由表转发。

  如果任何条目的第一个字段完全匹配目的IP地址(主机)或部分匹配目的IP地址(网络),那么它将下一个路由器的IP地址。这是一个重要的信息,因为这些信息直接告诉主机(具备路由功能的)数据包应该转发到哪一个“下一个路由器”去。而条目中所有其它的字段将提供更多辅助的信息来为路由转发做决定。

  在上一段中我们对路由转发过程建立了基本的了解,但如果我们试图深入了解更多的东西,就必须看看以下关于路由表算法的一些详细信息。

  ●首先,路由表会去搜索一个“目的IP地址”字段与数据报文中目的IP地址完全相同的条目。这就意味着IP地址的主机ID与网络ID完全的匹配。如果找到,则数据包被发送到相应接口或中间路由器。

  ●如果没有找到一个完全的匹配IP,那么就接着搜索相匹配的网络ID.如果找到,那么该数据报文会被转发到指定的路由器。所以我们看到,这个网络上的所有主机都通过这个路由表中的单个(这个)条目来管理。

  ●如果上述两个条件都不匹配,那么该数据报文将转发到一个“默认路由器”。

  ●如果上述步骤失败,即没有默认路由器,那么该数据报文最终无法被转发。任何无法投递的数据报文都将产生一个ICMP主机不可达或ICMP网络不可达的错误,并将此错误返回给生成此数据报文的应用程序。

  有时人们会问192.168.2.1,为什么路由表中会有两种类型的条目?有了更精确的主机条目为什么还需要网络相关的条目?嗯…在路由表中包含与网络相关的路由条目是一个很大的优点。其优点在于,拥有一个与完整网络相关的条目,能够避免包含此网络中所有单独的主机条目(这个数据量非常巨大)。这使得路由表的大小降到一个可收受的数量级,这样就非常好。

  查看路由表信息的命令

  你可以使用netstat命令查看路由表信息,如下所示:

  \$netstat-rnKernelIProutingtableDestinationGatewayGenmaskFlagsMSSWindowirttIce192.168.2.00.0.0.0255.255.255.0U000eth0169.254.0.00.0.0.0255.255.0.0U000eth00.0.0.0192.168.2.10.0.0.0UG000eth0其输出提供目的IP地址和网关相关的详细信息。标志“U”表明该路由器可达:“G”表明该路由器与一个网关(路由器)相连。如果这个标志没有被设置,那么我们可以认为主机与目标是直接相连的。

以上关于-【Linux操作系统IP路由基础理论】内容,由【路由器之家】搜集整理分享。

本文来自投稿,不代表路由百科立场,如若转载,请注明出处:https://www.qh4321.com/46428.html

(0)

相关推荐

  • TOTOLINK路由器密码怎么设置图文教程

    TOTOLINK路由器密码设置?这样的提问方式是不严谨的,因为TOTOLINK路由器中有无线wifi密码,还有登录密码。你这样问,小编也不知道你到底需要设置的WiFi密码还是登录密码,让小编也挺为难的。

    2021年3月16日
    2.6K
  • 360智能管家APP绑定360安全路由器操作步骤

    原标题:"360智能管家APP怎么绑定360安全路由器?"相关路由器设置经验分享。 – 来源:路由器之家

    问:用的是360安全路由器,请问360路由器的APP,360智能管家怎么管理路由器,360安”

    2021年1月27日
    8.9K
  • 192.168.1.1 登录入口 宽带连接用户名和密码怎么查

    【导读】宽带连接用户名和密码是什么?图文教程,详细信息请阅读下文!网友提问:电脑宽带链接用户名和密码是什么?我买了一台电脑,要安装宽带,想知道从申请安装到电脑连接设置的全过”

    2021年1月3日
    8.5K
  • 水星(Mercury)无线路由器端口映射设置

    MERCURY水星无线路由器端口映射的设置方法,端口映射在水星路由器上又叫做虚拟服务器,也就是说我们只要在水星路由器上完成虚拟服务器的配置就可以了;本文将通过实例应用的方式来详细介绍其配置

    2021年3月13日
    4.4K
  • word打不开弹出发送错误报告怎么办

    说起Word,用户第一feel是:Word是大家常用的办公软件。有用户反映在使用Word的时候,出现Word文件打不开,提示:word打不开发送错误报告的问题。那么,word打不开发送错误报告怎么处理?下面,小编给大家介绍word打不开发送错误报告的解决步骤。用户反馈双击启动Word时提示打不开发

    2021年9月24日
    100
  • 设置无线路由器的网址192.168.1.1【图】

    原标题:"设置无线路由器的网址是什么?【图】"的相关路由器192.168.1.1登陆页面设置教程资料分享。- 来源:路由器之家。

    经常有一些新手朋友、小白用户,在微信上想我咨询,无”

    2021年2月24日
    119