Пакет отправлен на шлюз по умолчанию, адресованный той же подсети. Что происходит?

Пакет отправлен на шлюз по умолчанию, адресованный той же подсети. Что происходит?

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

решение1

Маршрутизатор должен перенаправить его обратно на правильный интерфейс.

решение2

Шлюз должен иметь те же правила, что и хост, для определения пункта назначения пакета. Поэтому обычно хост не отправляет пакет на шлюз, если он находится в той же подсети. Термин «шлюз» подразумевает «доступ наружу». Вам не нужно проходить через него, если вы можете отправить пакет напрямую в цель. Поэтому даже если у вашего хоста есть правила bung и он ОТПРАВЛЯЕТ этот пакет на шлюз, у шлюза будут правильные правила, которые говорят: «любой пакет с пунктом назначения в подсети для этого интерфейса будет отправлен на этот интерфейс». В этом случае он просто пересылает его, если он был правильно настроен.

решение3

Пакеты поступают на маршрутизаторы от хостов, которые не имеют представления о том, какой IP-адрес маршрутизатора, все время. Они не обязательно знают, что есть более короткий путь, потому что они не обязательно знают, что маршрутизатор и пункт назначения находятся в общей подсети. Это одна из причин, по которой мы имеемСообщения перенаправления ICMP.

Как один из возможных вариантов, рассмотрим случай, когда хост временно доступен через VPN. Маршрутизатор должен выполнить proxy ARP для хоста, чтобы пакеты попали на маршрутизатор. Если хост вскоре подключится напрямую к сети (или через VPN к другому хосту), пакет может попасть на маршрутизатор, и маршрутизатору придется вернуть его в локальную сеть, чтобы он добрался до места назначения.

Другой распространенный способ — если два разных диапазона IP-адресов разделяют одну и ту же физическую сеть. У маршрутизатора может быть два разных IP-адреса, по одному в каждом диапазоне. И хост может знать маршрутизатор только по одному из его IP-адресов. Если он отправляет пакет, направленный в пункт назначения, отличный от маршрутизатора в другом диапазоне IP-адресов, это произойдет.

Связанный контент