0.0.0.0 详解

RFC:

0.0.0.0/8 - Addresses in this block refer to source hosts on "this"
network. Address 0.0.0.0/32 may be used as a source address for this
host on this network; other addresses within 0.0.0.0/8 may be used to
refer to specified hosts on this network ([RFC1122],Section 3.2.1.3).

因此,根据RFC文档描述,它不只是代表本机,0.0.0.0/8可以表示本网络中的所有主机,0.0.0.0/32可以用作本机的源地址,0.0.0.0/8也可表示本网络上的某个特定主机,综合起来可以说0.0.0.0表示整个网络

在路由器配置中可用0.0.0.0/0表示默认路由,作用是帮助路由器发送路由表中无法查询的包。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。

查阅百度知道里一些说法如下:

1. 严格说来,0.0.0.0已经不是一个真正意义上的IP地址了。它表示的是这样一个集合:所有不清楚的主机和目的网络。这里的“不清楚”是指在本机的路由表里没有特定条目指明如何到达。对本机来说,它就是一个“收容所”,所有不认识的“三无”人员,一 律送进去。如果你在网络设置中设置了缺省网关,那么Windows系统会自动产生一个目的地址为0.0.0.0的缺省路由。

2. 网络中0.0.0.0的IP地址表示整个网络,即网络中的所有主机。它的作用是帮助路由器发送路由表中无法查询的包。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。

3.若IP地址全为0,也就是0.0.0.0,则这个IP地址在IP数据报中只能用作源IP地址,这发生在当设备启动时但又不知道自己的IP地址情况下。在使用DHCP分配IP地址的网络环境中,这样的地址是很常见的。用户主机为了获得一个可用的IP地址,就给DHCP服务器发送IP分组,并用这样的地址作为源地址,目的地址为255.255.255.255(因为主机这时还不知道DHCP服务器的IP地址)。


route详解:

 -f 清除所有不是主路由 ( 子网掩码为 255.255.255.255 的路由 ) 、环回网络路由 ( 目标为 127.0.0.0 ,子网掩码为 255.255.255.0 的路由 ) 或多播路由 ( 目标为 224.0.0.0 ,子网掩码为 240.0.0.0 的路由 ) 的条目的路由表。 如果它与命令之一 ( 例如 Add 、 Change 或 Delete) 结合使用,表会在运行命令之前清除。

  -p 与 Add 命令共同使用时,指定路由被添加到注册表并在启动 TCP/IP 协议的时候初始化 IP 路由表。 默认情况下,启动 TCP/IP 协议时不会保存添加的路由 , 与 Print 命令一起使用时,则显示永久路由列表。所有其他的命令都忽略此参数。永久路由存储在注册表中的位置是 HKEY_LOCAL_MACHSYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes 。

  command 指定要运行的命令。 下表列出了有效的命令。

  destination 指定路由的网络目标地址。 目标地址可以是一个 IP 网络地址 ( 其中网络地址的主机地址位设置为 0) ,对于主机路由是 IP 地址,对于默认路由是 0.0.0.0 。 mask subnetmask 指定与网络目标地址相关联的网掩码 ( 又称子网掩码 ) 。子网掩码对于 IP 网络地址可以是一适当的子网掩码,对于主机路由是 255.255.255.255 ,对于默认路由是 0.0.0.0 。如果忽略,则使用子网掩码 255.255.255.255 。定义路由时由于目标地址和子网掩码之间的关系,目标地址不能比它对应的子网掩码更为详细。换句话说,如果子网掩码的一位是 0 ,则目标地址中的对应位就不能设置为 1 。
gateway 指定超过由网络目标和子网掩码定义的可达到的地址集的前一个或下一个跃点 IP 地址。 对于本地连接的子网路由,网关地址是分配给连子网接口的 IP 地址。对于要经过一个或多个路由器才可用到的远程路由,网关地址是一个分配给相邻路由器的、可直接达到的 IP 地址。

  metric metric 为路由指定所需跃点数的整数值 ( 范围是 1 ~ 9999) ,它用来在路由表里的多个路由中选择与转发包中的目标地址最为匹配的路由。 所选的路由具有最少的跃点数。跃点数能够反映跃点的数量、路径的速度、路径可靠性、路径吞吐量以及管理属性。

  if interface 指定目标可以到达的接口的接口索引。 使用 Route print 命令可以显示接口及其对应接口索引的列表。对于接口索引可以使用十进制或十六进制的值。对于十六进制值,要在十六进制数的前面加上 0x 。忽略 if 参数时,接口由网关地址确定。

  注意:路由表中跃点数一列的值较大是由于允许 TCP/IP 根据每个 LAN 接口的 IP 地址、子网掩码和默认网关的配置自动确定路由表中路由的跃点数造成的。默认启动的自动确定接口跃点数确定了每个接口的速度,调整了每个接口的路由跃点数,因此最快接口所创建的路由具有最低的跃点数。要删除大跃点数,请在每个 LAN 连接的 TCP/IP 协议的高级属性中禁用自动确定接口跃点数。
如果在 systemrootSystem32DriversEtc 文件夹的本地网络文件中存在适当的条目,名称可以用于 Destination 。只要名称可以通过 “ 域名系统 ”(DNS) 查询这样的标准主机名解析技术分解为 IP 地址,就可以将其用于 Gateway , DNS 查询使用存储在 systemrootSystem32DriversEtc 文件夹下的本地主机文件和 NetBIOS 名称解析。

  如果是 Print 或 Delete 命令,可以忽略 Gateway 参数,使用通配符来表示目标和网关。 Destination 的值可以是由星号 (*) 指定的通配符。如果指定目标含有一个星号 (*) 或问号 (?) ,它被看作是通配符,只打印或删除匹配的目标路由。星号代表任意一字符序列,问号代表任一字符。例如, 10.*.1 、 192.168.* 、 127.* 和 *224* 都是星号通配符的有效使用。
使用了无效的目标和子网掩码 ( 网掩码 ) 值的组合,会显示 “Route bad gateway address netmask” 错误消息。目标中有一位或多位设置为 1 ,而其在子网掩码中的对应位设置为 0 时会发生这个错误。可以通过二进制表示法表示目标和子网掩码来检查这种情况。以二进制表示的子网掩码包括表示目标网络地址部分的一连串的 1 和表示目标主机地址部分的一连串的 0 两个部分。查看目标以确定目标的主机地址部分 ( 由子网掩码所定义 ) 是否有些位设置成了 1 。

  Windows 98 的 Route 命令不支持 -p 参数。

  只有当 TCP/IP 协议在网络连接中安装为网络适配器属性的组件时,该命令才可用。

4. 例举说明

例子 1 :查看 route 所有参数

0.0.0.0 详解

例子 2 :显示 IP 路由表的完整内容

0.0.0.0 详解

例子 3 :要显示 IP 路由表中以 192. 开始的路由

0.0.0.0 详解

例子 4 :添加默认网关地址为 192.168.1.7 的默认路由

0.0.0.0 详解

例子 5 :添加目标为 10.41.0.0 ,子网掩码为 255.255.0.0 ,下一个跃点地址为 10.27.0.1 的路由,执行以下命令:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

例子 6 :要添加目标为 10.41.0.0 ,子网掩码为 255.255.0.0 ,下一个跃点地址为 10.27.0.1 的永久路由,执行以下命令:

  route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1


例子 7 :要添加目标为 10.41.0.0 ,子网掩码为 255.255.0.0 ,下一个跃点地址为 10.27.0.1 ,跃点数为 7 的路由,执行以下命令:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7


例子 8 :要添加目标为 10.41.0.0 ,子网掩码为 255.255.0.0 ,下一个跃点地址为 10.27.0.1 ,接口索引为 0x3 的路由,执行以下命令:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3


例子 9 :要删除目标为 10.41.0.0 ,子网掩码为 255.255.0.0 的路由,执行以下命令:

  route delete 10.41.0.0 mask 255.255.0.0


例子 10 :要删除 IP 路由表中以 10. 开始的所有路由,执行以下命令:

  route delete 10.*


例子 11 :要将目标为 10.41.0.0 ,子网掩码为 255.255.0.0 的路由的下一个跃点地址由 10.27.0.1 更改为 10.27.0.25 ,执行以下命令:

  route change 10.41.0.0 mask 255.255.0.0 10.27.0.25 





上一篇:kill killall pkill 杀死php后台进程


下一篇:基于Linux下 Oracle 备份策略(RMAN)