Изменение таблицы маршрутизации windows

[Routing] Шпаргалка про роутинг в Windows

Привет, %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_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes

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

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

Команда Назначение
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 , находящемся в папке *системный_корневой_каталог*\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-маршрутизации, введите команду:

Чтобы вывести на экран маршруты из таблицы 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 с помощью команды ROUTE

Сегодня речь пойдёт о настройке сетевых маршрутов в Windows командой ROUTE. Маршрутизация в сети нужна для того, чтобы устройства могли найти друг друга. Работает это так: мы задаём адрес назначения (destination) и шлюз (gateway), через который пакетам нужно пройти, чтобы достичь адреса назначения.

Команда route в Windows это весьма удобный инструмент для просмотра, добавления, редактирования и удаления сетевых маршрутов. Синтаксис команды выглядит следующим образом:

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

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

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

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

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

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

  • PRINT — печать маршрута;
  • ADD — добавление маршрута;
  • CHANGE — редактирование маршрута;
  • DELETE — удаление маршрута;

destination — адресуемый узел;

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

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

gateway — шлюз;

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

metric — значение метрики;

IF — указание, что следующий параметр интерпретируется как сетевой интерфейс;

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

Рассмотрим применений команды route .

Отобразить текущую таблицу маршрутов:

Отобразить таблицу маршрутов только для IPv6:

Отобразить таблицу маршрутов только для узлов, адрес которых начинается с 10:

Немного о том, как читать вывод команды route print .

Список интерфейсов показывает идентификаторы, MAC-адреса и наименования сетевых адаптеров.

Далее идут таблицы маршрутов. Они содержат столбцы сетевой адрес, маска сети, адрес шлюза, интерфейс и метрика.

Сетевой адрес это и есть адрес конечной точки маршрута (адрес назначения). С назначением столбца маска сети всё должно быть понятно по названию. Адрес шлюза относится к тому шлюзу, через который пойдёт пакет, чтобы достигнуть адреса назначения. Если написано On-link, то значит, что шлюз не используется по той причине, что адрес назначения достижим напрямую без маршрутизации. Интерфейс — адрес сетевого интерфейса, через который будет выполняться отправка пакета. Метрика — значение метрики, которая задаёт приоритет маршрутов. Чем меньше значение, тем выше приоритет.

Теперь рассмотрим управление маршрутами при помощи route .

Установить в качестве шлюза по умолчанию (основного шлюза) адрес 192.168.1.1:

Добавить маршрут для узла 10.10.10.10:

Так как маска не указана, то подразумевается значение 255.255.255.255.

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

Такой маршрут будет записан в реестр Windows (ветка HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes).

Удалить маршрут для узла 10.10.10.10:

Изменить адрес шлюза для узла 10.20.20.20:

change можно использовать для изменения только шлюза и метрики.

Очистить таблицу маршрутов:

При очистке таблицы маршрутов удаляются все маршруты, которые удовлетворяют следующим условиям:

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

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

Основные возможности команды route в Windows

Описание основных возможностей программы route на примерах.

route — просмотр / изменение таблицы IP-маршрутизации

Обзор команды route

  • route[-CFvnee]
  • route [-v] [-A семейство] add [-net|-host] цель [netmask маска_сети] [gw шлюз] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] интерфейс]
  • route [-v] [-A семейство] del [-net|-host] цель [gw шлюз] [netmask маска_сети] [metric N] [[dev] интерфейс]
  • route [-V] [—version] [-h] [—help]

Описание команды route

route изменяет таблицы IP-маршрутизации ядра. Программа главным образом используется для настройки статических маршрутов к определённым узлам или сетям через заранее настроенный интерфейс.При использовании опций add или del , route изменяет таблицы маршрутизации. Если эти опции не указаны, route показывает текущее содержимое таблиц маршрутизации.

Опции команды route

  • -A семейство — Использовать указанное семейство адресов (например, ‘inet’; воспользуйтесь командой ‘route —help’ для получения полного списка).
  • -F — Воздействует на таблицу маршрутизации ядра FIB (Forwarding Information Base — база информации о продвижении пакетов). Используется по умолчанию.
  • -C — Воздействует на кэш маршрутизации ядра.
  • -v — Выбрать режим вывода сообщений о подробностях.
  • -n — Показать числовые адреса, не пытаясь определить символьные имена узлов. Это полезно, если вы пытаетесь определить, почему не работает маршрут до сервера имён.
  • -e — Использовать формат отображения таблицы маршрутизации как в netstat.
  • -ee выведет очень длинные строки со всеми параметрами из таблицы маршрутиазции.
  • del — Удалить маршрут.
  • add — Добавить новый маршрут.

Цель — Целевая сеть или узел. Вы можете указать IP-адрес в десятично-точечной нотации или имя узла/сети.

  • -net — цельявляется сетью.
  • -host — цель является узлом.
  • netmask маска_сети — При добавлении маршрутов к сетям указывается сетевая маска.
  • gw шлюз — Маршрутизировать пакеты через шлюз. ЗАМЕЧАНИЕ: Указанный шлюз для начала должен быть доступен. Обычно это означает, что сначала вы должны настроить статические маршруты к шлюзу. Если вы укажете адрес одного из ваших локальных интерфейсов, он будет использован для определения, через какой интерфейс нужно отправлять пакеты.
  • metric M — Задаёт значение метрики маршрута.
  • mss M — Задаёт максимальный размер сегмента TCP (TCP Maximum Segment Size — MSS) для соединения по указанному маршруту в M байт. По умолчанию используется MTU устройства за вычетом размера заголовков, или наименьшее значение MTU, определённое протоколом Path MTU Discovery. Значение можно использовать для принудительного уменьшения размера пакетов TCP, на другом конце, если определение по протоколу Path MTU Discovery не работает (обычно это происходит по причине неправильной настройки пакетных фильтров, блокирующих сообщения ICMP Fragmentation Needed — требуется фрагментация)
  • window W — Задаёт размер окна TCP для соединений по указанному маршруту в W байт. Обычно это используется в сетях AX.25 и с драйверами, не поддерживающими обработку кадров один-к-одному.
  • irtt I — Задаёт начальное время кругового обхода для соединений TCP через данный маршрут в I миллисекунд (1-12000). Обычно это используется только в сетях AX.25. Если не указано, используется значение по умолчанию из RFC 1122 — 300 миллисекунд.
  • reject — Установка блокирующего маршрута, который завершит просмотр таблицы маршрутизации ошибкой. Это, например, используется для сокрытия сетей до использования маршрута по умолчанию. Это используется НЕ для фильтрации пакетов.
  • mod, dyn, reinstate — Установаить динамический или изменяемый маршрут. Эти индикаторы используются в целях диагностики, и обычно они устанавливаются демонами маршрутиазции.
  • dev интерфейс — Принудительно связать маршрут с указанным интерфейсом, поскольку ядро в ином случае определит его самостоятельно (проверкой уже существующих маршрутов и устройств, после чего маршрут будет добавлен). В большинстве обычных четей вам это не потребуется.
  • Если dev интерфейс является последней опцией в командной строке, слово dev можно не указывать, потому что оно подразумевается по умолчанию. В противном случае порядок опций маршрута (metric — netmask — gw — dev) не имеет значения.

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

  • route add -net 127.0.0.0 netmask 255.0.0.0 dev lo — Добавляет обычную петлевую запись, использующую сетевую маску 255.0.0.0 и связанную с устройством «lo» (подразумевая что устройство до этого уже было корректно настроено).
  • route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0 — Добавить маршрут к локальной сети 192.56.76.x через «eth0». Слово «dev» в данном случае можно не указывать.
  • route del default — Удалить текущий маршрут по умолчанию, помеченный как «default» или 0.0.0.0 в поле места назначения текущей таблицы маршрутизации.
  • route add default gw mango-gw — Добавить маршрут по умолчанию (который будет использоваться если нет других подходящих маршрутов). При использовании этого правила все пакеты будут направляться в шлюз «mango-gw». Устройство, которое будет использоваться, будет зависеть от того, можно ли через него достичь «mango-gw» — статический маршрут до «mango-gw» должен быть настроен до этого.
  • route add ipx4 sl0 — Добавляет маршрут к узлу «ipx4» через интерфейс SLIP (подразумевая, что «ipx4» — это узел SLIP).
  • route add -net 192.57.66.0 netmask 255.255.255.0 gw ipx4 — Эта команда добавляет сеть «192.57.66.x» через имеющийся маршурт на интерфейсе SLIP.
  • route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0 — Это не точное описание, некоторые люди знают как сделать его более точным. Это множество всех IP-маршрутов класса D (мультикаст), направленных через «eth0». Это обычная строка настройки ядра с поддержкой мультикастинга.
  • route add -net 10.0.0.0 netmask 255.0.0.0 reject — Эта команда создаёт маршрут отбрасывающий все пакеты направляющиеся с сеть «10.x.x.x.»

Вывод об использовании команды route в Windows

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

Читайте также:  Windows 10 затерла загрузчик linux
Оцените статью