Дополнительно

В случае, если с маршрутизацией не всё в порядке для траблшутинга вам понадобятся две команды: traceroute и show ip route. У первой бывает полезным, как вы видели, задать адрес источника. А последнюю можно применять с параметрами, например:

msk-arbat-gw1#sh ip route 172.16.17.0
Routing entry for 172.16.16.0/21
Known via "static", distance 1, metric 0
Routing Descriptor Blocks:
* 172.16.2.2
Route metric is 0, traffic share count is 1

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

И ещё хотелось бы повторить самые важные вещи:

  • Когда блок данных попадает на маршрутизатор, заголовок Ethernet полностью отбрасывается и при отправке формируется совершенно новый кадр. Но IP-пакет остаётся неизменным

  • Каждый маршрутизатор в случае статической маршрутизации принимает решение о судьбе пакета исключительно самостоятельно и не знает ничего о чужих таблицах

  • Поиск в таблице идёт НЕ до первой попавшейся подходящей записи, а до тех пор, пока не будет найдено самое точное соответствие (самая узкая маска). Например, если у вас таблица маршрутизации выглядит так:

    172.16.0.0/16 is variably subnetted, 6 subnets, 3 masks
    S 172.16.0.0/16 [1/0] via 172.16.2.22
    C 172.16.2.20/30 is directly connected, FastEthernet0/0
    C 172.16.2.24/30 is directly connected, FastEthernet0/0.2
    C 172.16.2.28/30 is directly connected, FastEthernet0/0.3
    S 172.16.10.0/24 [1/0] via 172.16.2.26
    S 172.16.10.4/30 [1/0] via 172.16.2.30

    И вы передаёте данные на 172.16.10.5, то он не пойдёт ни по маршруту через 172.16.2.22 ни через 172.16.2.26, а выберет самую узкую маску (самую длинную) /30 через 172.16.2.30

  • Если IP-адресу получателя не будет соответствовать ни одна запись в таблице маршрутизации и не настроен маршрут по умолчанию (шлюз последней надежды), пакет будет просто отброшен

Last updated