Ip route АдресСетиНазначения МаскаСетиНазначения Интерфейс
Команда указывает маршрутизатору, шо все пакеты, предназначенные для АдресСетиНазначения-МаскаСетиНазначения следует направлять на свой интерфейс Интерфейс. Если интерфейс Интерфейс - типа Ethernet, то физические (MAC) адреса исходящих пакетов будут широковещательными (почему?).
Вторая версия
Ip route АдресСетиНазначения МаскаСетиНазначения Адрес
Команда указывает маршрутизатору, шо все пакеты, предназначенные для АдресСетиНазначения-МаскаСетиНазначения, следует направлять на тот свой интерфейс, из которого достижим IP адрес Адрес. Как правило, Адрес это адрес следующего хопа по пути к АдресСетиНазначения. Выходной интерфейс и физические адреса исходящих пакетов определяются маршрутизатором по своим ARP таблицам на основании IP адреса Адрес. Например
ip route 10.6.0.0 | 255.255.0.0 | Serial1 | (1) |
ip route 10.7.0.0 | 255.255.0.0 | 10.4.0.2 | (2) |
Первый пример отображает сетевой префикс 10.6.0.0/16 на локальный интерфейс маршрутизатора Serial1. Следующий пример отображает сетевой префикс 10.7.0.0/16 на IP адрес 10.4.0.2 следующего хопа по пути к 10.7.0.0/16. Обе эти команды добавят статические маршруты в таблицу маршрутизации (метка S):
S 10.6.0.0 via Serial1
S 10.7.0.0 [1/0] via 10.4.0.2
Когда интерфейс падает, все статические маршруты, отображаемые на этот интерфейс, удаляются из таблицы маршрутов. Если маршрутизатор не может больше найти адрес следующего хопа по пути к адресу, указанному в статическом маршруте, то маршрут исключается из таблицы.
Заметим, шо для сетей типа Ethernet рекомендуется всегда использовать форму (2) команды ip route. Ethernet интерфейс на маршрутизаторе, как правило, соединён с несколькими Ethernet интерфейсами других устройств в сети. Указание в команде ip route IP адреса позволит маршрутизатору правильно сформировать физический адрес выходного пакета по своим ARP таблицам.
Маршрутизация по умолчанию.
Совсем не обязательно, чтобы каждый маршрутизатор обслуживал маршруты ко всем возможным сетям назначения. Вместо этого маршрутизатор хранит маршрут по умолчанию или шлюз последнего пристанища (last resort). Маршруты по умолчанию используются, когда маршрутизатор не может поставить в соответствие сети назначения строку в таблице маршрутов. Маршрутизатор должен использовать маршрут по умолчанию для отсылки пакетов другому маршрутизатору. Следующий маршрутизатор будет иметь маршрут к этой сети назначения или иметь свой маршрут по умолчанию к третьему маршрутизатору и т.д. В конечном счёте, пакет будет маршрутизирован на маршрутизатор, имеющий маршрут к сети назначения.
Маршрут по умолчанию может быть статически введен администратором или динамически получен из протокола маршрутизации.
Так как все IP адреса принадлежат сети 0.0.0.0 с маской 0.0.0.0, то в простейшем случае надо использовать команду
ip route 0.0.0.0 0.0.0.0 [адрес следующего хопа | выходной интерфейс]
Ручное задание маршрута по умолчанию на каждом маршрутизаторе подходит для простых сетей. В сложных сетях необходимо организовать динамический обмен маршрутами по умолчанию.
Интерфейс петля
На сетевых устройствах можно создавать сетевые интерфейсы не связанные с реальными каналами для передачи данных и назначать на них IP адреса с масками. Такие интерфейсы называют петлями (loopback). Петли полезны при поэтапном проектировании
сетей. Если к какому-то реальному сетевому интерфейсу маршрутизатора в дальнейшем будет подсоединена подсеть, то в начале на маршрутизаторе создаётся loopback, настраивается в плане взаимодействия с остальными участками сети и лишь затем заменяется на реальный интерфейс. Интерфейс петля появляется после команды interface loopbackN или сокращённо int lN, где N целое неотрицательное число – номер петли. Например
Router(conf)>int l0 1.1.1.1 255.0.0.0
Команда trace
Команда trace является идеальным способом для выяснения того, куда отправляются данные в сети. Эта команда использует ту же технологию протокола ICMP, шо и команда ping, только вместо проверки сквозной связи между отправителем и получателем, она проверяет каждый шаг на пути. Команда trace использует способность маршрутизаторов генерировать сообщения об ошибке при превышении пакетом своего установленного времени жизни (Time To Live, TTL). Эта команда посылает несколько пакетов и выводит на экран данные про время прохождения туда и назад для каждого из них. Преимущество команды trace заключается в том, шо она показывает очередной достигнутый маршрутизатор на пути к пункту назначения. Это очень мощное средство для локализации отказов на пути от отправителя к получателю. Варианты ответов утилиты trace
Символ | Значение |
!H | Зондирующий пакет был принят маршрутизатором, но не переадресован, что |
обычно бывает из-за списка доступа |
P Протокол недосягаем
NСеть недосягаема
U Порт недосягаем
* Превышение границы ожидания Таблица 1.
Практическая часть
Загрузите топологию и конфигурацию из практической части предыдущей работы.
ARP
1. Присоединитесь к маршрутизатору Router1 с и посмотрите его ARP таблицу Router1#show arp
Она содержит только одну строку о MAC адресе своего Ethernet интерфейса с IP адресом 10.1.1.1.
2. Присоединитесь к маршрутизатору router2 и посмотрите его ARP таблицу. Она содержит только одну строку о MAC адресе своего Ethernet интерфейса с IP адресом 10.1.1.2
3. Пропингуйте Ethernet интерфейс маршрутизатора Router1
Router2#ping 10.1.1.1
4. Снова посмотрите вашу ARP таблицу. Она содержит уже две строки. Появилась запись о MAC адресе Ethernet интерфейса Router1 с IP адресом 10.1.1.1.
5. Присоединитесь к маршрутизатору router1 и посмотрите его ARP таблицу. Она содержит уже две строки
Появилась запись о MAC адресе Ethernet интерфейса маршрутизатора Router2 с IP адресом 10.1.1.2. Почему, ведь мы не слали от Router1 никаких IP пакетов? Потому, шо Router1 для ответа на пинг от Router2 должен был знать о MAC адресе Ethernet интерфейса Router2 с IP адресом 10.1.1.2, и он сформировал ARP пакет для его получения.
Статические маршруты
В прошлой работе мы не могли из маршрутизаторов Router2 и Router4 пропинговать некоторые интерфейсы из-за отсутствия маршрутизации. Исправим положение.
1. Присоединитесь к маршрутизатору router2. Мы не могли пинговать адреса 172.16.10.1 и 172.16.10.2. Посмотрите таблицу маршрутов
Router2# show ip route
Видим непосредственно присоединённые сети. Нет маршрута к сети 172.16.10.0/24. Добавим маршрут к сети 172.16.10.0/24 через адрес 10.1.1.1 ближайшего хопа на пути к этой сети:
Router2(config)#ip route 172.16.10.0 255.255.255.0 10.1.1.1
Здесь и далее 172.16.10.0/24 – это сокращённая запись - определение подсети 172.16.10.0 с маской 255.255.255.0. В маске 255.255.255.0 содержится 24 единицы, шо и обозначается /24.
2. Успешно пропингуем serial интерфейс Router1 Router2#ping 172.16.10.1
Снова посмотрите таблицу маршрутов
3. Но нам не удастся пропинговать serial интерфейс Router4. Router2#ping 172.16.10.2
Почему? Потому, шо ICMP пакеты пингов не знают, как им вернуться обратно от Router4, так как на Router4 не прописаны маршруты.
4. Присоединитесь к маршрутизатору router4. Посмотрите таблицу маршрутов Router4# show ip route
Нет маршрута к сети 10.1.1.0/24. Добавим маршрут к сети 10.1.1.0/24 через адрес
172.16.10.1 ближайшего хопа на пути к этой сети: Router4(config)#ip route 10.1.1.0 255.255.255.0 172.16.10.1 Снова посмотрите таблицу маршрутов.
5. Теперь все сетевые интерфейсы в сети пингуются из каждого сетевого устройства. Проверьте это.
Маршрутизация по умолчанию.
Сетевые устройства Router2 и Router4 имеют только по одному выходу во внешний мир: через интерфейсы с адресами 10.1.1.1 и 172.16.10.1, соответственно. Поэтому, можно не определять на какие подсети мы маршрутизируем пакеты и использовать маршрутизацию по умолчанию.
1. Вначале удалим старые маршруты.
Router2(config)#no ip route 172.16.10.0 255.255.255.0 10.1.1.1 Router4(config)#no ip route 10.1.1.0 255.255.255.0 172.16.10.1
2. И назначим маршруты по умолчанию. Router2(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.1 Router4(config)#ip route 0.0.0.0 0.0.0.0 172.16.10.1
3. Посмотрите таблицу маршрутов на всех устройствах. Router2#sh ip route
Router4#sh ip route
4. Все сетевые интерфейсы в сети пингуются из каждого сетевого устройства. Проверьте это.
Loopback
1. Определим интерфейс петлю на устройстве Router4 Router4(conf)#int loopback 0 1.1.1.1 255.255.255.0
2. Пропишем на устройстве Router1 маршрут на сеть петли Router1(conf)# ip route 1.1.1.0 255.255.255.0 172.16.10.2
3. Присоединимся к устройству Router2 и пропингуем созданную петлю Router2#ping 1.1.1.1