为什么路由器中的路由表的网关设置为各自接口的IP地址

普拉纳夫

在下面的文章中,路由器将网关设置为其自己的接口之一的IP地址。下图显示了其中路由器2的路由表可见的网络拓扑,其中一个网关设置为172.161.1.1,这是eth1 IP地址-网络拓扑图

Q.1为什么要这样做?网关不应该是下一跳的IP地址吗?

Q.2这与将0.0.0.0放入网关字段相同吗?

用户名

这是一个符号问题。

通常,此类条目表示“链接”路由(也称为“连接”路由),即在该接口上无需任何网关即可直接访问的网络换句话说,是本地子网。

但是,不同的操作系统,甚至不同的用户界面,都有记录这些路由的不同方法。

  • Solaris和OpenBSD“ netstat -rn”使用接口的本地地址(并且没有'G'标志,指示这是非网关路由)。而且它也不会显示网络掩码。

    $ netstat -rn
      Destination           Gateway           Flags  Ref     Use     Interface
    -------------------- -------------------- ----- ----- ---------- ---------
    default              192.168.1.1          UG        5  280064959 aggr1
    192.168.1.0          192.168.1.7          U         3   11962636 aggr1
    
  • 但是,在Linux上,相同的“ netstat -rn”使用0.0.0.0代替,因为实际接口存储在单独的字段中。

    $ netstat -rn
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 eno1
    192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eno1
    
  • FreeBSD和NetBSD将显示网关是一个“链接”:

    $ netstat -rn
    Destination        Gateway            Flags    Refs      Use    Mtu Interface
    default            192.168.1.1        UGS         -        -      -  wm1
    192.168.1/24       link#2             UC          -        -      -  wm1
    192.168.1.8        link#2             UHl         -        -      -  lo0
    
  • 当今的Linux使用一套完全不同的CLI工具。“ ip route show”使用灵活的输出格式,并且在显示此类路由时仅省略了“ via <gateway_addr>”部分。

    $ ip -4 route show
    default via 192.168.1.1 dev eno1
    192.168.1.0/24 dev eno1
    
  • 思科说“直接连接”:

  • Windows说“在链接上”:

    C:\> route print
    Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0    192.168.1.254    192.168.1.100     35
          192.168.1.0    255.255.255.0         On-link     192.168.1.100    291
    
  • Mikrotik RouterOS将接口名称放置在网关字段中(加上显示“ connected”的“ C”标志):

    > /ip route print detail
     1 A S  dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1
            scope=30 target-scope=10
     2 ADC  dst-address=192.168.1.0/24 pref-src=192.168.1.9 gateway=ether1
            distance=0 scope=10
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Linux IPv6:为从路由器通告中获知的默认网关指定策略路由表?

如果IP地址是唯一的,为什么这么多路由器的地址为192.168.1.1?

为什么我的路由器停止提供IP地址

路由器设置需要我的IP地址,DNS服务器和网关吗?

在路由表中找不到IP地址

为什么路由器IP未在ifconfig中列出?

为什么要用路由器的IP地址作为dns服务器的地址?

为什么我的路由器为IP和IPv6交易使用不同的MAC地址?

为什么路由器不能使用MAC地址而不是专用/本地IP地址?

服务器“远程IP”始终返回网络中匹配数据的默认网关(路由器)的IP地址

为什么169.254.0.0默认显示在路由表中?

为什么路由器需要知道调制解调器的静态IP地址?

使路由器DNS解析为内部IP地址

Terraform NAT网关到设置路由表

我可以在路由器的子网中设置新接口使用哪个IP范围?

路由表,传出数据包的IP地址

路由器如何分配IP地址?

从路由器获取奇怪的IP地址

如何阻止特定的dhcp接口在Linux(RPi)中将网关添加到我的路由表中?

为什么路由器的DNS设置会更改?

为什么我的卫星调制解调器/路由器在LAN端有2个IP地址?

设置路由以访问WAN接口上的外部路由器

连接到无路由器自动IP LAN的设备上要设置的默认网关?

为什么我的Raspberry Pi的IP地址没有显示在LAN下的D-LINK路由器上?

为什么我们需要路由器,因为交换机也可以使用IP地址

我可以将内部路由器设置为网关吗?

Cloudformation:Internet网关无路由的VPC路由表

为什么内容被填充为angular2中路由器出口的同级

如何通过Shell获取Android的网关/路由器IP?