0.0.0.0网关在路由表中是什么意思?


12

我是Linux系统管理员的新手,我正在学习路由表。

当前,我的虚拟机中有两个接口:

vagrant@vagrant-ubuntu-trusty-64:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:2e:8d:5d  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe2e:8d5d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3146 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2853 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:218526 (218.5 KB)  TX bytes:212044 (212.0 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:5b:5e:65  
          inet addr:172.28.128.3  Bcast:172.28.128.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe5b:5e65/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:14 errors:0 dropped:0 overruns:0 frame:0
          TX packets:31 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5080 (5.0 KB)  TX bytes:4622 (4.6 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

当我执行route -n时,我看到下表:

vagrant@vagrant-ubuntu-trusty-64:~$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
172.28.128.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1

我知道第一个条目是默认路由。只是想知道第二和第三条目网关(0.0.0.0)在这里是什么意思?


3
在Linux上,更喜欢更现代ip addrip route工具。
user1686

Answers:


18

如果网关全为零,则意味着没有网关。

这是因为相关网络直接连接到计算机,因为计算机在属于该网络子网的接口上具有IP地址。

这些网络的任何数据包都无需路由,因为它们已连接,因此可以将数据包直接发送到本地网络上的目的地。

如果计算机具有发往这些网络上其他设备的数据包,它将执行ARP请求,以查找与IP关联的MAC地址,并将数据包直接传输到该MAC地址。


感谢您的回复!那么,路由表中可以有两个不同的网关吗?我想可以,但是它们将是两个不同的子网吗?
金太郎

请注意,网关是您将特定网络的数据包发送到的IP地址。默认网关是一个IP地址,您将路由表中没有其他匹配项的数据包发送到该IP地址。所以可以,如果您具有通过不同路由器访问的不同子网,则可以有许多网关。您可以有多个默认网关,例如,您在其中具有到Internet的多个路径。
Paul

您可以有多个网关-每个子网(较小的子网优先于较大的子网),或者通过为同一子网设置多个网关-在这种情况下,根据路由表中的度量和位置或通过多个路由表来选择1使用不同的网关和基于usong策略的路由来确定要使用哪个表。
大卫

非常感谢您的答复
Jason Krs
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.