米葫芦网

初始化路由表

热度:8℃ 发布时间:2024-11-17 11:41:17

我们从来没有说过这些路由表是如何被创建的。每当初始化一个接口时(通常是用ifconfig命令设置接口地址),就为接口自动创建一个直接路由。对于点对点链路和环回接口来说,路由是到达主机(例如,设置H标志)。对于广播接口来说,如以太网,路由是到达网络。
到达主机或网络的路由假如不是直接相连的,那么就必须加入路由表。一个常用的方法是在系统引导时显式地在初始化文件中运行route命令。在主机svr4上,我们运行下面两个命令来添加路由表中的表项:
routeadddefaultsun1
routeaddslipbsdi1
第3个参数(default和slip)代表目的端,第4个参数代表网关(路由器),最后一个参数代表路由的度量(metric)。route命令在度量值大于0时要为该路由设置G标志,否则,当耗费值为0时就不设置G标志。不幸的是,几乎没有系统愿意在启动文件中包含route命令。在4.4BSD和BSD/386系统中,启动文件是/etc/netstart;在SVR4系统中,启动文件是/etc/inet/rc.inet;在Solaris2.x中,启动文件是/etc/rc2.d/S69inet;在SunOS4.1.x中,启动文件是/etc/rc.local;而AIX3.2.2则使用文件/etc/rc.net。
一些系统答应在某个文件中指定默认的路由器,如/etc/defaultrouter。于是在每次重新启动系统时都要在路由表中加入该默认项。初始化路由表的其他方法是运行路由守护程序或者用较新的路由器发现协议
较复杂的路由表
在我们的子网上,主机sun是所有主机的默认路由器,因为它有拨号SLIP链路连接到Internet上

前两项与主机svr4的前两项一致:通过路由器bsdi到达slip的特定主机路由,以及环回路由。第3行是新加的。这是一个直接到达主机的路由(没有设置G标志,但设置了H标志),对应于点对点的链路,即SLIP接口。假如我们把它与ifconfig命令的输出进行比较:sun%ifconfigsl0sl0:flags=1051inet140.252.1.29-->140.252.1.183netmaskffffff00
可以发现路由表中的目的地址就是点对点链路的另一端(即路由器netb),网关地址为外出接口的本地IP地址(140.252.1.29)(前面已经说过,netstat为直接路由打印出来的网关地址就是本地接口所用的IP地址)。
默认的路由表项是一个到达网络的间接路由(设置了G标志,但没有设置H标志),这正是我们所希望的。网关地址是路由器的地址(140.252.1.183,SLIP链路的另一端),而不是SLIP链路的本地IP地址(140.252.1.29)。其原因还是因为是间接路由,不是直接路由。
还应该指出的是,netstat输出的第3和第4行(接口名为sl0)由SLIP软件在启动时创建,并在关闭时删除.
没有到达目的地的路由
我们所有的例子都假定对路由表的搜索能找到匹配的表项,即使匹配的是默认项。假如路由表中没有默认项,而又没有找到匹配项,这时会发生什么情况呢?结果取决于该IP数据报是由主机产生的还是被转发的(例如,我们就充当一个路由器)。假如数据报是由本地主机产生的,那么就给发送该数据报的应用程序返回一个差错,或者是“主机不可达差错”或者是“网络不可达差错”。假如是被转发的数据报,那么就给原始发送端发送一份ICMP主机不可达的差错报文。下一节将讨论这种差错。
网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载