Парни, почитал я хабр, что выше. Первое - автор ошибся. Второе - как раз для циско и джуна вижу логику.
По порядку...
В первом примере трассировки, ICMP должен идти "вертикально". Как я писал выше, это пакеты с увеличивающимися TTL. Каждый узел, на котором истек TTL, сообщает источнику об этом. Обращаем внимание как настроен OSPF. Обратный маршрут к PC1 идет через свич. Так вот Линуксовые ответы идут не от исходящего к получателю (PC2) интерфейса, как сказано в RFC , а от интерфейса, который согласно маршрутизации, смотрит в сторону источника. Считаю это не совсем правильно, но согласно маршрутизации к источнику выбор маршрута правильный и только. А как иначе добраться к PC1 ? Смоделирована ведь специально ассиметрия.
Второе. Лично я считаю не логичным отрабатывать RFC (от интерфейса, который смотрит в сторону следующего хопа). И вот почему. Пакет пришел на входящий интерфейс. TTL иссяк. Зачем этот пакет пропускать еще через форвардинг если уже понятно, что он туда не пойдет? Вот от адреса интерфейса, через который пришел пакет и закончил TTL, и нужно отвечать, но, опять же через интерфейс согласно настроенной маршрутизации.
Как-то так. Может запутанно это все описал.