网关和路由器有什么区别?

网关和路由器有什么区别?

这里我们可以看到路由器是67.23.27.187(第一跳),但网关是67.23.27.1。网关和路由器有什么区别?当只配置了网关地址时,我的电脑如何知道路由器的 IP?

[root@jiaoyou ~]# tracepath google.com
 1:  67-23-27-187.static.slicehost.net (67.23.27.187)       0.000ms pmtu 1500
 1:  67-23-24-2.static.slicehost.net (67.23.24.2)           0.000ms 
 1:  67-23-24-2.static.slicehost.net (67.23.24.2)           4.000ms 
 2:  core7-aggr511a-1.dfw1.rackspace.net (98.129.84.148)  128.008ms 
 3:  bbr1-core7-vlan2007.dfw1.rackspace.net (174.143.123.117)   4.000ms 
 4:  no reply
 5:  no reply

[root@jiaoyou ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=jiaoyou
GATEWAY=67.23.27.1

答案1

网关和路由器本质上是相同的。术语“默认网关“ 是指 LAN 上的路由器,其职责是作为 LAN 外计算机流量的第一个接触点。

如果你的局域网有多个路由器,那么指定为默认网关的路由器可以使用ICMP 重定向或其他机制,为给定的目的地提供更合适的路线。

例如

                   (互联网)---[谷歌]
                       | 64.20.60.99
                      [R2]
67.23.27/255 |187
|------+--------+------+-----|
       |9 |1
     [电脑][R1]
                | 67.23.28/255
           |----+------+----------|
                       |9
                    [服务器]

如果路由器 R1 是 PC 的默认网关,当 PC 首次尝试联系 Google 时,PC 会将数据发送到 R1(因为 PC 知道 Google 的 IP 地址不在 PC 的子网中),但是 R1 会告诉 PC,到 64.20.60.99 的更合适路由是通过路由器 R2。PC 会将其添加到其路由表中,因此 R1 不会显示在后续的跟踪路由中。

你电脑上的命令netstat -nr将显示从配置文件中学到的静态路由,以及通过 ICMP 重定向或监听学到的动态路由路由协议广播/多播。

术语“网关”具有其他含义,与您的问题中的文件和命令无关。

答案2

@RedGrittyBrick 的回答完全正确(“路由器和网关本质上是相同的”),其他一些响应者混淆了这些术语,或者说得客气一点,误解了这个问题(或维基百科)。

就路由而言,“网关”一词几乎只与“默认”一起使用,并且“网关”为每个没有更具体路由可用的网络提供路由。

根据定义,网关必须是执行路由的设备,它可以是专用设备,特别是路由器,也可以是配置为路由的主机,但它执行的是相同的工作。因此,网关可以是路由器,而路由器也可以称为网关。

“默认网关”和路由器之间的 TTL 没有区别,一旦执行路由的设备将 IP 数据包从一个网络/子网传递到另一个网络/子网,它就必须减少 TTL,这在相关的 RFC 中已经说得很清楚了。

网关不需要执行 NAT,通常家庭网络会有一个默认网关,即连接到 ADSL 的路由器,该类型的设备将执行 NAT,而工作子网上的默认网关只会通向更广泛的办公室 LAN,不会执行 NAT。

在回答您关于到达不在本地子网上的某个地方的问题时,@RedGrittyBrick 对 ICMP 重定向的说法再次正确,此外,主机发送数据包时经历的过程如下:

1 - 使用自己的 IP 地址和掩码检查目标数据包的 IP 地址是否在本地子网中。

2 – 如果目的地在本地子网中,则发送该本地设备的 MAC 地址的 ARP 请求,然后将帧发送到主机。

3 – 如果目的地不在本地子网中,则向该网络发送网关 MAC 地址的 ARP 请求,然后将帧发送到网关进行转发(此时可能会启动有关 ICMP 重定向的点)。

因此可以看出,每个主机在发送数据包之前都会做出自己的路由选择(当然,这些数据会被缓存,因此不会对每个数据包都进行查找)。

答案3

路由器充当网关,但具有附加功能。根据维基百科:“网关是大多数路由器的基本功能,尽管其他设备(例如任何 PC 或服务器)也可以充当网关。”

答案4

网关控制网络中的计算机对其他计算机的访问。

路由器是网关的一种特殊形式:它可以在不同网络之间转发 IP 数据包。

在您的情况下,网关知道路由器并将所有非内部地址的请求转发到路由器。

相关内容