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

3 ответа3

1

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

0

Шлюз должен иметь те же правила, что и хост, чтобы определять пункт назначения пакета. Таким образом, обычно хост не отправляет пакет на шлюз, если он находится в той же подсети. Термин "шлюз" подразумевает "доступ извне". Вам не нужно проходить через это, если вы можете отправить непосредственно к цели. Таким образом, даже если у вашего хоста есть правила bung, и он отправляет этот пакет на шлюз, шлюз будет иметь правильные правила, которые говорят, что "любой пакет с адресатом в подсети для этого интерфейса будет идти к этому интерфейсу". В этом случае он просто переадресует его, если он был правильно настроен.

0

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .