Разное

Как удалить статический маршрут: Как удалить статические маршруты. Как добавить маршрут в Windows 10, 8, 7

Содержание

Ремонтируем статические маршруты | av-host.net


Для начала, что-же такое «статические маршруты» и как с ними работать. Статический маршрут однозначно определяет путь к заданному узлу сети. Определяются эти маршруты в системном реестре в ключе.


HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes


Для управления предусмотрена команда «route», которая используется из командной строки системы. Так для добавления нового статического маршрут применяется команда «route –p add». Кстати, этаже команда без ключа «-p» создаст маршрут, который будет работать только до перезагрузки системы.


Детально посмотреть синтаксис команды можно из командной строки, просто введя команду «route» без параметров. У меня получилось, как на рисунке ниже.


Кроме добавления к основным используемым командам можно отнести следующие:

  • route –p add – рассмотрена выше;
  • route print – выводит список установленных на данный момент статических маршрутов;
  • route delete – удаляет заданный маршрут из доступных;
  • route –f – удаляет все заданные статические маршруты;


Следует отметить, что наличие команды «route», ручное редактирование реестра не запрещено и будет иметь аналогичные последствия для списка статических маршрутов.


Теперь о «ремонте». Для общего понимания – статический маршрут позволяет задать для определенного IP-адреса (или сети адресов, если в конце ноль, например, 192.168.0.0 будет соответствовать диапазону адресов 192.168.0.1 — 192.168.0.255) и маски подсети персональный шлюз и сетевой интерфейс. Так, например, для наиболее распространенной адресации в локальной сети с адресами 192.168.0.1 — 192.168.0.255 и маской 255.255.255.255, можно описать статический маршрут для сетевой карты с адресом 192.168.0.5, как «192.168.0.0 255.255.255.0 192.168.0.1 192.168.0.5».


Для ручного исправления записей, сделанных вирусом необходимо просто удалить все, у которых обычно не верный адрес шлюза. Очень часто вирусы указывают в качестве адреса шлюза не действующий адрес, а адрес целой сети, например, вместо 192.168.0.1 указывается 192.168.0.0


Для исключения рутинной ручной работы может помочь утилита AVZ. Просто выбираем в меню Файл -> Восстановления системы -> «Настройки TCP/IP. Удалить статические маршруты».

 

Управление сетевыми маршрутами в Debian 9 Stretch

Содержание статьи:

Рассмотрим как управлять статическими маршрутами (static routes). Сетевые маршруты бывают временные, которые действую до перезагрузки сетевой службы, либо системы и постоянные маршруты.

 

Посмотреть маршруты

Вывести список всех имеющихся маршрутов, командой (ip route):



ip route

 

default via 192.168.1.254 dev eth0

192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2

192.168.7.0/24 dev eth2 proto kernel scope link src 193.268.7.2

 

Добавить временный статический маршрут

Добавление статического маршрута в сеть 192.168.7.0/24 через шлюз 192.168.1.1, командой (ip route add):



ip route add 192.168.7.0/24 via 192.168.1.1

Посмотреть прохождение маршрута, можно командой (ip route get):



ip route get 192.168.7.2

 

192.168.7.2 via 192.168.1.1 dev eth2 src 192.168.1.2

cache ipid 0x9bbc mtu 1500 advmss 1460 hoplimit 64

 

Добавить постоянный статический маршрут

Постоянные статические маршруты добавляются в файл конфигурации сети (/etc/network/interfaces), в описание необходимого интерфейса.



post-up ip route add default via 172.16.100.1

pre-down ip route del default via 172.16.100.1

Опция post-up — означает запустить команду после поднятия интерфейса, а pre-down — означает запустить команду перед отключением интерфейса.

 

Пример настройки на eth0:



auto eth0

iface eth0 inet static

address 192.168.1.2

network 255.255.255.0

gateway 192.168.1.1

post-up ip route add default via 172.16.100.1

 

Данные параметры применяться после следующей инициализации сетевой карты. Перезагружаем систему либо отключаем\включаем сетевой интерфейс:

 

Изменить статический маршрут

Изменить разово статический маршрут, можно командами (ip route replace / ip route change):



ip route replace default via 192.168.1.1 dev ens192

ip route replace 192.168.1.0/24 via 192.168.1.1

или



ip route change default via 192.168.1.1 dev ens192

ip route change 192.168.1.0/24 via 192.168.1.1

 

Для изменения постоянного маршрута, необходимо вносить изменения в конфигурационный файл (/etc/network/interfaces), для нужного сетевого интерфейса.

 

Удалить статический маршрут

Удалить маршрут, командой (ip route del):



ip route del 192.168.1.0/24

 

 

Понравилась или оказалась полезной статья, поблагодари автора

 

Загрузка…

А вы хорошо знаете статическую маршрутизацию? / Хабр

Статический маршрут — первое, с чем сталкивается любой человек при изучении понятия маршрутизации IP пакетов. Считается, что это — наиболее простая тема из всех, в ней всё просто и очевидно. Я же постараюсь показать, что даже настолько примитивная технология может содержать в себе множество нюансов.

Оговорка. При написании топика я исхожу из того, что читатель знаком с концепцией маршрутизации, умеет делать статические маршруты и не считает слово «ARP» ругательным. Впрочем, даже бывалые связисты наверняка найдут тут что-то новое.

Все примеры были проверены на IOS линейки 15.2M. Поведение других ОС может различаться.

И никакого динамического роутинга тут не будет.

Мы работаем со следующей топологией:

Как появляется статический маршрут?

Для начала, выполним команду, которую знает каждый, и посмотрим дебагами, что произойдет:

R00(config)#ip route 3.1.1.0 255.255.255.0 10.0.0.3
IP-ST(default): updating same distance on 3.1.1.0/24
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.3 Path = 8, no change, not active state
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.3 Path = 2 3 7
RT: updating static 3.1.1.0/24 (0x0):
    via 10.0.0.3
RT: add 3.1.1.0/24 via 10.0.0.3, static metric [1/0], add succeed, active state
IP ARP: creating incomplete entry for IP address: 10.0.0.3 interface GigabitEthernet0/1
IP ARP: sent req src 10.0.0.1 30e4.db16.7791,
                 dst 10.0.0.3 0000.0000.0000 GigabitEthernet0/1
IP ARP: rcvd rep src 10.0.0.3 0019.aad6.ae10, dst 10.0.0.1 GigabitEthernet0/1

IOS создал маршрут, и сразу послал arp запрос в поисках next hop, который у нас – 10.0.0.3. И сразу вопрос: откуда роутер узнал, что запрос надо слать в интерфейс Gi0/1? Наверняка кто-то скажет «из списка локальных интерфейсов», и жестоко ошибется. Маршрутизация так не работает. На самом деле, IOS сделал рекурсивный запрос к таблице маршрутизации, чтобы узнать, как добраться до next hop:

R00#show ip route 10.0.0.3
Routing entry for 10.0.0.0/24
  Known via "connected", distance 0, metric 0 (connected, via interface)
  Routing Descriptor Blocks:
  * directly connected, via GigabitEthernet0/1
      Route metric is 0, traffic share count is 1

И вот он, наш Gi0/1. IOS узнает, что с рекурсивными запросами к RIB надо заканчивать, как только находит маршрут с флагом «directly connected». Но что если ему в ответ на изначальный запрос к 10.0.0.3 вернется вовсе не connected маршрут, а промежуточный, ссылающийся на другой next hop? Вернемся к этому чуть позже, а пока вспомним, что такое CEF.

Примерно во всей документации, ориентированной на начинающих, говорится, что каждый пакет перемещается в соответствии с таблицей маршрутизации. На самом деле на всех более-менее современных платформах это уже не так, ведь таблица маршрутизации (далее – RIB) вовсе не оптимизирована для быстрой передачи данных. Оценить масштаб бедствия позволяет эта таблица (хотя у process switching’а множество недостатков помимо неоптимальных запросов – например, постоянное переключение шедулера CPU между контекстами, что весьма затратно). CEF является серьезной оптимизацией. В современной реализации он строит две таблицы – FIB (Forwarding Information Base, таблица передачи пакетов, в основе нее – связный граф со страшным названием 256-way mtrie) и adjacency table (таблица соседств). Первая из них строится на основе таблицы маршрутизации и за один проход позволяет получить всю нужную информацию. Строится она заранее, еще до того, как появится первый соответствующий ей пакет.

Вернемся к нашему статическому маршруту. Вот запись в таблице маршрутизации:

R00#show ip route 3.1.1.0
Routing entry for 3.1.1.0/24
  Known via "static", distance 1, metric 0
  Routing Descriptor Blocks:
  * 10.0.0.3
      Route metric is 0, traffic share count is 1

Куда слать пакет? Где искать 10.0.0.3? Непонятно. Надо еще раз запросить таблицу маршрутизации, на этот раз по поводу 10.0.0.3, и, если надо, выполнить еще несколько итераций, пока не выясним connected интерфейс. И вот примерно таким образом мы фактически в несколько раз снижаем производительность маршрутизатора.

А вот что говорит CEF:

R00#show ip cef 3.1.1.0 detail
3.1.1.0/24, epoch 0
  recursive via 10.0.0.3
    attached to GigabitEthernet0/1

Просто и лаконично. Есть интерфейс, есть next hop, к которому надо слать пакет. Что там говорилось про adjacency table?

R00#show adjacency 10.0.0.3 detail
Protocol Interface                 Address
IP       GigabitEthernet0/1        10.0.0.3(10)
                                   0 packets, 0 bytes
                                   epoch 0
                                   sourced in sev-epoch 2
                                   Encap length 14
                                   0019AAD6AE1030E4DB1677910800
                                   ARP

Обратим внимание на какую-то длинную последовательность в предпоследней строке. Что-то это напоминает… Смотрим mac 10.0.0.3:

R00#show arp | in 10.0.0.3
Internet  10.0.0.3                1   0019.aad6.ae10  ARPA   GigabitEthernet0/1

Смотрим свой mac адрес на gi0/1:

R00#show int gi0/1
GigabitEthernet0/1 is up, line protocol is up
  Hardware is CN Gigabit Ethernet, address is 30e4.db16.7791 (bia 30e4.db16.7791)

Ага. Та страшная строка – всего лишь два мака, которые надо подставить в заголовок Ethernet на этапе инкапсуляции, и ethertype 0x0800, т.е. банальный IPv4. И в двух таблицах CEF есть абсолютно вся информация, какая нужна для успешной отправки пакета дальше по цепочке.

Если у кого-то возникнет вопрос, зачем железке держать сразу две таблицы вместо одной, то дам очевидный ответ: обычно у маршрутизатора мало интерфейсов (а заодно и соседей) и много маршрутов. Какой смысл тысячи раз дублировать одни и те же маки в FIB? Памяти много не бывает, особенно на аппаратных платформах, будь то новомодные ASR’ы или даже L3 свитчи линейки Catalyst. Все они задействуют CEF при передаче пакетов.

И кстати, вернемся на минутку к изначальному дебагу. Отключим CEF командой no ip cef (никогда так не делайте) и сравним результат:

IP-ST(default): updating same distance on 3.1.1.0/24
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.100 Path = 8, no change, not active state
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.100 Path = 2 3 7
RT: updating static 3.1.1.0/24 (0x0):
    via 10.0.0.100
RT: add 3.1.1.0/24 via 10.0.0.100, static metric [1/0], add succeed, active state

Маршрут добавлен. Arp запроса не было. И правильно – зачем RIB сдался mac адрес? Если пустить пинг до, к примеру, 3.1.1.1, то скорее всего будет так:

R00#ping 3.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.1.1.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/4 ms

Первый пакет отбрасывается, и роутер посылает arp запрос с целью узнать mac адрес 10.0.0.3, если он ранее не был известен. CEF же всегда заранее узнает mac адрес next hop’а.

С этим разобрались. Теперь вернемся к вопросу, что будет, если next hop статического маршрута вовсе не на directly connected интерфейсе. Поступим просто:

R00(config)#ip route 10.0.0.3 255.255.255.255 100.100.100.101

, где Gi0/2 имеет адрес 100.100.100.100/24.

R00#show ip cef 3.1.1.0 detail
3.1.1.0/24, epoch 0
  recursive via 10.0.0.3
    recursive via 100.100.100.101
      recursive via 100.100.100.0/24
        attached to GigabitEthernet0/2

Как все плохо-то… А что если у нас есть маршрут на целую суперсеть?

R00(config)#no ip route 10.0.0.3 255.255.255.255 100.100.100.101
R00(config)#ip route 10.0.0.0 255.0.0.0 100.100.100.101

R00#show ip cef 3.1.1.0 detail
3.1.1.0/24, epoch 0
  recursive via 10.0.0.3
    attached to GigabitEthernet0/1

Сейчас наша таблица маршрутизации выглядит так:

R00#show ip route
      10.0.0.0/8 is variably subnetted, 2 subnets, 3 masks
S        10.0.0.0/8 [1/0] via 100.100.100.101
C        10.0.0.0/24 is directly connected, GigabitEthernet0/1
L        10.0.0.1/32 is directly connected, GigabitEthernet0/1
      100.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        100.100.100.0/24 is directly connected, GigabitEthernet0/2
L        100.100.100.100/32 is directly connected, GigabitEthernet0/2

Вроде хорошо. Новый маршрут на 100.100.100.101 не применяется для 10.0.0.3, так как его маска /8 намного короче, чем /24 у connected интерфейса. Но вдруг Gi0/1, содержавший next hop для 3.1.1.0/24, по какой-то непонятной причине ушел в down, и его connected маршрут пропал из RIB.

%LINK-5-CHANGED: Interface GigabitEthernet0/1, changed state to administratively down
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/1, changed state to down
RT: interface GigabitEthernet0/1 removed from routing table
RT: del 10.0.0.0 via 0.0.0.0, connected metric [0/0]
RT: delete subnet route to 10.0.0.0/24
RT: del 10.0.0.1 via 0.0.0.0, connected metric [0/0]
RT: delete subnet route to 10.0.0.1/32
IP-ST(default):  updating GigabitEthernet0/1

Вот что стало:

R00#show ip cef 3.1.1.0 detail
3.1.1.0/24, epoch 0
  recursive via 10.0.0.3
    recursive via 10.0.0.0/8
      recursive via 100.100.100.101
        recursive via 100.100.100.0/24
          attached to GigabitEthernet0/2

Ой. Теперь пакеты на сеть 3.1.1.0/24 идут куда-то не туда. Я не могу представить себе сценарий, когда ожидаемое поведение статического маршрута – переключение на другой интерфейс. Если за тем интерфейсом находится резервный путь, то все-таки надо создавать еще один статический маршрут…

Что делать? Указывать сразу в маршруте интерфейс. Пересоздадим маршрут:

R00(config)#no ip route 3.1.1.0 255.255.255.0 10.0.0.3
R00(config)#ip route 3.1.1.0 255.255.255.0 Gi0/1 10.0.0.3

Поднимаем Gi0/1. Смотрим, куда теперь ведет маршрут на 3.1.1.0/24:

R00#show ip route 3.1.1.0
Routing entry for 3.1.1.0/24
  Known via "static", distance 1, metric 0
  Routing Descriptor Blocks:
  * 10.0.0.3, via GigabitEthernet0/1
      Route metric is 0, traffic share count is 1

Тут уже указан интерфейс. Поэтому не будет рекурсивных запросов к таблице маршрутизации. Проверяем FIB:

R00#show ip cef 3.1.1.0
3.1.1.0/24
  nexthop 10.0.0.3 GigabitEthernet0/1

Да, никакого «recursive». А если снова погасить gi0/1? Маршрут исчез.

R00#show ip route 3.1.1.0
% Network not in table

R00#show ip cef 3.1.1.0
0.0.0.0/0
  no route

И это притом, что маршрут до 10.0.0.3 все еще был:

R00#show ip cef 10.0.0.3
10.0.0.0/8
  nexthop 100.100.100.101 GigabitEthernet0/2

А что будет, если путь к next hop даст маршрут по умолчанию, а маршрут на 3.1.1.0/24 не ссылается на интерфейс?

R00(config)#no ip route 10.0.0.0 255.0.0.0 100.100.100.101
R00(config)#ip route 0.0.0.0 0.0.0.0 100.100.100.101
R00(config)#no ip route 3.1.1.0 255.255.255.0 Gi0/1 10.0.0.3
R00(config)#ip route 3.1.1.0 255.255.255.0 10.0.0.3
R00#show ip route 3.1.1.0
% Network not in table
R00#show ip cef 3.1.1.0 detail
0.0.0.0/0, epoch 0, flags default route
  recursive via 100.100.100.101
    recursive via 100.100.100.0/24
      attached to GigabitEthernet0/2

Обратите внимание, что первой строкой после «show ip cef» идет «0.0.0.0/0», а не «3.1.1.0/24». Несмотря на то, что next hop формально есть, по факту все итерации опроса таблицы маршрутизации (кроме первой) игнорируют маршрут по умолчанию, что логично, иначе любой запрос к таблице маршрутизации почти всегда бы резолвился (под «резолвиться» понимается нахождение интерфейса, в который нужно отправить пакет). Поэтому наш статический маршрут отсутствует, но пакеты все равно улетают к Gi0/2. Вроде бы все то же самое, что и без явного указания интерфейса? Не совсем. Допустим, протоколу маршрутизации сказали «redistribute static». Если статический маршрут пропал, то анонс тоже отзывается. А если нет, то маршрутизатор продолжит говорить всем «туда идти через меня», и это почти наверняка обернется L3 кольцом для префикса 3.1.1.0/24, который мог бы быть доступен откуда-нибудь еще. Но стоп, мы договаривались не трогать динамический роутинг…

А что если в статическом маршруте указать интерфейс, но не указывать IP адрес следующего хопа? Ответ: в случае Ethernet, если на next hop не отключен proxy arp, связность не нарушится, но роутеру может ОЧЕНЬ поплохеть. Подробнее. Если сказать «ip route 3.1.1.0 255.255.255.0 gi0/1», то ничего особо страшного не случится, даже пару сотен записей в arp таблице любой роутер переварит (и существуют сценарии-workaround’ы, в которых оптимальным решением является именно такой костыль), но вот «ip route 0.0.0.0 0.0.0.0 gi0/1» на пограничном маршрутизаторе наверняка убьет его. Потому запомните общее правило: если создается статический маршрут с next hop’ом на Ethernet интерфейсе, то его IP адрес должен указываться всегда. Исключения – только когда вы очень хорошо представляете себе, что делаете, зачем делаете и почему нельзя сделать иначе.

И напоследок, сделаем одну очень нехорошую штуку.

R00(config)# ip route 3.1.1.0 255.255.255.0 10.0.0.3
R00(config)#ip route 10.0.0.3 255.255.255.255 3.1.1.1

Первый маршрут в порядке, сто раз протестирован. А вот второй странный – он ведет через первый. А первый теперь ссылается на второй, и у нас бесконечная рекурсия. Вот что произошло:

IP-ST(default): updating same distance on 3.1.1.0/24
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.3 Path = 8, no change, not active state
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.3 Path = 2 3 7
RT: updating static 3.1.1.0/24 (0x0):
    via 10.0.0.3
RT: add 3.1.1.0/24 via 10.0.0.3, static metric [1/0], add succeed, active state
IP-ST(default): updating same distance on 10.0.0.3/32
IP-ST(default):  10.0.0.3/32 [1], 3.1.1.1 Path = 8, no change, not active state
IP-ST(default):  10.0.0.3/32 [1], 3.1.1.1 Path = 2 3 7
RT: updating static 10.0.0.3/32 (0x0):
    via 3.1.1.1
RT: add 10.0.0.3/32 via 3.1.1.1, static metric [1/0], add succeed, active state

Добавилось успешно. Но затем в дебагах высветилось:

RT: recursion error routing 3.1.1.1 - probable routing loop
RT: recursion error routing 10.0.0.3 - probable routing loop

И появилась запись в лог с severity 3:

%IPRT-3-RIB_LOOP: Resolution loop formed by routes in RIB
R00#show ip cef 10.0.0.3 detail
10.0.0.3/32, epoch 0
  Adj source: IP adj out of GigabitEthernet0/1, addr 10.0.0.3 359503C0
   Dependent covered prefix type adjfib cover 10.0.0.0/24
  1 RR source [no flags]
  recursive via 3.1.1.1, unresolved
  recursive-looped

R00#show ip cef 3.1.1.0 detail
3.1.1.0/24, epoch 0, flags cover dependents
  Covered dependent prefixes: 1
    notify cover updated: 1
  recursive via 10.0.0.3, unresolved
  recursive-looped

Однако, RIB никакого криминала не видит:

Routing entry for 3.1.1.0/24
  Known via "static", distance 1, metric 0
  Routing Descriptor Blocks:
  * 10.0.0.3
      Route metric is 0, traffic share count is 1

R00#show ip route 10.0.0.3
Routing entry for 10.0.0.3/32
  Known via "static", distance 1, metric 0
  Routing Descriptor Blocks:
  * 3.1.1.1
      Route metric is 0, traffic share count is 1

Вывод – никогда так не делайте.

Почему статический маршрут может не попасть в таблицу маршрутизации?

Любой сетевик должен сходу дать одно из объяснений, касающееся любого источника маршрутов в IOS: существует другой маршрут на тот же самый префикс, но с меньшим AD (все помнят Administrative Distance?). Маршрут, источник которого – “connected”, всегда имеет AD=0, и ни один другой источник маршрутов не может привнести ничего ниже, чем «1», даже статический маршрут с явным указанием интерфейса. Пример connected:

R00# show ip route
C        10.0.0.0/24 is directly connected, GigabitEthernet0/1

Т.е. пока интерфейс Gi0/1 находится в состоянии up и имеет адрес из подсети 10.0.0.0/24, ни один статический маршрут на этот префикс в таблице маршрутизации не появится.

Еще есть вариант «разные источники маршрутов добавляют маршруты на один и тот же префикс с одинаковым AD». Поведение IOS в данном случае не документировано, общая рекомендация – «никогда так делайте».

Но посмотрим другие, менее очевидные примеры. Например, статические маршруты можно создать со словом «permanent», которое переводится как «постоянный», и тогда они будут всегда висеть в таблице маршрутизации. Правильно? Нет.

Добавляем его и смотрим:

R00(config)#ip route 3.1.1.0 255.255.255.0 10.0.0.3 permanent
R00#show ip cef 3.1.1.0
3.1.1.0/24
  nexthop 10.0.0.3 GigabitEthernet0/1

Кладем Gi0/1, и видим:

R00#show ip cef 3.1.1.0
3.1.1.0/24
  unresolved via 10.0.0.3

В RIB он есть, и другие протоколы маршрутизации могут его использовать:

R00#show ip route 3.1.1.0
Routing entry for 3.1.1.0/24
  Known via "static", distance 1, metric 0
  Routing Descriptor Blocks:
  * 10.0.0.3, permanent
      Route metric is 0, traffic share count is 1

А теперь, не поднимая Gi0/1:

R00(config)#no ip route 3.1.1.0 255.255.255.0 10.0.0.3 permanent
R00(config)#ip route 3.1.1.0 255.255.255.0 10.0.0.3 permanent

Просто пересоздали его, ничего не меняя. И вот что произошло:

IP-ST(default): updating same distance on 3.1.1.0/24
IP-ST(default):  3.1.1.0/24 [1], 10.0.0.3 Path = 8, no change, not active state
IP-ST(default): cannot delete, PERMANENT

R00#show ip route 3.1.1.0
% Network not in table
R00#show ip cef 3.1.1.0
0.0.0.0/0
  no route

Постоянный, говорите? Нет. Есть один маленький нюанс: чтобы перманентный маршрут навеки вписался в таблицу маршрутизации, нужно, чтобы он хотя бы на долю секунды резолвился. Хотя какое еще «навеки»? Когда он остался висеть в воздухе без резолвящегося интерфейса, достаточно сказать «clear ip route *» или тем более «reload», чтобы он исчез из RIB.

Но продолжим. Сделаем вот так:

R00(config)#ip route 3.1.1.0 255.255.255.0 Gi0/1 10.0.0.3
R00(config)#ip route 3.1.1.10 255.255.255.255 3.1.1.1

Вроде нормальные маршруты. Что произойдет? Со вторым – ровным счетом ничего.

IP-ST(default):  3.1.1.10/32 [1], 3.1.1.1 Path = 8, no change, not active state
IP-ST(default):  3.1.1.10/32 [1], 3.1.1.1 Path = 2 3 6 8, no change, not active state

Суть вот в чем. Допустим, есть маршрут на X.X.X.X через Y.Y.Y.Y. Мы добавляем маршрут на X1.X1.X1.X1 (этот префикс полностью покрывается X.X.X.X) через X2.X2.X2.X2 (а он тоже покрывается X.X.X.X). IOS делает закономерный вывод: второй маршрут не несет в себе никакой новой информации и совершенно бесполезен, поэтому его можно не устанавливать в RIB.

А теперь финт ушами.

R00(config)#no ip route 3.1.1.10 255.255.255.255 3.1.1.1
R00(config)#ip route 3.1.1.10 255.255.255.255 Gi0/1 3.1.1.1

IP-ST(default): updating same distance on 3.1.1.10/32
IP-ST(default):  3.1.1.10/32 [1], GigabitEthernet0/1 Path = 1
RT: updating static 3.1.1.10/32 (0x0):
    via 3.1.1.1 Gi0/1
RT: network 3.0.0.0 is now variably masked
RT: add 3.1.1.10/32 via 3.1.1.1, static metric [1/0], add succeed, active state
IP ARP: creating incomplete entry for IP address: 3.1.1.1 interface GigabitEthernet0/1
IP ARP: sent req src 10.0.0.1 30e4.db16.7791,
                 dst 3.1.1.1 0000.0000.0000 GigabitEthernet0/1

R00#show ip cef 3.1.1.10
3.1.1.10/32
  nexthop 3.1.1.1 GigabitEthernet0/1

И вот это подводит нас к еще одному важному моменту. Указание интерфейса в статическом маршруте позволяет обойти многие проверки, так как статическому маршруту больше не требуется выполнять рекурсивные запросы к RIB в поисках пути до next hop, и при своем добавлении он не заденет триггеры на других маршрутах. Но это не отменяет главного требования: next hop обязан резолвиться в конкретный интерфейс, а тот интерфейс обязан быть в up. Тот факт, что рекурсивных запросов к RIB больше не будет, означает, что указанный IP адрес next hop’а находится прямо за интерфейсом, и наверняка отзовется на arp запрос (с точки зрения роутера). Если у соседнего по Gi0/1 роутера включен proxy arp, то он в ответ на arp запрос наверняка вернет свой mac адрес, и всё будет хорошо. Разве что лишняя запись в arp таблице…

Но все равно так делать не стоит.

Необходимо упомянуть и о еще одном важном моменте. Статический маршрут должен по идее исчезнуть из таблицы маршрутизации, как только он перестанет резолвиться. Но на практике есть множество ситуаций, когда next hop пропадает, но при этом статический маршрут на какое-то время остается. К примеру, когда next hop резолвится через маршрут, полученный от протокола динамической маршрутизации. Все дело в том, что процесс, отслеживающий наличие next hop в RIB, не всегда может получить уведомление об исчезновении маршрута, и он вынужден периодически (раз в 60 секунд по умолчанию) перепроверять, все ли хорошо. Это вызовет заметную задержку сходимости сети.

Поменять интервал проверки, к примеру, на 10 секунд можно с помощью команды:

ip route static adjust-time 10

О маршрутизации простыми словами. Как посмотреть, добавить или удалить маршрут в macOS

Я давно заметил, что многих пользователей пугает само слово «маршрутизация». Да чего там говорить про обычных пользователей, когда даже админы (особенно те, кто кроме Windows ничего другого не видели) с трудом понимают что это такое.

И я сейчас не преувеличиваю. Иногда требуется прописать статический маршрут на клиенте, а не на роутере и мне приходилось объяснять не пользователю, а админу зачем это нужно, как это делается и в чём отличие от маршрута по умолчанию.

Мальчик сказал маме: “Я хочу кушать” и мама отправила его к папе.
Мальчик сказал папе: “Я хочу кушать” и папа отправил его назад к маме.
Мальчик сказал маме: “Я хочу кушать” и мама снова отправила его к папе.
Так мальчик бегал туда-обратно, пока не упал…
Что случилось с мальчиком? TTL кончился.

Скажете бессмысленный анекдот? Чтобы его понять нужно изучить как работают сети, а пока давайте объясню простыми словами что такое «маршрутизация» (routing), чтобы это слово вас больше не пугало.

Если вы когда-либо настраивали свой роутер или смотрели свойства подключения к сети, то наверняка видели что кроме адреса вашего компьютера, есть ещё адрес шлюза (ещё одно непонятное слово).

Всё просто. Интернет можно представить как разветвлённую дорожную сеть с кучей направлений. Каждая из дорог может привести куда угодно и не факт что нам туда вообще нужно. Так вот, ваш шлюз — это отправная точка во всемирную сеть, откуда вы начинаете свой путь и, в большинстве случаев, он становится для вас маршрутом по умолчанию.

То есть, когда вы открываете какие-то сайты, качаете торренты или проверяете почту, все ваши данные проходят через устройство с данным адресом. Он знает куда нужно дальше передавать пакеты данных. Таких отправных точек может быть превеликое множество и каждая из них обладает информацией о своём сегменте сети, компьютерах и других устройствах, расположенных за ней. Собственно, маршрутизация — это процесс определения лучшего маршрута.

Когда мы знаем точный маршрут следования (его ещё называют статическим), то можем сразу начать движение по нему, в противном случае используется маршрут по умолчанию, который как бы говорит: всё, что не знаешь, куда послать — шли сюда.

В каком случае может потребоваться указывать статический маршрут? Например, при использовании VPN-соединений, когда не желательно гонять весь трафик в защищённом канале. Но это уже выходит за рамки простого описания, да и про VPN я уже много рассказывал ранее. Кому интересно что это такое, можете почитать тут, а сейчас расскажу как управлять статическими маршрутами на примере macOS (если вы хотите узнать как управлять маршрутами в Windows и Linux, оставляйте комментарии и в одном из следующих постов я постараюсь изложить данную тему подробнее).

Как посмотреть, добавить или удалить маршрут в macOS

Чтобы посмотреть все действующие маршруты, отрываем Терминал и вводим следующую команду:

netstat -nr

Добавить статичный маршрут можно следующей командой:

sudo route -n add 192.168.10.0/24 10.8.0.9

Здесь мы указали что для доступа к сети 192.168.10.0 с маской 255.255.255.0 (24) следует использовать шлюз 10.8.0.9.

Теперь удалим созданный статичный маршрут:

sudo route -n delete 192.168.10.0/24 10.8.0.9

Подписывайтесь на канал Яндекс.Дзен и узнавайте первыми о новых материалах, опубликованных на сайте.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Настройка сетевых маршрутов в Linux (CentOS)

В этой статье мы рассмотрим особенности настройки маршрутизации и управления маршрутами в Linux (просмотр таблицы маршрутизации, добавление/удаление статических маршрутов и т.д.) на примере CentOS с помощью утилиты ip. Статья применима и для любого другого дистрибутива Linux с утилитой ip (Red Hat, Fedora и т.д.).

Для управления маршрутизацией в Linux предпочтительно исопльзовать утилиту ip, а не route. Команда route не позволяет настраивать расширенные возможности маршрутизации (например, политики маршрутизации), и не покажет специальные настройки маршрутизации, если они уже сделаны через ip.

Просмотр таблицы маршрутизации в Linux

Чтобы вывести текущую таблицу маршрутизации в Linux выполните команду:

# ip route

  • default via 192.168.1.1 dev enp0s3 – шлюз по умолчанию, в данном примере работающий через интерфейс enp0s3. Если для target адреса в таблице маршрутизации отсутствует маршрут, то такой пакет отправляется через данный шлюз (маршрут по умолчанию)
  • 192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.201 — статический маршрут для сети 192.168.1.0/24 через адрес 192.168.1.201, который прописан на интерфейсе
  • proto kernel – маршрут создан ядром (proto static – маршрут добавлен администратором)
  • metric – приоритет маршрута (чем меньше значение metric, тем выше приоритет). При наличии двух маршрутов с одинаковой метрикой (не стоит так делать!), ядро начинает выбирать маршруты случайным образом.

Чтобы узнать через какой интерфейс (шлюз) должен маршрутизироваться трафик к определенному IP адресу используется команда:

# ip route get 192.168.2.45

192.168.2.45 via 192.168.1.1 dev enp0s3 src 192.168.1.201

Вы можете использовать ваш Linux сервер с двумя и более интерфейсами как маршрутизатор или интернет-шлюз. Чтобы разрешить маршрутизацию пакетов между несколькими интерфейсами, нужно включить параметр ядра net.ipv4.ip_forward = 1.

Как добавить или удалить статический маршрут?

Чтобы добавить новый маршрут к определенной IP подсети в таблицу маршрутизации Linux, нужно выполнить следующую команду:

# ip route add 192.168.0.0/24 via 192.168.1.1

Таким образом, мы добавим маршрут для IP сети 192.168.0.0/24 через шлюз 192.168.1.1.

Формат команды ip route очень похоже на синтаксис в Cisco IOS. Здесь также можно исопльзовать сокращений, например вместо ip route add можно написать ip pro ad.

Также можно добавить отдельный маршрут для одного IP адреса (хоста):

# ip route add 192.168.1.0 via 192.168.1.1

Можно сделать аналог null route маршрута в Cisco (ip route null0), пакеты в такую сеть удаляются по причине No route to host:

# ip route add blackhole 10.1.20.0/24

Маршруты, добавленные таким образом являются временным и будут работать до перезагрузки сетевой службы или сервера.

Чтобы удалить созданный вручную маршрут, выполните:

# ip route del 192.168.0.0/24

Как видите, маршрут удален из таблицы маршрутизации.

Чтобы добавить постоянный маршрут, нужно создать файл для этого маршрута, либо добавить правило в файл rc.local (выполняется при загрузке сервера).

Чтобы добавить постоянный (статический) маршрут, нужно знать имя сетевого интерфейса, который будет использоваться для маршрутизации. Узнать имя сетевого интерфейса можно командой:

# ip a

В моем случае, интерфейс enp0s3.

Далее открываем следующий файл:

# nano /etc/sysconfig/network-scripts/route-enp0s3

И добавляем туда строку с маршрутом:

192.168.0.0/24 via 192.168.1.1

После добавления маршрута в файл нужно перезапустить сервис network:

# service network restart

После перещаауска сетевого сервиса, в таблице маршрутизации появился статический маршрут.

Также можно добавить команду добавления нового маршрута в файл rc.local, чтобы он автоматически добавлялся при загрузке сервера. Откройте файл:

# nano /etc/rc.local

И укажите команду добавления маршрута:

# ip route add 192.168.0.0/24 via 192.168.1.1

Теперь, если ваш сервер будет перезагружен, маршрут пропишется автоматически при загрузке системы.

Изменить маршрут в Linux

Чтобы изменить уже существующий маршрут, можно использовать команду ip route replace:

# ip route replace 192.168.0.0/24 via 192.168.1.1

Чтобы сбросить все временные маршруты в таблице маршрутизации, просто перезапустите сетевой сервис:

[root@localhost ~]# service network restart

Restarting network (via systemctl): [ OK ]

[root@localhost ~]# ip route

default via 192.168.1.1 dev enp0s3 proto static metric 100
192.168.0.0/24 via 192.168.1.1 dev enp0s3 proto static metric 100
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.201 metric 100

Изменить маршрут по умолчанию

Вы можете удалить маршрут по-умолчаню с помощью команды ip route del:

# ip route del default via 192.168.1.1 dev enp0s3

Чтобы указать новый маршрут по-умолчанию в CentOS используется команда:

# ip route add default via 192.168.1.2 (маршрут через IP адрес шлюза)

# ip route add default via enp0s3 (маршрут через имя устройства)

Чтобы изменить параметры маршрута по умолчанию, используется команда:

# ip route replace default via 192.168.1.2

Команда ROUTE

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

Если на маршрутизаторе, предоставляющем клиенту доступ к тестовой сети, изменятся параметры протокола IP, соответствующим образом придется изменить статические маршруты на клиентском компьютере. В идеальном мире все статические маршруты хранятся на центральном маршрутизаторе для обеспечения централизованного администрирования.

Примером использования статических маршрутов является подключение корпоративной сети к периферийным офисам с помощью службы маршрутизации и удаленного доступа, работающей под управлением операционной системы Windows Server 2003.

Маршрутизатор может иметь несколько интерфейсов, поднимаемых по требованию, для поддержки подключений к удаленным сетям. Эта информация может быть указана в виде статических маршрутов, которые необходимо сопровождать. Команда route позволяет просматривать, удалять и добавлять статические маршруты в таблицу маршрутизации системы.

Вот синтаксис команды route:

route [-f] [-p] <add | change | delete | print> [destination] [mask <netmask>] [gateway] [metric <metric>] [if <interface>]

Параметры этой команды рассматриваются далее.

Параметры команды route

Параметр

Использование

-f

Удаляет из таблицы маршрутизации все маршруты, которые не являются маршрутами к узлам. Маршруты к узлам состоят из следующих записей маршрутизации: маршруты с маской подсети 255.255.255.255, маршруты с точкой назначения 127.0.0.1 и маской подсети 255.0.0.0, а так же маршруты групповой доставки (адрес назначения из диапазона от 224.0.0.0 до 240.0.0.0). Если этот параметр использовать вместе с командой add, change или delete, перед выполнением команды таблица маршрутизации очищается

-p

Используется для превращения новой или модифицированной записи в постоянную. Это означает, что информация о маршрутизации сохраняется в системе даже после перезагрузки. Без параметра -p введенный в таблицу маршрутизации маршрут будет удален во время следующей перезагрузки системы

add

Добавляет новый маршрут в таблицу маршрутизации.

change

Меняет текущий маршрут в таблице маршрутизации

delete

Удаляет маршрут из таблицы маршрутизации

print

Отображает содержимое таблицы маршрутизации

destination

При добавлении или модификации маршрута этот параметр используется для указания идентификатора сети назначения

mask <netmask>

При добавлении или модификации маршрута этот параметр используется для указания маски подсети для сети назначения

gateway

При добавлении или модификации нового маршрута этот параметр используется для указания шлюза (маршрутизатора), на который необходимо отправлять данные, предназначенные для этой сети назначения

metric <metric>

Используется для указания целого числа в диапазоне от 1 до 9999, являющегося метрикой стоимости для маршрута. Если для определенной сети назначения существует несколько возможных маршрутов, будет использован маршрут с наименьшим значением метрики

if <interface>

Используется для указания номера индекса интерфейса, который подключен к сети назначения. Список доступных интерфейсов можно просмотреть с помощью команды route print. Номер индекса интерфейса может быть указан в десятичной или шестнадцатеричной форме. При использовании шестнадцатеричной формы, значение индекса необходимо указывать после 0x

Команда route используется в нескольких сценариях диагностики. Вот несколько примеров использования этой команды.

  • Отображение таблицы маршрутизации системы: route print
  • Отображение всех маршрутов к сети 172.16.x.x: route

Как удалить маршрут route

Прописываем статический маршрута в командной строке Windows (Пуск –> Выполнить, или Win+R)
route ADD -p 192.168.1.0 MASK 255.255.255.0 192.168.1.1 METRIC 1

Прописываем статический маршрут в файл
Создаем файл Правой кнопкой мыши по Рабочему столу –> Создать –> Текстовый документ.
В документе прописываем маршрут
route.exe ADD –p 192.168.1.0 MASK 255.255.255.0 192.168.1.1 METRIC 1
Файл –> Сохранить как: Тип файла: Все файлы Имя: route.bat -> Сохранить

route.exe подпрограмма работы с маршрутами;
ADD – команда для добавления маршрута в указанную подсеть 191.168.1.0;
-p – ключ означает что маршрут статический после перезагрузки маршрут сохранится;
192.168.1.0 – сеть назначения назначения;
MASK – ставим этот параметр перед прописанием значения маски подсети;
192.168.1.1 – адрес шлюза, через который будем обращатся в подсеть
METRIC 1 – параметр, определяющий приоритет указанного выше шлюза.

Для проверки прописанных маршрутов в командной строке (Пуск –> Выполнить –> cmd –> Ok) route print жмем «Ввод».

Удаление постоянного маршрута route delete 192.168.1.0
Удаления всех существующих постоянных маршрутов команда route -f.

Формат командной строки:

ROUTE [-f] [-p] [-4|-6] command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]

Подсказку по параметрам командной строки можно получить используя встроенную справку ( route /? ):

-f — Очистка таблиц маршрутов от записей всех шлюзов. При указании одной из команд таблицы очищаются до выполнения команды.

-p — При использовании с командой ADD задает сохранение маршрута при перезагрузке системы. По умолчанию маршруты не сохраняются при перезагрузке. Пропускается для остальных команд, изменяющих соответствующие постоянные маршруты. Этот параметр не поддерживается в Windows 95.

-4 — Обязательное использование протокола IPv4.

-6 — Обязательное использование протокола IPv6.

command — Одна из следующих команд:

— PRINT — Печать маршрута
— ADD — Добавление маршрута
— DELETE — Удаление маршрута
— CHANGE — Изменение существующего маршрута

destination — Адресуемый узел.

MASK — Указывает, что следующий параметр интерпретируется как маска сети.

netmask — Значение маски подсети для записи данного маршрута. Если этот параметр не задан, по умолчанию используется значение 255.255.255.255.

interface — Номер интерфейса для указанного маршрута.

METRIC — Определение метрики, т.е. цены для адресуемого узла. Чем ниже значение метрики, тем выше приоритет узла при построении маршрута.

Поиск всех символических имен узлов проводится в файле сетевой базы данных NETWORKS. Поиск символических имен шлюзов проводится в файле базы данных имен узлов HOSTS.

Для команд PRINT и DELETE можно указать узел и шлюз с помощью подстановочных знаков или опустить параметр «шлюз».

Если адресуемый узел содержит подстановочные знаки * или ?, он используется в качестве шаблона, и печатаются только соответствующие ему маршруты. Знак ‘*’ соответствует любой строке, а ‘?’ — одному знаку.

Примеры: 157.*.1, 157.*, 127.*, *224*.

Соответствие шаблону поддерживает только команда PRINT.

Недопустимое значение MASK вызывает ошибку, если (УЗЕЛ & МАСКА) != УЗЕЛ.

Например:
route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1 — Добавление маршрута завершится ошибкой, поскольку указан недопустимый параметр маски. (Узел & Маска) != Узел.

route PRINT — отобразить таблицу маршрутов
route PRINT -4 — отобразить таблицу маршрутов только для IPv4
route PRINT -6 — отобразить таблицу маршрутов только для IPv6
route PRINT 157* — отобразить таблицу маршрутов только для узлов, начинающихся со 157

Если сетевой интерфейс (IF) не задан, то производится попытка найти лучший интерфейс для указанного шлюза.

route ADD 3ffe::/32 3ffe::1 — добавить новый маршрут для узла с IPv6

route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2 — изменить существующий маршрут для узла IPv4

Параметр CHANGE используется только для изменения шлюза или метрики.

route DELETE 157.0.0.0 — удалить маршрут для IPv4.

route DELETE 3ffe::/32 — удалить маршрут для IPV6

Примеры использования команды ROUTE

route print — отобразить текущую таблицу маршрутов.

Пример отображаемой таблицы:

===========================================================================
Список интерфейсов
24. 00 50 ba 5d 0c c4 . D-Link DFE-538TX 10/100 адаптер
13. 00 19 db ce 97 9c . Сетевая карта Realtek RTL8169/8110 Family NIC
1. Software Loopback Interface 1
17. 00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP
12. 00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================

IPv4 таблица маршрута

===========================================================================
Активные маршруты:

Сетевой адрес
0.0.0.0
127.0.0.0
.
224.0.0.0
Маска сети
0.0.0.0
255.0.0.0
.
240.0.0.0
Адрес шлюза
192.168.0.1
On-link
.
On-link
Интерфейс
192.168.0.2
127.0.0.1
.
192.168.0.2
Метрика
266
306
.
266

===========================================================================

Постоянные маршруты:

Сетевой адрес
0.0.0.0
Маска
0.0.0.0
Адрес шлюза
192.168.0.1
Метрика
По умолчанию

===========================================================================

IPv6 таблица маршрута
===========================================================================
Активные маршруты:

Метрика
1
40
19
20
20

1
40
19
20

Сетевой адрес
306 ::1/128
276 fe80::/64
276 fe80::/64
276 fe80::/64
276 fe80::6034:c4a3:8e4e:b7a

306 ff00::/8
276 ff00::/8
276 ff00::/8
276 ff00::/8

Шлюз
On-link
On-link
On-link
On-link
a/128
On-link
/128
On-link
7/128
On-link
On-link
On-link
On-link
On-link

===========================================================================

Постоянные маршруты:
Отсутствует

Список интерфейсов — отображаются идентификаторы ( ID ), физические ( MAC ) адреса и названия сетевых адаптеров. В примере:
24 — идентификатор интерфейса
00 50 ba 5d 0c c4 — MAC-адрес сетевого адаптера
D-Link DFE-538TX 10/100 адаптер — название сетевого адаптера.

Сетевой адрес (Network Destination) — IP-адрес, адрес сети, или адрес 0.0.0.0 используемый для шлюза по умолчанию ( Default Gateway ). Это конечная точка маршрута

Маска сети ( Netmask ) — маска сети.

Адрес шлюза ( Gateway ) — IP-адрес шлюза, через который будет выполняться отправка пакета для достижения конечной точки.

В Windows Vista / Windows 7 / 8 и более поздних версиях, для адресов, достижимых локально, в данной колонке отображается On-link . Другими словами, значение On-link в колонке «Шлюз» означает, что шлюз не используется, адрес назначения достижим напрямую, без маршрутизации.

Интерфейс ( Interface ) — IP-адрес сетевого интерфейса, через который выполняется доставка пакета конечной точке маршрута.

Метрика ( metric ) — значение метрики (1-9999). Метрика представляет собой числовое значение, позволяющее оптимизировать доставку пакета получателю, если конечная точка маршрута может быть достижима по нескольким разным маршрутам. Чем меньше значение метрики, тем выше приоритет маршрута.

route print 192.* — отобразить таблицу маршрутов только для адресов, начинающихся с 192.

route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 — установить в качестве шлюза по умолчанию (основного шлюза) адрес 192.168.1.1

route -p add 10.0.0.0 mask 255.0.0.0 10.0.0.1 — добавить маршрут для подсети 10.0.0.0/255.0.0.0 и запомнить его в реестре . Это постоянный статический маршрут. Если маршрут добавлен без использования параметра -p то он сохраняется только до перезагрузки системы (до перезапуска сетевого системного программного обеспечения). Если же, при добавлении маршрута искользовался данный параметр, то информация о маршруте записывается в реестр Windows (раздел HKLMSYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes ) и будет использоваться постоянно при активации сетевых интерфейсов.

route delete 10.0.0.0 mask 255.0.0.0 — удалить маршрут для подсети 10.0.0.0/255.0.0.0 .

route add 10.10.10.10 192.168.1.158 — добавить маршрут для узла с IP-адресом 10.10.10.10 . Если маска в команде не задана, то подразумевается ее значение равное 255.255.255.255 , т.е конечная точка назначения является одиночным IP-адресом узла.

route delete 10.10.10.10 — удалить маршрут созданный предыдущей командой

route change 10.0.0.0 mask 255.0.0.0 10.10.10.1 — изменить адрес шлюза для существующего маршрута к сети 10.0.0.0/255.0.0.0 на значение 10.10.10.1 Допускается использование данной команды только для изменения адреса шлюза и метрики.

route -f — очистить таблицу маршрутов. После перезагрузки системы, или при перезапуске сетевых подключений таблица маршрутов будет восстановлена исходя из текущей сетевой конфигурации компьютера. При выполнении команды route -f из таблицы удаляются все маршруты, которые удовлетворяют условиям:

— не относятся к петлевому интерфейсу ( интерфейсу с IP 127.0.0.1 и маской -255.0.0.0)
— не являются маршрутами для многоадресной (multicast) рассылки (IP 224.0.0.1 маска 255.0.0.0)
— не являются узловыми маршрутами (когда маска равна 255.255.255.255) .

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

Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»

Привет, %username% ! Поскольку часто приходится настраивать ВПНы на чужих машинах и предоставлять доступ к каки-либо ресурсам нашей сети, а чаще всего это просто конкретные машины, то надо записать себе шпаргалку по добавлению статических маршрутов в ОСях семейства Windows (XP/7/8/8.1). Все элементарно и просто.

Синтаксис
Параметры

-f — Очищает таблицу маршрутизации от всех записей, которые не являются узловыми маршрутами (маршруты с маской подсети 255.255.255.255 ), сетевым маршрутом замыкания на себя (маршруты с конечной точкой 127.0.0.0 и маской подсети 255.0.0.0 ) или маршрутом многоадресной рассылки (маршруты с конечной точкой 224.0.0.0 и маской подсети 240.0.0.0 ). При использовании данного параметра совместно с одной из команд (таких, как add , change или delete ) таблица очищается перед выполнением команды.

-p — При использовании данного параметра с командой add указанный маршрут добавляется в реестр и используется для инициализации таблицы IP-маршрутизации каждый раз при запуске протокола TCP/IP. По умолчанию добавленные маршруты не сохраняются при запуске протокола TCP/IP. При использовании параметра с командой print выводит на экран список постоянных маршрутов. Все другие команды игнорируют этот параметр. Постоянные маршруты хранятся в реестре по адресу HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes

команда — Указывает команду, которая будет запущена на удаленной системе.

Список допустимых параметров:

КомандаНазначение
addДобавление маршрута
changeИзменение существующего маршрута
deleteУдаление маршрута или маршрутов
printПечать маршрута или маршрутов

конечная_точка — Определяет конечную точку маршрута. Конечной точкой может быть сетевой IP-адрес (где разряды узла в сетевом адресе имеют значение 0), IP-адрес маршрута к узлу, или значение 0.0.0.0 для маршрута по умолчанию.

mask Указывает маску сети (также известной как маска подсети) в соответствии с точкой назначения. Маска сети может быть маской подсети соответствующей сетевому IP-адресу, например 255.255.255.255 для маршрута к узлу или 0.0.0.0 . для маршрута по умолчанию. Если данный параметр пропущен, используется маска подсети 255.255.255.255 . Конечная точка не может быть более точной, чем соответствующая маска подсети. Другими словами, значение разряда 1 в адресе конечной точки невозможно, если значение соответствующего разряда в маске подсети равно 0.

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

metric — Задает целочисленную метрику стоимости маршрута (в пределах от 1 до 9999) для маршрута, которая используется при выборе в таблице маршрутизации одного из нескольких маршрутов, наиболее близко соответствующего адресу назначения пересылаемого пакета. Выбирается маршрут с наименьшей метрикой. Метрика отражает количество переходов, скорость прохождения пути, надежность пути, пропускную способность пути и средства администрирования.

if — Указывает индекс интерфейса, через который доступна точка назначения. Для вывода списка интерфейсов и их соответствующих индексов используйте команду route print . Значения индексов интерфейсов могут быть как десятичные, так и шестнадцатеричные. Перед шестнадцатеричными номерами вводится 0х . В случае, когда параметр if пропущен, интерфейс определяется из адреса шлюза.

/? — Отображает справку в командной строке.

Примечания
  • Большие значения в столбце metric таблицы маршрутизации — результат возможности протокола TCP/IP автоматически определять метрики маршрутов таблицы маршрутизации на основании конфигурации IP-адреса, маски подсети и стандартного шлюза для каждого интерфейса ЛВС. Автоматическое определение метрики интерфейса, включенное по умолчанию, устанавливает скорость каждого интерфейса и метрики маршрутов для каждого интерфейса так, что самый быстрый интерфейс создает маршруты с наименьшей метрикой. Чтобы удалить большие метрики, отключите автоматическое определение метрики интерфейса в дополнительных свойствах протокола TCP/IP для каждого подключения по локальной сети.
  • Имена могут использоваться для параметра , если существует соответствующая запись в файле базы данных Networks , находящемся в папке *системный_корневой_каталог*System32DriversEtc . В параметре можно указывать имена до тех пор, пока они разрешаются в IP-адреса с помощью стандартных способов разрешения узлов, таких как запрос службы DNS, использование локального файла Hosts , находящегося в папке *системный_корневой_каталог*system32driversetc , или разрешение имен NetBIOS.
  • Если команда — print или delete , параметр опускается и используются подстановочные знаки для указания точки назначения и шлюза. Значение может быть подстановочным значением, которое указывается звездочкой ( * ). При наличии звездочки ( * ) или вопросительного знака ( ? ) в описании конечной точки, они рассматриваются как подстановки, тогда печатаются или удаляются только маршруты, соответствующие точке назначения. Звездочка соответствует любой последовательности символов, а вопросительный знак — любому одному символу. 10.*.1 , 192.168.* , 127.* и *224* являются допустимыми примерами использования звездочки в качестве подстановочного символа.
  • При использовании недопустимой комбинации значений конечной точки и маски подсети (маски сети) выводится следующее сообщение об ошибке: Маршрут: неверная маска подсети адреса шлюза . Ошибка появляется, когда одно или несколько значений разрядов в адресе конечной точки равно 1, а значения соответствующих разрядов маски подсети — 1. Для проверки этого состояния выразите конечную точку и маску подсети в двоичном формате. Маска подсети в двоичном формате состоит из последовательности единичных битов, представляющей часть сетевого адреса конечной точки, и последовательности нулевых битов, обозначающей часть адреса узла конечной точки. Проверьте наличие единичных битов в части адреса точки назначения, которая является адресом узла (как определено маской подсети).
  • Параметр -p поддерживается в команде route только в операционных системах Windows NT 4.0, Windows 2000, Windows Millennium Edition и Windows XP. Этот параметр не поддерживается командой route в системах Windows 95 и Windows 98.
  • Эта команда доступна, только если в свойствах сетевого адаптера в объекте Сетевые подключения в качестве компонента установлен протокол Интернета (TCP/IP).
Примеры

Чтобы вывести на экран все содержимое таблицы IP-маршрутизации, введите команду:

Чтобы вывести на экран маршруты из таблицы IP-маршрутизации, которые начинаются с *10.* , введите команду:

Чтобы добавить маршрут по умолчанию с адресом стандартного шлюза 192.168.12.1 , введите команду:

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 , введите команду:

Чтобы добавить постоянный маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 , введите команду:

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и метрикой 7 , введите команду:

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и использованием индекса интерфейса 0х3 , введите команду:

Чтобы удалить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 , введите команду:

Чтобы удалить все маршруты из таблицы IP-маршрутизации, которые начинаются с *10.* , введите команду:

Чтобы изменить следующий адрес перехода для маршрута с конечной точкой 10.41.0.0 и маской подсети 255.255.0.0 с 10.27.0.1 на 10.27.0.25 , введите команду:

Как создать или удалить статический маршрут

Задача

Если вам нужно создать статический маршрут для трафика на вашем сервере, это можно сделать с помощью набора команд командной строки в большинстве операционных систем Windows. Следуйте приведенному ниже пошаговому руководству о том, как создать статический маршрут в Windows или удалить статический маршрут в ОС Windows.

Разрешение

Создание статического маршрута

Во-первых, чтобы добавить статический маршрут, откройте командную строку и введите следующее.

Приведенная ниже команда является всего лишь примером — убедитесь, что вы ввели свои данные.

 маршрут добавить маску 10.0.0.0 255.0.0.0 192.168.0.1 

Вы также можете добавить команду costmetric. Назначает целочисленную метрику стоимости в диапазоне от 1 до 9 999 для использования при вычислении самых быстрых, надежных и наименее дорогих маршрутов. Если costmetric не указан, по умолчанию используется 1.

Это с метрикой на месте:

 маршрут добавить маску 10.0.0.0 255.0.0.0 192.168.0.1 метрика 2 

Удаление статического маршрута

Откройте командную строку и введите

 удалить маршрут ipaddress 

Например, если вы добавили статический маршрут ниже:

 маршрут добавить 10.0.0.0 маска 255.0.0.0 192.168.0.1 

Для удаления введите

 удаление маршрута 10.0.0.0 

Список статических маршрутов

Чтобы вывести список всех настроек статических маршрутов на компьютере, откройте командную строку, введите следующую команду и нажмите ввод:

 печать маршрута 

Технический совет : Теперь вы можете получить мгновенный доступ к своим основным приложениям / файлам / мультимедиа удаленно из любой точки земного шара с помощью первоклассных облачных решений от CloudDesktopOnline.com. Для размещенных на хосте SharePoint и других размещаемых программных продуктов посетите Apps4Rent.com.;.

Теги: добавление маршрута, печать маршрута, добавление маршрута, Маршрутизация

Аллен Уайт

Аллен — консультант по информационным технологиям и имеет следующие аккредитации. MCSA, MCSE, MCTS, MCITP, CCA, CCSP, VCP 4,5, 6 и HP ASE, AIS — сетевая инфраструктура.

.

Как добавить или удалить статический маршрут в системах Windows

В этой статье мы рассмотрим, что такое статический маршрут и почему его вообще нужно добавлять. Мы будем использовать так называемый root или другими словами прописывать маршруты с помощью команды route add в командной строке Windows. Прежде чем приступить к практике, я хотел бы немного поговорить о теории, что бы вы поняли, что вы делаете и в каких случаях это может быть вам полезно.

Статическая маршрутизация — это тип маршрутизации, при котором маршруты явно указываются при настройке маршрутизатора.Вся маршрутизация происходит без участия каких-либо протоколов маршрутизации.

Статический маршрут — это определяемый администратором маршрут, по которому пакеты, перемещающиеся между источником и местом назначения, проходят по указанному пути. Другими словами, это явно указанный путь, по которому пакет должен пройти от точки A до точки B.

Почему нам нужно добавлять статические маршруты? В настоящее время для обеспечения безопасности очень распространено использование виртуальных частных сетей (VPN). VPN используются как в организациях для организации их защищенной сети, так и провайдерами для предоставления доступа к глобальному Интернету простым пользователям.Но, в любом случае, это иногда вызывает мелкие неудобства, как в организациях, так и среди обычных пользователей.

Например, у вас дома есть два компьютера, один из которых имеет доступ к Интернету через VPN, он также подключен к локальной сети второго компьютера, и каждый раз, когда он подключается к Интернету, соединение между двумя компьютерами теряется. потому что первый компьютер (который подключился к VPN) уже находится в другой сети и, следовательно, недоступен со второго компьютера.Это можно исправить, просто настроив статический маршрут.

Маршруты — это сетевые настройки, которые используются операционной системой для организации сетевого трафика и доступа к локальной сети и Интернету. С помощью этой страницы вы узнаете, как просматривать, удалять и добавлять маршруты на компьютере под управлением Windows от XP до 10.

Полнофункциональный для 10 конечных точек, срок действия не истекает. Подробнее>

.Руководство по настройке статической маршрутизации

с примерами

В этом руководстве подробно объясняется, как настроить статическую маршрутизацию, включая преимущества статической маршрутизации и недостатки статической маршрутизации. Узнайте, как включать, настраивать, управлять и удалять статический маршрут в маршрутизаторе Cisco на практическом примере в пакетном трассировщике.

Статическая маршрутизация — самый безопасный способ маршрутизации. Это снижает накладные расходы на сетевые ресурсы.
В этом типе маршрутизации мы вручную добавляем маршруты в таблицу маршрутизации.Это полезно, когда количество маршрутов ограничено.
Как и другие методы маршрутизации, статическая маршрутизация также имеет свои плюсы и минусы.

Преимущество статической маршрутизации

  • Легко реализовать.
  • Это наиболее безопасный способ маршрутизации, поскольку никакая информация не передается другим маршрутизаторам.
  • Не требует дополнительных затрат на такие ресурсы, как ЦП или память.

Недостаток статической маршрутизации

  • Подходит только для небольшой сети.
  • Если канал не работает, он не может перенаправить трафик.

Для объяснения статической маршрутизации я воспользуюсь программным симулятором сети с трассировщиком пакетов.
Вы можете использовать любое программное обеспечение для моделирования сети или использовать настоящие устройства Cisco, чтобы следовать этому руководству.
Нет никакой разницы в выводе, если выбранное вами программное обеспечение содержит команды, описанные в этом руководстве.

Создайте практическую лабораторию, как показано на следующем рисунке, или загрузите эту предварительно созданную практическую лабораторию и загрузите в программу трассировки пакетов

Практическая топология статической маршрутизации

При необходимости вы можете загрузить последнюю и более раннюю версию Packet Tracer отсюда.Скачать Packet Tracer

PC0 FastEthernet0 Router0 FastEthernet0 / 0 10.0.0.2/8
Router0 FastEthernet0 / 0 PC0 FastEthernet0 10.0.0.1/8
Маршрутизатор

Serial / 0/0 Router1’s serial0 / 0/0 192.168.0.253/30
Router1 Serial0 / 0/0 Router0’s Serial0 / 0/0 192.168.0.254 / 30
Router1 Serial0 / 0/1 Router2’s Serial0 / 0/0 192.168.0.249/30
Router2 Serial0 / 0/0 Router1’s Serial0 / 0 / 1 192.168.0.250/30
Router2 Serial0 / 0/1 Serial0 / 0/0 маршрутизатора Router3 192.168.0.245/30
Router3 Serial0 / 0/0 Последовательный порт Router2 0/0/1192.168.0.246 / 30
Router3 FastEthernet0 / 0 PC1’s FastEthernet0 20.0.0.1/8
PC1 FastEthernet0 Router1’s FastEthernet0 / 0 20.0.0.2/8 900

Назначить ПК IP-адрес

Назначьте ПК0 IP-адрес 10.0.0.2/8.

Повторите тот же процесс для ПК1 и назначьте IP-адрес 20.0.0.2/8.

Назначить IP-адреса интерфейсам маршрутизаторов

Дважды щелкните Router0, щелкните CLI и нажмите клавишу Enter, чтобы получить доступ к командной строке Router0.

В этой топологии используются два интерфейса FastEthernet0 / 0 и Serial0 / 0/0 Router0.
По умолчанию интерфейсы на маршрутизаторе остаются отключенными административно во время запуска.

Нам нужно настроить IP-адрес и другие параметры на интерфейсах, прежде чем мы сможем использовать их для маршрутизации.
Режим интерфейса используется для назначения IP-адреса и других параметров. Доступ к режиму интерфейса можно получить из режима глобальной конфигурации.
Следующие команды используются для доступа к режиму глобальной конфигурации.

Маршрутизатор> включить
Маршрутизатор # настроить терминал
Введите команды конфигурации, по одной в каждой строке. Закончите CNTL / Z.
Маршрутизатор (конфигурация) #
 

Из режима глобальной конфигурации мы можем войти в режим интерфейса. Оттуда мы можем настроить интерфейс.
Следующие команды назначат IP-адрес FastEthernet0 / 0.

Маршрутизатор (конфигурация) #interface fastEthernet 0/0
Маршрутизатор (config-if) #ip-адрес 10.0.0.1 255.0.0.0
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
Маршрутизатор (конфигурация) #
 

interface fastEthernet 0/0 команда используется для входа в режим интерфейса.

ip address 10.0.0.1 255.0.0.0 команда назначит IP-адрес интерфейсу.

no shutdown команда активирует интерфейс.

exit Команда используется для возврата в режим глобальной конфигурации.

Последовательному интерфейсу требуются два дополнительных параметра тактовая частота и пропускная способность .
Каждый последовательный кабель имеет два конца DTE и DCE.Эти параметры всегда настраиваются на стороне DCE.

Мы можем использовать команду show controllers interface из привилегированного режима, чтобы проверить конец кабеля.

Маршрутизатор # показать серийный номер контроллеров 0/0/0
Интерфейс Serial0 / 0/0
Оборудование - PowerQUICC MPC860
DCE V.35, тактовая частота 2000000
[Вывод опущен]
 

Четвертая строка вывода подтверждает, что конец последовательного кабеля DCE подключен. Если вы видите здесь DTE вместо DCE, пропустите эти параметры.

Теперь у нас есть необходимая информация, давайте назначим IP-адрес последовательному интерфейсу.

Маршрутизатор # настроить терминал
Введите команды конфигурации, по одной в каждой строке. Закончите CNTL / Z.
Маршрутизатор (config) #interface serial 0/0/0
Маршрутизатор (config-if) #ip-адрес 192.168.0.253 255.255.255.252
Маршрутизатор (config-if) # тактовая частота 64000
Маршрутизатор (config-if) #bandwidth 64
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
Маршрутизатор (конфигурация) #
 

Router # configure terminal Команда используется для входа в режим глобальной конфигурации.

Router (config) #interface serial 0/0/0 Команда используется для входа в режим интерфейса.

Маршрутизатор (config-if) #ip address 192.168.0.253 255.255.255.252 Команда назначает IP-адрес интерфейсу. Для последовательной связи мы обычно используем IP-адрес из подсети / 30.

Маршрутизатор (config-if) #clock rate 64000 And Router (config-if) #bandwidth 64 В реальной среде эти параметры контролируют поток данных между последовательными каналами и должны быть установлены у поставщиков услуг конец.В лабораторных условиях нам не нужно беспокоиться об этих значениях. Мы можем использовать эти значения.

Маршрутизатор (config-if) #no shutdown Команда вызывает интерфейс.

Маршрутизатор (config-if) #exit Команда используется для возврата в режим глобальной конфигурации.

Мы будем использовать те же команды для назначения IP-адресов на интерфейсах остальных маршрутизаторов. Нам нужно предоставить тактовую частоту и полосу пропускания только на стороне DCE последовательного интерфейса. Следующая команда назначит IP-адреса на интерфейсе Router1.

Маршрутизатор1

Маршрутизатор> включить
Маршрутизатор # настроить терминал
Введите команды конфигурации, по одной в каждой строке. Закончите CNTL / Z.
Маршрутизатор (config) #interface serial 0/0/0
Маршрутизатор (config-if) #ip-адрес 192.168.0.254 255.255.255.252
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
Маршрутизатор (config) #interface serial 0/0/1
Маршрутизатор (config-if) #ip-адрес 192.168.0.249 255.255.255.252
Маршрутизатор (config-if) # тактовая частота 64000
Маршрутизатор (config-if) #bandwidth 64
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
 

Теперь мы знаем, как назначать IP-адреса интерфейсам.Мы будем использовать те же команды для назначения IP-адресов на интерфейсах Router2.

Маршрутизатор2
Маршрутизатор> включить
Маршрутизатор # настроить терминал
Введите команды конфигурации, по одной в каждой строке. Закончите CNTL / Z.
Маршрутизатор (config) #interface serial 0/0/0
Маршрутизатор (config-if) #ip-адрес 192.168.0.250 255.255.255.252
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
Маршрутизатор (config) #interface serial 0/0/1
Маршрутизатор (config-if) #ip-адрес 192.168.0.245 255.255.255.255,252
Маршрутизатор (config-if) # тактовая частота 64000
Маршрутизатор (config-if) #bandwidth 64
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
 

Повторите тот же процесс для Router3

Маршрутизатор3
Маршрутизатор> включить
Маршрутизатор # настроить терминал
Введите команды конфигурации, по одной в каждой строке. Закончите CNTL / Z.
Маршрутизатор (конфигурация) #interface fastEthernet 0/0
Маршрутизатор (config-if) #ip-адрес 20.0.0.1 255.0.0.0
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
Маршрутизатор (config) #interface serial 0/0/0
Маршрутизатор (config-if) #ip адрес 192.168.0.246 255.255.255.252
Маршрутизатор (config-if) # без выключения
Маршрутизатор (config-if) #exit
 

Отличная работа, мы завершили половину пути. Теперь у маршрутизаторов есть информация о сетях, которая у них есть на их собственных интерфейсах.
Маршрутизаторы сами по себе не обмениваются сетевой информацией между собой. Нам необходимо реализовать механизм, который будет настаивать на том, чтобы они делились этой информацией.
Этот механизм называется маршрутизацией.

Есть два типа маршрутизации: статическая и динамическая. В этой статье мы будем использовать статический метод маршрутизации.

Команда для настройки статического маршрута

У нас есть две команды для настройки статического маршрута.

Маршрутизатор (конфигурация) # ip route destination_network_ # [subnet_mask] IP_address_of_next_hop_neighbor [административное_дистанция] [постоянный]
 

или

Маршрутизатор (конфигурация) # ip route destination_network_ # [subnet_mask] interface_to_exit [административное_дистанция] [постоянный]
 

IP-маршрут

Это основная команда, которая добавляет новые маршруты в таблицу маршрутизации.

сеть_назначения _ # [маска_подсети]

Это первый параметр. Он определяет сетевой адрес назначения.
Нам необходимо предоставить маску подсети, если мы используем подсеть.
Подсети — это меньшая сеть, созданная из одной большой сети в подсетях.
Если мы не используем подсеть, мы можем опустить значение маски подсети. Он будет разбираться автоматически.

IP_адрес_следующего_хопа_соседа / interface_to_exit

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

Вторая команда также выполняет ту же работу, но по-другому.
Он указывает интерфейс выхода вместо IP-адреса следующего перехода.
Он сообщает маршрутизатору, что если он получает пакет для пункта назначения, указанного
предыдущий параметр затем покидает этот пакет из этого интерфейса.Устройство, подключенное на другом конце этого интерфейса, позаботится о пакете.

административная_дистанция

Административная дистанция — это надежность маршрута.
При пересылке пакета будет выбран маршрут с наименьшим значением AD.
По умолчанию статический маршрут имеет два значения AD в зависимости от предыдущего параметра.
Если вы использовали IP-адрес соседа на следующем переходе, значение AD по умолчанию будет равно 1.
Если вы использовали интерфейс выхода, то значение AD по умолчанию будет 0.Этот параметр позволяет нам создавать несколько статических маршрутов для одного и того же пункта назначения.
Например, мы можем создать основной и резервный пути для целевой сети.
Чтобы создать путь к резервной копии, нам нужно установить значение AD выше, чем по умолчанию, например 2 или 3.
С этой конфигурацией маршрутизатор будет использовать основной путь. По какой-то причине, если основной маршрут не работает,
маршрутизатор автоматически начнет использовать резервный маршрут.

постоянный

Когда маршрут не работает, маршрутизатор удаляет его из таблицы маршрутизации.Постоянный параметр сохранит этот маршрут в таблице маршрутизации, даже если он выйдет из строя.
Его необязательный параметр мы можем опустить. Если мы его опустим, маршрутизатор удалит этот маршрут из таблицы маршрутизации, если он выйдет из строя.
Вы можете использовать этот параметр по соображениям безопасности, если не хотите, чтобы пакеты шли по другому пути.

Теперь мы знакомы с командой IP route, и ее параметры позволяют реализовать ее в нашей сети.

Настроить статический маршрут

По умолчанию, когда пакет поступает в интерфейс, маршрутизатор проверяет пункт назначения, указанный в пакете, и сравнивает его с таблицей маршрутизации.Если он находит совпадение с сетью назначения, он пересылает этот пакет со связанного интерфейса.
Если он не находит совпадения в таблице маршрутизации, он отбрасывает этот пакет.
Это поведение маршрутизатора по умолчанию. Нам не нужно настраивать напрямую подключенные сети.

Выполните следующую команду из режима глобальной конфигурации в маршрутизаторах.

Маршрутизатор0
Маршрутизатор (конфиг) #ip route 20.0.0.0 255.0.0.0 192.168.0.254
 

Эта команда указывает маршрутизатору, что при получении пакета на 20.Сеть 0.0.0 дайте 192.168.0.254.
Сеть 10.0.0.0 подключена напрямую, поэтому настраивать ее здесь не нужно.

Маршрутизатор1
Маршрутизатор (config) #ip route 10.0.0.0 255.0.0.0 192.168.0.253
Маршрутизатор (config) #ip route 20.0.0.0 255.0.0.0 192.168.0.250
 

На этом маршрутизаторе обе сети доступны через другие маршрутизаторы, поэтому нам нужно настроить маршрут для обеих сетей 10.0.0.0 и 20.0.0.0.

Маршрутизатор2
Маршрутизатор (config) #ip route 10.0.0.0 255.0.0.0 192.168.0.249
Маршрутизатор (config) #ip route 20.0.0.0 255.0.0.0 192.168.0.246
 

То же, что и Router1, снова нам нужно настроить маршрут для обеих сетей на этом маршрутизаторе.

Маршрутизатор3
Маршрутизатор (config) #ip route 10.0.0.0 255.0.0.0 192.168.0.245
 

Сеть 20.0.0.0 подключена напрямую, поэтому нам нужно только настроить сеть 10.0.0.0 на этом маршрутизаторе.

Это все, что нам нужно для переключения пакетов из одной сети в другую. Чтобы проверить результат, мы можем использовать команду ping .Войдите в командную строку ПК1 и используйте команду ping , чтобы проверить подключение с ПК0.

Хорошо, мы успешно реализовали статическую маршрутизацию в нашей сети.
Для перекрестной проверки мы загрузили настроенную топологию. Вы можете использовать это, если вы не получаете тот же результат.

Загрузить настроенную топологию

Как удалить статический маршрут

При статической маршрутизации мы должны управлять всеми маршрутами вручную. Если какой-либо маршрут не работает, мы должны удалить это вручную.Удалить маршрут при статической маршрутизации проще, чем вы думаете.
Все, что вам нужно сделать, это просто добавить ключевое слово no перед той же командой, которую мы использовали для настройки статического маршрута.

no ip route Команда используется для удаления маршрута из таблицы маршрутизации.
Следующие команды удаляют маршрут из соответствующих маршрутов.

Маршрутизатор0
Маршрутизатор (конфигурация) # no ip route 20.0.0.0 255.0.0.0 192.168.0.254
 
Маршрутизатор1
Маршрутизатор (config) # no ip route 10.0.0.0 255.0.0.0 192.168.0.253
Маршрутизатор (конфигурация) # no ip route 20.0.0.0 255.0.0.0 192.168.0.250
 
Маршрутизатор2
Маршрутизатор (конфигурация) # no ip route 10.0.0.0 255.0.0.0 192.168.0.249
Маршрутизатор (конфигурация) # no ip route 20.0.0.0 255.0.0.0 192.168.0.246
 
Маршрутизатор3
Маршрутизатор (конфигурация) # no ip route 10.0.0.0 255.0.0.0 192.168.0.245
 

Настроить маршрут по умолчанию

Статическая маршрутизация решает еще одну проблему сети. Он может перенаправить все несовпадающие пакеты на определенный порт.Эта функция чрезвычайно полезна в нескольких ситуациях. Мы можем установить маршрут по умолчанию для подключения к Интернету или реализовать измерение безопасности для обработки всех совпавших пакетов.

По умолчанию маршрутизаторы настроены на отбрасывание пакета, если адрес назначения
не найден в таблице маршрутизации. Маршрут по умолчанию переопределит это поведение.
Если в таблице маршрутизации не найдено совпадений с сетью назначения, она будет перенаправлена ​​на маршрут по умолчанию.
Таким образом, маршрут по умолчанию — это способ справиться со всеми несовпадающими пакетами.

Следующая команда установит маршрут по умолчанию

Маршрутизатор (конфигурация) # ip route 0.0.0.0 0.0.0.0 IP_address_of_next_hop_neighbor
[административное_дистанция] [постоянно]
 

или

Маршрутизатор (конфигурация) # ip route 0.0.0.0 0.0.0.0 interface_to_exit
[административное_дистанционное] [постоянное]
 

Приведенная выше команда устанавливает для целевой сети значение 0.0.0.0/0, которое представляет все сети.

Это все для этой статьи. В следующей статье мы настроим динамическую маршрутизацию.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

2024 © Все права защищены. Карта сайта