Назад | Перейти на главную страницу

В чем разница между шлюзом и маршрутизатором?

Здесь мы видим, что роутер 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

Шлюз и маршрутизатор по сути одинаковы. Семестр "шлюз по умолчанию"используется для обозначения маршрутизатора в вашей локальной сети, который отвечает за то, чтобы быть первой точкой контакта для трафика с компьютерами за пределами локальной сети.

Если в вашей локальной сети несколько маршрутизаторов, маршрутизатор, назначенный шлюзом по умолчанию, может уведомить ваш компьютер, используя Перенаправление ICMP или другой механизм более подходящего маршрута для данного пункта назначения.

Например


                   (Internet)---[Google]
                       |         64.20.60.99
                      [R2]
67.23.27/255           |187
|------+--------+------+-----|
       |9       |1
     [PC]     [R1]
                |      67.23.28/255
           |----+------+----------|
                       |9
                    [Server]

Если маршрутизатор R1 является шлюзом ПК по умолчанию, когда ПК впервые пытается связаться с Google, ПК отправит данные на R1 (поскольку ПК знает, что IP-адрес Google не находится в подсети ПК), однако R1 сообщит ПК, что более подходящий маршрут к 64.20 .60.99 через маршрутизатор R2. ПК добавит это в свою таблицу маршрутизации, поэтому R1 не будет отображаться в следующей трассировке.

Команда netstat -nr на вашем ПК покажет как статические маршруты, которые он узнал из файлов конфигурации, так и динамические маршруты, полученные с помощью перенаправлений ICMP или прослушивания протокол маршрутизации трансляции / многоадресные рассылки.

Термин «шлюз» имеет другие значения, не относящиеся к файлу и команде в вашем вопросе.

@RedGrittyBrick абсолютно прав со своим ответом («маршрутизатор и шлюз, по сути, одно и то же»), некоторые другие респонденты путают термины или, мягко говоря, неправильно поняли вопрос (или википедию).

Что касается маршрутизации, то термин «шлюз» почти всегда используется только в сочетании со словом «по умолчанию», и этот «шлюз» обеспечивает маршрут к каждой сети, для которой нет более конкретного маршрута.

По определению, шлюз должен быть устройством, которое выполняет маршрутизацию, это может быть выделенное устройство, в частности маршрутизатор, или хост, настроенный для маршрутизации, но выполняющий ту же работу. Таким образом, шлюз может быть маршрутизатором, а маршрутизатор может быть известен как шлюз.

Нет никакой разницы в TTL между «шлюзом по умолчанию» и маршрутизатором, как только устройство, выполняющее маршрутизацию, передает IP-пакет из одной сети / подсети в другую, оно должно уменьшить TTL, что совершенно ясно указано в соответствующем RFC.

Шлюз не обязательно должен выполнять NAT, обычно в домашней сети будет шлюз по умолчанию, который представляет собой маршрутизатор, подключенный к ADSL, этот тип устройства будет выполнять NAT, тогда как шлюз по умолчанию в вашей подсети на работе просто приведет к более широкой офисной локальной сети. и NAT делать не будет.

В ответ на ваш вопрос о выходе куда-то, что не в локальной подсети, @RedGrittyBrick снова прав в отношении перенаправления ICMP, кроме того, процесс, который проходит хост при отправке пакета, таков:

1 - Используйте собственный IP-адрес и маску, чтобы проверить, находится ли IP-адрес целевого пакета в локальной подсети.

2 - Если пункт назначения находится в локальной подсети, отправьте ARP-запрос для MAC-адреса этого локального устройства, а затем отправьте кадр на хост.

3 - Если пункт назначения не находится в локальной подсети, отправьте запрос ARP для MAC-адреса шлюза в эту сеть, затем отправьте кадр на шлюз для дальнейшей пересылки (в этот момент может сработать точка перенаправления ICMP).

Таким образом, можно видеть, что каждый хост самостоятельно выбирает маршрут перед отправкой пакетов (конечно, эти данные кэшируются, поэтому поиск не выполняется для каждого отдельного пакета).

Маршрутизатор служит шлюзом, но с дополнительными функциями. Согласно википедии: «Шлюз является важной функцией большинства маршрутизаторов, хотя другие устройства (например, любой ПК или сервер) могут функционировать как шлюз».

Какой у вас IP?

Для пакетов, исходящих от самого маршрутизатора, не будет сокращаться время жизни (TTL) при выходе из маршрутизатора.

Для пакетов от другого источника, проходящих через маршрутизатор, TTL будет уменьшаться на 1 на каждом переходе. Если пакеты входят в маршрутизатор с TTL, равным 1, и маршрутизатор является пунктом назначения, тогда трафик будет приниматься маршрутизатором. Если маршрутизатор не является адресатом, TTL пакетов будет снижен до 0 перед выходом из маршрутизатора, и они будут отброшены.

Шлюз управляет доступом компьютеров в сети к другим компьютерам.

Маршрутизатор - это особая форма шлюза: он может пересылать IP-пакеты между разными сетями.

В вашем случае шлюз знает маршрутизатор и перенаправляет все запросы, относящиеся к не внутренним адресам, на маршрутизатор.

Обычно «шлюз» - это машина, которая выполняет «маскировку» NAT, и это означает, что шлюз отправляет запрос данных от имени частных IP-адресов, для которых соответствующая машина является шлюзом, и когда данные возвращаются, передает данные на эти частные IP-адреса. Если хотите, можно сказать, что шлюз «олицетворяет» частные IP-машины по отношению к Интернету.

OTOH маршрутизатора просто перенаправляет пакеты от одного интерфейса к другому. Имея набор правил (статическая установка или динамическая установка (протоколы маршрутизации)), маршрутизатор знает, что нужно отправлять пакеты на определенный интерфейс, чтобы эти пакеты достигли желаемой сети.

http://en.wikipedia.org/wiki/IP_masquerading
http://en.wikipedia.org/wiki/Routing

и чтобы конкретно ответить на ваш вопрос: «как мой компьютер узнает IP-адрес маршрутизатора, когда настроен только адрес шлюза»: каждая подключенная машина будет знать адрес своего IP-адреса «следующего перехода» (шлюза). следующий переход шлюза - это IP-адрес подключенного интерфейса маршрутизатора, который знает, как направлять ваши пакеты по правильным путям для достижения сети назначения

также: ВАШ next-hop - 67.23.27.1.
67.23.27.187 - это либо next-hop для 67.23.27.1, либо next-ip для пути к google.com

хорошо, когда передача осуществляется в пределах одной локальной области или локальной сети, маршрутизатор в этом случае называется шлюзом, например, предположим, что у вас есть 6 домов в вашем районе (просто пример), теперь все хотят получить доступ в Интернет, у вас будет общий маршрутизатор в первую очередь, который будет называться шлюзом. Теперь, если адрес шлюза (IP-адрес, а не Mac) равен 192.128.1.1, то ваш IP-адрес будет просто расширением этого адреса, например 192.128.1.101,192.128. 1.102,192.128.1.103 ... и так далее. Теперь шлюз дополнительно подключен к Интернету, который имеет огромную огромную сеть шлюзов, но на этот раз они будут называться маршрутизаторами. Таким образом, в вашем случае первый переход от вашего дома к шлюз с 67.23.27.187 на 67.23.27.1, а затем на другие маршрутизаторы. Надеюсь, вы его получите.