Тарифы Услуги Сим-карты

Как прописать статический маршрут? И зачем он нужен

Для работы с маршрутами под виндами существует вполне очевидная команда route .
Под катом оригинальная справка из CLI виндовой командной строки.

Обработка таблиц сетевых маршрутов.

ROUTE [-f] [-p] [-4|-6] <команда> [<назначение>] [<шлюз>]

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

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

-4 Принудительное использование протокола IPv4.

-6 Принудительное использование протокола IPv6.

<команда> Одна из следующих команд:
PRINT Печать маршрута
ADD Добавление маршрута
DELETE Удаление маршрута
CHANGE Изменение существующего маршрута
<назначение> Задает узел.
MASK Далее следует значение параметра "маска_сети".
<маска_сети> Значение маски подсети для записи данного маршрута.
Если этот параметр не задан, по умолчанию используется
значение 255.255.255.255 .
<шлюз> Шлюз.
<интерфейс> Номер интерфейса для указанного маршрута.
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 > route PRINT -6 > route PRINT 157* .... Печать только узлов, начинающихся со 157

> route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2 узел^ ^маска ^шлюз метрика^ ^ интерфейс^
Если IF не задан, то производится попытка найти лучший интерфейс для
указанного шлюза.
> route ADD 3ffe::/32 3ffe::1 > route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2

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

> route DELETE 157.0.0.0 > route DELETE 3ffe::/32


Для стандартных нужд нам потребуются следующие команды.
route print - выводит таблицу маршрутизации.
Кстати под *nix-системами для этого служит команда netstat -r .

route add - добавляет статический маршрут.
Например, мы имеем задачу, чтобы трафик в сеть 10.1.1.0/24 ходил через шлюз 192.168.1.1 , в таком случае команда приобретет следующий вид:
route add 10.1.1.0 mask 255.255.255.0 192.168.1.1
Ключиком -p мы сохраним данный маршрут в таблице и он останется в ней даже после перезагрузки компьютера. Дополнительной функцией metric мы укажем "стоимость" конкретного маршрута. Мы уже взрослые, нам не нужно объяснять, как она работает.
route add -p 10.1.1.5 mask 255.255.255.255 192.168.5.1 metric 1
Этой командой мы создали статический маршрут с наивысшим приоритетом, который останется в таблице и после ребута компьютера.
route delete - удалит маршрут. Например, так:
route delete 10.1.1.0

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

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

Подпишу сетевые интерфейсы:

  1. 192.168.10.2/24
  2. 192.168.10.1/24
  3. 10.0.0.10/24
  4. 10.0.0.20/24
  5. 192.168.20.1/24
  6. 192.168.20.2/24

Всё просто. Шлюзы внутри с адресом.1, снаружи – по номеру подсети.10 – 10-ая подсеть, .20 – 20-ая подсеть. А хосты с адресом.2. Думаю, с этим вопросов не возникло. Чтож, проверим маршрутизацию сейчас. Для этого с каждого узла пропингуем все остальные хосты.

Доступность узлов в сети

Как мы видим, доступность есть только у узлов, непосредственно связанных виртуальным сетевым кабелем. Будем это исправлять!

Маршруты будем добавлять с помощью команды ROUTE командной строки. Что нам нужно добавить? Смотрим в табличку и добавляем те назначения, которые мы НЕ видим. И прописываем тот узел, который является следующим шагом для пакета на этом пути. Вот подробности:

  • Для HOST:
    1. назначение – 10.0.0.0/24 направляем на 192.168.10.1
    2. назначение – 192.168.20.0/24 направляем на 192.168.10.1
  • Для SERV:
    1. назначение – 192.168.20.0/24 направляем на 10.0.0.20
  • Для MAIN:
    1. назначение – 192.168.10.0/24 направляем на 10.0.0.10
  • Для ADMIN:
    1. назначение – 192.168.10.0/24 направляем на 192.168.20.1
    2. назначение – 10.0.0.0/24 направляем на 192.168.20.1

Прописываем маршруты Route

Как добавляются маршруты для рабочих станций? Утилита route

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

route add MASK

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

Покажем на примере. Узел host . Передавать пакеты на узел serv.main.com . Пробуем послать ping, пакеты не доходят. (см. скриншот выше). Почему? Да потому что наш компьютер не знает, куда передавать пакеты в неизвестную подсеть (узел 10.0.0.10). Это не наша подсеть, поэтому теряемся в догадках.

Задача маршрутизации – обеспечить передачу пакетов в другие сети. Если бы у нас был установлен основной шлюз (default gateway), то все пакеты с неизвестным адресом сети назначения передавались бы именно на него “Пусть сами разбираются”, но такой параметр у нас не указан.

Итак, настраиваем узел host.

route add 10.0.0.0 mask 255.0.0.0 192.168.10.1

Все пакеты, адрес назначения которых стоит “подсеть 10.0.0.0/8” будут отправляться на 192.168.10.1. Что происходит при этом на 192.168.10.1? 192.168.10.1 – это узел serv.main.com , который имеет второй сетевой интерфейс 10.0.0.10. Пакеты на этот интерфейс, посланные с host – дойдут без проблем, так как маршрут до узла мы прописали.

Вот такая занимательная маршрутизация. Итак, маршрут до 10.0.0.10 у нас есть. Сделаем аналогичным образом маршруты до подсети 192.168.20.0/24. Всё-всё-всё посылаем на 192.168.10.1 (так как – это наш единственный “выход” с узла host).

Пришла пора настраивать узел serv.main.com , который стал полновесным маршрутизатором.

Идём в управление сервером и смотрим, чтобы была установлена роль “Маршрутизация и удалённый доступ” (Routing and remote access). Если всё ОК, входим в “Администрирование” в эту оснастку.

Маршрутизация и удалённый доступ в Windows Server 2003

Или устанавливаем её. Для этого отключаем службу Windows Firewall

После добавления роли “Маршрутизация и удалённый доступ” мы видим следующую оснастку. Открываем конфигурирование.

Начинаем конфигурирование. Настраивать будем всё вручную, чтобы лучше разобраться в маршрутизации.

А в этом окне мастера настройки маршрутизации и удалённого доступа выбираем “маршрутизацию между сетями”. Как раз то, что нужно.

И у нас появилось вот такое дерево в консоли MMC. Интересует нас “статические маршруты”.

И добавим вот такой маршрут. В общем-то это похоже на графическую оболочку утилиты route, поэтому объясню лишь то, что мы сделали. Для сети 192.168.10.0/24 мы указали адрес следующего прыжка 192.168.10.1 для пакетов, пришедших с интерфейса 10.0.0.10 (т.е. те пакеты, которые идут извне к нам, например от узла MAIN.COM или ADMIN.MAIN.COM

Подобную ситуцию сделаем и на MAIN.COM

В общем виде – то же самое. Указываем “ОТКУДА”, “КУДА” и “КУДА ПОСЫЛАТЬ”. На метрику внимания не обращаем, это для приоретизации одних маршрутов перед другими, когда из одной точки можно добраться в другую разными путями.

Маршруты настроили. Простая проверка PING доказывает. Все узлы доступны друг для друга!

Друзья! Вступайте в нашу

Выводит на экран и изменяет записи в локальной таблице IP-маршрутизации. Запущенная без параметров, команда route выводит справку.

Синтаксис

route [-f ] [-p ] [команда [конечная_точка ] [mask маска_сети ] [шлюз ] [metric метрика ]] [if интерфейс ]]

Параметры

-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_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes команда Указывает команду, которая будет запущена на удаленной системе. В следующей таблице представлен список допустимых параметров. конечная_точка Определяет конечную точку маршрута. Конечной точкой может быть сетевой 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 . Значения индексов интерфейсов могут быть как десятичные, так и шестнадцатеричные. Перед шестнадцатеричными номерами вводится . В случае, когда параметр if пропущен, интерфейс определяется из адреса шлюза. /? Отображает справку в командной строке.

Примечания

  • Большие значения в столбце metric таблицы маршрутизации — результат возможности протокола TCP/IP автоматически определять метрики маршрутов таблицы маршрутизации на основании конфигурации IP-адреса, маски подсети и стандартного шлюза для каждого интерфейса ЛВС. Автоматическое определение метрики интерфейса, включенное по умолчанию, устанавливает скорость каждого интерфейса и метрики маршрутов для каждого интерфейса так, что самый быстрый интерфейс создает маршруты с наименьшей метрикой. Чтобы удалить большие метрики, отключите автоматическое определение метрики интерфейса в дополнительных свойствах протокола TCP/IP для каждого подключения по локальной сети.
  • Имена могут использоваться для параметра конечная_точка , если существует соответствующая запись в файле базы данных Networks, находящемся в папке системный_корневой_каталог \System32\Drivers\Etc. В параметре шлюз можно указывать имена до тех пор, пока они разрешаются в IP-адреса с помощью стандартных способов разрешения узлов, таких как запрос службы DNS, использование локального файла Hosts, находящегося в папке системный_корневой_каталог \system32\drivers\etc, или разрешение имен 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-маршрутизации, введите команду:

route print

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

route print 10.*

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

route add 0.0.0.0 mask 0.0.0.0 192.168.12.1

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

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

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

route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1

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

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

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

Вчера столкнулся с небольшой проблемой — на машине с Win2k3 установлены 2 сетевых карты, 2 провайдера. Проблема оказалась следующая: подсети пересекаются (точнее — совпадают). Было решено использовать за основной шлюз 1го провайдера, а по внутрисетевым ресурсам гулять — через 2го. И всё бы ничего, но машина должна обслуживать входящие соединения с обоих интерфейсов. Но, благодаря статическим маршрутам, ответы на запросы из подсети 10.0.0.0/8, пришедшей со стороны первого провайдера уходили через канал второго провайдера, что было, мягко говоря, не тем, что нужно. Как решить эту проблему под линухом — я знал (и тоже поведаю в этой заметке). Немного погуглив был найден вариант решения (в msdn"e наткнулись на управления приоритетами соединений). Коллега (WAJIM, привет) подумал — и нашёл 2й вариант. Потом немного (совсем немного) подумал я — и по аналогии появился 2й вариант решения для линуха:)
Итого, под катом вас ожидает 4 варианта решения задачи маршрутизации по 2м провайдерам — 2 под виндовс и 2 под линукс.

Дано:

  • 2 физических фаервола, по совместительству являющихся шлюзами (192.168.1.10 и 192.168.2.10)
  • 2 сетевых интерфейса (lan1 — 192.168.1.101 и lan2 — 192.168.2.101)
  • желание заставить это добро работать так, как нужно нам
Чтож… приступимс.
  • Windows
    • Управление приоритетом сетевых подключений:
      Необходимо создать 3 маршрута:

      route -p add 10.0.0.0 mask 255.0.0.0 192.168.1.10 metric 1

      Далее идём в Сетевые подключения -> Дополнительно -> Дополнительные параметры, перемещаем lan2 вверх, чтобы это соединение оказалось выше lan1. Готово.

    • Опять же — создаём 3 маршрута. Только изменим метрики
      route -p add 0.0.0.0 mask 0.0.0.0 192.168.1.10 metric 1
      route -p add 10.0.0.0 mask 255.0.0.0 192.168.1.10 metric 2
      route -p add 10.0.0.0 mask 255.0.0.0 192.168.2.10 metric 1

      И никаких танцев с приоритетом интерфейсов. Считаю этот метод оптимальным.
      UPD : метрика интерфеса, приоритет которого выше (см. предыдущий пункт) не должна быть наименьшей.
  • Linux
    • Приоритет в таблице маршрутизации:
      Тут почти тоже самое, что и в предыдущем пункте (только синтаксис чуток различается)

      route add -net 10.0.0.0/8 gw 192.168.1.10 metric 1
    • iproute2:
      Собственно, для этого решения необходимо наличие установленного пакета iproute2. В дебиане — apt-get install iproute.
      В этом случае нам понадобится 2 маршрута
      route add default gw 192.168.1.10 metric 0
      route add -net 10.0.0.0/8 gw 192.168.2.10 metric 0

      Создадим 2 таблицы маршрутизации:
      echo "10 lan1" >> /etc/iproute2/rt_tables
      echo "11 lan2" >> /etc/iproute2/rt_tables

      Добавляем в эти таблицы правила маршрутизации:
      ip route add default via 192.168.1.10 table lan1
      ip rule add from 192.168.1.101 table lan1
      ip route add 127.0.0.0/8 dev lo table lan1

      Ip route add default via 192.168.2.10 table lan2
      ip rule add from 192.168.2.101 table lan2
      ip route add 127.0.0.0/8 dev lo table lan2


      Последние правила — для того, чтобы пакеты с локального интерфейса не терялись.
    Так же не стоит забывать, что линукс при перезагрузки очищает таблицы и правила маршрутизации, потому рекомендую создать хитрый скрипт в папке /etc/network/if-up.d. У меня там лежит скрипт такого содержания:
    #!/bin/sh -e

    Case "$IFACE" in
    eth1)
    ip route add default via 192.168.1.10 table lan1
    ip rule add from 192.168.1.101 table lan1
    ip route add 127.0.0.0/8 dev lo table lan1
    ;;
    eth2)
    route del default gw 192.168.2.101
    route add -net 10.0.0.0/8 gw 192.168.2.10 1
    ip route add default via 192.168.2.10 table lan2
    ip rule add from 192.168.2.101 table lan2
    ip route add 127.0.0.0/8 dev lo table lan2
    ;;
    esac


    UPD : поправил косяки в указании метрики.
Выбор за вами. Скажу лишь что было решено остановиться на вторых вариантах для обоих систем (изменение метрики на windows и iproute2 на debian).
Кому интересна тема маршрутизации в линуксе — рекомендую почитать вот эту вещь lartc.org/howto
Надеюсь, кому‐ нибудь эта информация окажется полезной.

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

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

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

Другими словами это явно указанный путь по которому должен пройти пакет из пункта А в пункт Б.

Сейчас очень распространено для безопасности использовать «Виртуальные частные сети» (VPN). VPN используют как в организациях, для организации своей защищенной сети, так и провайдеры, для предоставления доступа, к глобальной сети Интернет, простым пользователям. Но, так или иначе, это иногда вызывает небольшие неудобства, как в организациях, так и у обычных пользователей. Например, у вас дома два компьютера один из которых имеет доступ в Интернет по средствам VPN, также он соединен со вторым компьютером локальной сетью, и каждый раз, когда он подключается к Интернету, то связь между двумя компьютерами теряется, так как первый компьютер (который подключился к VPN) уже находиться в другой сети и поэтому недоступен со второго компа. Это можно исправить как раз с помощью статического маршрута. Или другой случай, пригодиться сисадминам, (пример из жизни) есть организация, у которой имеются небольшие удаленные офисы, связь с которыми идет по средствам OpenVPN и был случай, когда мне пришлось узнать внешние ip адреса у этих удаленных офисов, я подключался к компьютеру по VPN сети и соответственно не мог узнать внешний ip, так как он мне бы показал внешний ip нашего VPN соединения, но что же делать, я просто на всего прописал один статический маршрут на удаленном компьютере, с помощью которого я попал на нужный мне сайт (который показывал внешний ip) и все. Есть, конечно, и другой вариант, съездить туда и узнать ip без подключения к VPN сети, но вы сами понимаете, что на это нет времени и попросту неохота. Теперь вы немного представляете, где и для чего вам может пригодиться знание того, как прописываются статические маршруты.

Хватит теории, переходим к практике. Сейчас мы с вами пропишем маршрут, который разрешит нам получить доступ к локальной сети при включенном VPN соединении, пригодиться обычным пользователям, у которых дома более одного компьютера, а в Интернет выходят по средствам VPN.

Имеем локальную сеть: 192.168.1.0/24

Локальный IP первого компьютера (пусть он будет компьютер — A) – 192.168.1.2 (на котором присутствует VPN соединения)

Локальный IP второго компьютера (а этот компьютер — B) – 192.168.1.3

IP адрес шлюза, т. е. модема – 192.168.1.1

Нам нужно прописать маршрут на компьютере A чтобы он смог видеть компьютер B при включенном VPN соединении. Делается это следующем образом: запускаем командную строку:

Пуск->выполнить->cmd и набираем следующую команду:

Route –p add 192.168.1.0 mask 255.255.255.0 192.168.1.1

  • route – сама программа которая работает с таблицей маршрутизации;
  • -p – ключ, который говорит, что маршрут будет постоянный, так как (Важное замечание!) без этого ключа все маршруты, которые вы добавите удаляться после перезагрузке, поэтому если вы хотите использовать маршрут всегда, то пропишите этот ключ, если только один раз, то его можно не писать;
  • add – сама команда добавляющая запись в таблицу маршрутизации;
  • 192.168.1.0 – сеть, с которой вы хотите иметь связь;
  • mask 255.255.255.0 – маска подсети;
  • 192.168.1.1 – адрес шлюза, обычно это адрес модема.

Добавив всего один маршрут вы получаете доступ к своей сети при подключенном Интернете т.е. VPN соединении.

Вот еще один небольшой пример, у вас дома подключение к интернету через модем ADSL и вам иногда (ну или постоянно) требуется подключение к VPN сети и соответственно вы уже выхода в интернет через свой канал не будите иметь, но с помощью статического маршрута вы можете получить доступ к определенным сайтам (узнав предварительно их ip адреса, с помощью команды ping в командной строке, например ping yandex.ru) к которым вам бы хотелось иметь постоянный доступ (и при подключенном vpn соединение и не подключенном). Например, сайт имеет ip адрес 172.18.24.13 а шлюз (маршрутизатор, модем) имеет IP адрес 192.168.0.1 вам необходимо прописать следующие:

Route –p add 172.18.24.13 mask 255.255.255.255 192.168.0.1

Теперь поговорим поподробней о команде route. Общий синтаксис:

route [-f] [-p]

Рассмотрим команды и ключи этой программы:

  • -f — удаляет из таблицы маршрутизации все маршруты
  • -p – сохраняет маршрут на постоянную основу
  • add – добавляет новый маршрут
  • change — меняет текущий маршрут в таблице маршрутизации
  • delete — удаляет маршрут из таблицы маршрутизации
  • print — отображает содержимое таблицы маршрутизации
  • destination — при добавлении или изменении маршрута этот параметр используется для указания идентификатора сети назначения
  • mask — при добавлении или изменении маршрута этот параметр используется для указания маски подсети для сети назначения
  • gateway — при добавлении или изменении нового маршрута этот параметр используется для указания шлюза (маршрутизатора или модема)
  • metric — используется для указания целого числа в диапазоне от 1 до 9999, являющегося метрикой стоимости для маршрута. Если для определенной сети назначения существует несколько возможных маршрутов, будет использован маршрут с наименьшим значением метрики
  • if — используется для указания номера индекса интерфейса, который подключен к сети назначения.

Для того чтобы просто посмотреть таблицу маршрутизации у себя на компьютере введите в командную строку следующие:

Route print

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