Такой вывод свидетельствует об успешном обмене данными с удаленным узлом, то есть у нас теперь есть действующий маршрут в сеть Интернет.
Однако мы еще не создали маршруты к другим сегментам сети books-net. Если мы выполним прозвонку для узла из другой подсети, нас ожидает нечто интересное:
{xtypo_code}% ping 172.16.1.2
PING 172.16.1.2: 56 data bytes
ICHP Host redirect from gateway crab.wrotethebook.com (172.16.12.1)
to horseshoe.wrotethebook.com (172.16.12.3) for ora.wrotethebook.com (172.16.1.2)
64 bytes from ora.wrotethebook.com (172.16.1.2): icmp_seq=1. time=30. ms
^C
----172.16.1.2 PING Statistics-—
1 packets transmitted, 1 packets received, 0% packet loss round-trip (ms) min/avg/
max = 30/30/30{/xtypo_code}
rodent считает, что все пункты назначения достижимы через маршрут по умолчанию. Следовательно, даже данные, предназначенные другим подсетям, передаются через шлюз crab. Если rodent передает узлу crab данные, которые должны пройти через horseshoe, crab отвечает узлу rodent сообщением ICMP Redirect, которое предписывает обращаться к узлу horseshoe. (Сообщение ICMP Redirect описано в главе 1.) Команда ping показывает сообщение ICMP Redirect в действии. Перенаправление непосредственно влияет
на таблицу маршрутизации:
{xtypo_code}# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.16.12.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 172.16.12.1 0.0.0.0 UG 0 0 0 eth0
172.16.1.2 172.16.12.3 255.255.255.0 UGHD 0 0 514 eth0{/xtypo_code}
Некоторые администраторы при проектировании сетей пользуются сообщениями ICMP Redirect. Все узлы настраиваются на работу с маршрутом по умолчанию, даже в сетях с многочисленными шлюзами. Шлюзы обмениваются информацией маршрутизации посредством соответствующих протоколов и перенаправляют узлы к лучшим шлюзам для каждого конкретного маршрута. Такой вид маршрутизации, зависимой от сообщений ICMP Redirect, получил широкое распространение благодаря персональным компьютерам.