Проверка маршрута сети windows
Утилита tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть-01
Всем привет ранее я начал рассказ про сетевые утилиты системного администратора в статье Утилита ping или как проверить доступность хоста. Сетевые утилиты 1 часть, движемся дальше и разбираем еще одну утилиту tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть.
Traceroute — это служебная компьютерная программа, предназначенная для определения маршрутов следования данных в сетях TCP/IP. Traceroute может использовать разные протоколы передачи данных в зависимости от операционной системы устройства. Такими протоколами могут быть UDP, TCP, ICMP или GRE. Компьютеры с установленной операционной системой Windows используют ICMP-протокол, при этом операционные системы Linux и маршрутизаторы Cisco — протокол UDP.
Открываем командную строку Windows и вводим tracert. Перед вами откроется справка команды tracert.
Утилита tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть-02
Использование: tracert [-d] [-h максЧисло] [-j списокУзлов] [-w таймаут]
[-R] [-S адресИсточника] [-4] [-6] конечноеИмя
Параметры:
-d Без разрешения в имена узлов.
-h максЧисло Максимальное число прыжков при поиске узла.
-j списокУзлов Свободный выбор маршрута по списку узлов (только IPv4).
-w таймаут Таймаут каждого ответа в миллисекундах.
-R Трассировка пути (только IPv6).
-S адресИсточника Используемый адрес источника (только IPv6).
-4 Принудительное использование IPv4.
-6 Принудительное использование IPv6.
Давайте посмотрим каким маршрутом мы обращаемся до яндекса. Вводим
Видим каждого участника маршрута, они еще называются хопами. В роли участников выступают маршрутизаторы разных провайдеров и на конце хост назначения.
Утилита tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть-03
Для ускорения получения информации из tracert можно отключить разрешение имен и получать только ip адреса, скорость увеличиться.
Утилита tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть-04
Если у вас с какого то момента пошли звездочки вместо адресов то вероятнее всего данных хост не доступен и из за него вы не можете попасть на нужный вам ресурс, обычно так выясняется на уровне какого провайдера сейчас сетевая проблема.
Утилита tracert или как проверить маршрут до хоста. Сетевые утилиты 2 часть-05
Вот такая вот полезная утилита tracert и вы научились с помощью нее проверять маршрут до нужного вам хоста. Читайте далее утилита pathping или как точно диагностировать проблему на маршруте до сайта. Сетевые утилиты 3 часть.
ROUTE — описание команды и примеры использования
Описание
ROUTE — Выводит на экран и изменяет записи в локальной таблице IP-маршрутизации. Запущенная без параметров, команда route выводит справку.
Синтаксис
Параметры
Параметр | Описание |
---|---|
-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, введите команду:
Команды для проверки и исправления настроек сети
Я уже писал, о том, что такое IP-адреса и как проверить, под каким адресом вас видит внешний мир. Однако часто этой информации недостаточно для того, чтобы понять, какой все-таки адрес присвоен вашей сетевой карте, а также провести диагностику проблем подключения. Приведу список команд, которые можно использовать. (также у меня на сайте можно прочитать про визуальную настройку сетевых подключений)
Для начала необходимо открыть командную строку. Делается это так: нажимаете кнопку пуск, выбираете пункт «выполнить».
Альтернативные способ — нужно нажать клавишу Win (между Ctrl и Alt) и R одновременно, этот способ работает также и на Висте
Появляется окошко, в которое нужно вписать cmd и нажать ОК
Появляется та самая командная строка
В ней можно набирать и «вводить» команды, нажимая Enter. Результаты можно копировать — если нажать правую кнопку можно выделить нужный кусок, далее нужно еще раз нажать правую кнопку мыши.
Команда ping
Первая команда, с которой нужно познакомиться — это ping, проверяющую доступность заданного адреса. Введите команду ping 127.0.0.1. Должно получиться что-то такое (если команда не ping не работает, то, возможно, решить проблему поможет инструкция по исправлению ошибки cmd no command):
C:\Documents and Settings\Администратор>ping 127.0.0.1
Обмен пакетами с 127.0.0.1 по 32 байт:
Ответ от 127.0.0.1: число байт=32 время
Как мы видим, на адрес 127.0.0.1 было отправлено 4 пакета, и они все достигли цели. Что же это был за адрес и почему я был уверен, что пакеты дойдут? Ответ прост — пакеты никуда не отправлялись, а оставались на вашем компьютере. Этот адрес специфичен и используется для loopback — пакетов, не уходящих никуда вовне. Отлично, можем теперь «пропинговать» адрес этого сайта: 212.193.236.38
C:\Documents and Settings\Администратор>ping 212.193.236.38
Обмен пакетами с 212.193.236.38 по 32 байт:
Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55
Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55
Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55
Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55
Статистика Ping для 212.193.236.38:
Пакетов: отправлено = 4, получено = 4, потеряно = 0 (0% потерь),
Приблизительное время приема-передачи в мс:
Минимальное = 3мсек, Максимальное = 3 мсек, Среднее = 3 мсек
C:\Documents and Settings\Администратор>
Можно заметить только одно отличие — пакеты доходили не мгновенно, а за 3 миллисекунды. Надеюсь, у вас тоже не было никакой задержки при доставке пакетов, а главное — вы не увидели строчки типа
Появление таких строчек означает, что часть пакетов теряется. Это свидетельствует о проблемах на линии или не сервере, к которомы вы обращаетесь.
Команда ipconfig
Следующая важная команда — ipconfig. Введите ее. У меня получилось вот так:
Настройка протокола IP для Windows
Ethernet — Ethernet адаптер:
DNS-суффикс этого подключения . . : srcc.msu.ru
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз . . . . . . . . . . : 192.168.17.240
C:\Documents and Settings\Администратор>
В данном случае получился адрес 192.168.17.139. Можно этот адрес тоже пропинговать (вы пингуйте свой) — пакеты должны доходить мгновенно. Основной шлюз — это адрес, на который компьютер отправляет пакеты, не найдя подходящего адреса в своей сети. Так, в моем случае все пакеты, кроме пакетов на 192.168.17.* будут отправлены на 192.168.17.240, а тот компьюьтер уже должен решить, что с ними делать и куда их переправлять дальше. Примечание: локальная сеть, то есть те адреса, пакеты на которые не отправляются на шлюз, определяется при помощи маски — нолик на последнем месте и 255 на всех предыдующих как раз и означает, что может буть произвольным последнее число в IP-адресе.
Одно из стандартных действий при поиске проблем подключения — пропинговать свой шлюз. Если пакеты до него не доходят, то, видимо, проблема где-то рядом, например, поврежден или плохо воткнут сетевой шнур. Также стоит знать, где физически находится компьютер с вашим основным шлюзом — у провайдера, где-то в доме, а, может, это — можем в вашей квартире. Примечание: некоторые компьютеры настроены не откликаться на запросы команды ping. Поэтому отсутствие пинга — не стопроцентная гарантия отсутствия связи с адресом.
Более подробную информацию можно получить командой ipconfig /all. У меня получилось:
C:\Documents and Settings\Администратор>ipconfig /all
Настройка протокола IP для Windows
Имя компьютера . . . . . . . . . : sander
Основной DNS-суффикс . . . . . . : MSHOME
Тип узла. . . . . . . . . . . . . : смешанный
IP-маршрутизация включена . . . . : нет
WINS-прокси включен . . . . . . . : нет
Порядок просмотра суффиксов DNS . : MSHOME
Ethernet — Ethernet адаптер:
DNS-суффикс этого подключения . . : srcc.msu.ru
Описание . . . . . . . . . . . . : Broadcom 440x 10/100 Integrated Controller
Физический адрес. . . . . . . . . : 00-16-D4-63-03-65
Dhcp включен. . . . . . . . . . . : да
Автонастройка включена . . . . . : да
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз . . . . . . . . . . : 192.168.17.240
Аренда получена . . . . . . . . . : 2 февраля 2009 г. 11:00:28
Аренда истекает . . . . . . . . . : 9 февраля 2009 г. 11:00:28
C:\Documents and Settings\Администратор>
Самую полезную информацию я выделил жирным. DHCP-сервер выделил мне динамиеский адрес на основе моего MAC-адреса или физического адреса. Мои DNS-сервера — это 212.192.244.2 и 212.192.244.3.
Другие команды
Команда tracert позволяет проследить путь пакетов от вашего компьютера до цели. Попробуйте, например протрассировать путь до этого сайта: tracert it.sander.su. Строки в выводе трассировки есть точки, через которые проходит пакет на своем пути. Первой точкой будет ваш шлюз. Использование команды tracert позволяет найти источник проблем при связи с каким-либо адресом. Пакеты, посылаемые командой tracert, имеют показатель TTL — time to live — целое положительное число. Каждый маршрутизатор на пути уменьшает этот показатель на 1, если TTL падает до нуля, то трассировка заканчивается. По умолчанию используется начальный TTL равный 30, задать другое значение можно опцией -h.
Посмотреть таблицу маршрутизации можно командой route print, однако я не буду подробно останавливаться на ней — это тема отдельной статьи.
Команда netstat позволяет просмотреть список установленных соединений. В режиме по умолчанию команда пытается преобразовывать все IP-адреса в доманные имена (при помощи службы DNS), что может работать медленно. Если вас устраивает числовой вывод, вызывайте команду netstat -n. Если вас также интересуют открытые порты на вашем компьютере (что означает, что он готов принимать соединения по этим портам), то вызовите команду с ключом -a: например, netstat -na. Можно также вызвать команду netstat -nb, чтобы посмотреть, какие процессы установили соединения. Команда netstat -r эквивалентна команде route print.
Команда netsh позволяет изменить настройки сети через командную строку. Введите команду netsh interface ip show address. У меня получилось:
C:\Documents and Settings\Администратор>ipconfig /all
Настройка интерфейса «Ethernet»
DHCP разрешен: да
Метрика интерфейса: 0
Запоминаем название (Ethernet) и теперь командой netsh interface ip set address name=»Ethernet» source=static addr=192.168.0.33 mask=255.255.255.0 gateway=192.168.0.1 gwmetric=30 задаем IP-адрес. Для динамического подключения: netsh interface ip set address name=»Ethernet» source=dhcp. На этом сайте также можно прочитать об интерактивной настройке параметров сети