Итак, в этой серии я рассказал вам, как диагностировать массу проблем, связанных с соединениями. Этой статьей я завершаю эту серию, рассказывая, как проблемы с таблицами маршрутизации Windows могут вызывать проблемы с соединениями.
Во всей серии я много говорил о маршрутизации. Специально для новичков в сетевых технологиях: маршрутизатор – это устройство, позволяющее пакетам путешествовать от одного сегмента сети к другому. Маршрутизатор всегда связан как минимум с двумя сегментами сети, но часто случается, что он связан с несколькими сегментами. И в этом случае маршрутизатор должен знать способ вычисления сегмента, которому нужно передавать пакет, чтобы тот достиг назначения. И тут в игру вступают таблицы маршрутизации.
Таблицы маршрутизации позволяют маршрутизаторам принимать решения о пересылке пакетов, но вы можете и не знать, что существуют также таблицы маршрутизации, встроенные в операционную систему Windows. Вы можете увидеть эти таблицы маршрутизации, открыв командную строку и введя команду ROUTE PRINT, как показано на Рисунке A.
Рисунок A: Таблицы маршрутизации Windows
На первый взгляд, изображение экрана выше может показаться пугающим. Но вы должны помнить, что я сделал его в Windows Vista. В Windows Vista информация о маршрутизации IPv6 смешана со стандартной информацией IPv4. Если бы вы попробовали команду Route Print в одной из предыдущих версий Windows, информация IPv6 отсутствовала бы, поэтому все выглядело бы проще.
Однако и в нашем варианте с IPv6, информация о маршрутизации не так сложна, как кажется на первый взгляд. Как видно из рисунка, информация о маршрутизации разделена на три раздела: интерфейсный список, таблица маршрутизации IPv4 и таблица маршрутизации IPv6. В данной статье я не буду рассматривать таблицу IPv6, так как пока еще немногие используют IPv6 в данный момент.
Список интерфейсов
Список интерфейсов создан, чтобы показать вам все сетевые интерфейсы, которые видит Windows. Я изолировал секцию списка интерфейсов на выходе на Рисунке B.
Увеличить
Рисунок B: В списке интерфейсов перечислены все сетевые адаптеры машины
Если вы посмотрите на рисунок выше, вы увидите, что первые два элемента списка соответствуют физическим сетевым адаптерам. Тот факт, что эти адаптеры присутствуют в списке, указывает на то, что:
- Windows видит адаптер.
- Для адаптера установлен драйвер.
- Windows считает адаптер возможным путем для трафика IPv4.
Третий элемент, показанный в списке, - это адаптер обратной связи. Это не физический сетевой адаптер, а логический механизм, используемый Windows для внутренних взаимодействий. Адаптер обратной связи обязан присутствовать всегда для нормальной работы Windows. Если он отсутствует, я бы предложил удалить различные сетевые компоненты и переустановить их.
Четвертый элемент в списке на Рисунке B – это адаптер 6TO4. Это логический механизм, используемый Windows для маршрутизации трафика IPv6 через сеть IPv4. Этот механизм присутствует только в Windows Vista.
Остальные элементы в списке указывают на то, что IPv6 связан с двумя физическими сетевыми адаптерами машины.
Таблицы маршрутизации
Хотя иногда бывает полезным иметь возможность проверить, признает ли Windows существование ваших сетевых адаптеров, именно таблицы маршрутизации полностью определяют, куда будет направлен трафик. На Рисунке C показано, как выглядят таблицы маршрутизации IPv4.
Увеличить
Рисунок C: Таблица маршрутизации IPv4
Таблицы маршрутизации, показанные выше, немного сложнее, чем те, с которыми вы будете обычно работать, так как машина, с которой брались снимки, содержит несколько сетевых адаптеров. Однако, вне зависимости от того, как настроена ваша машина, в таблице маршрутизации должны обязательно присутствовать некоторые записи. На схеме ниже перечислены все эти записи, а также указано их значение:
Сетевой адрес |
Описание |
0.0.0.0 |
Это маршрут по умолчанию, используемый, когда не найдено других возможных маршрутов. |
127.0.0.0 |
Это адрес обратной связи, используемый для внутренних взаимодействий. |
147.100.0.0 |
Это адрес локальной подсети. В данном конкретном случае, этот адрес относится к моей сети, так как мои адреса находятся в адресном диапазоне 147.100.x.x. Если бы в моей сети использовался более привычный диапазон 192.168.1.x, тогда это значение было бы 192.168.1.0. |
147.100.100.40 |
Это IP адрес, связанный с моей сетевой картой. Опять же, этот адрес относится только к моей подсети, но у вас также должны быть запись, отражающая ваш IP адрес. |
147.100.255.255 |
Это адрес широковещательной рассылки для подсети. Опять же, этот адрес для конкретно моей подсети. Просто чтобы показать, как он может выглядеть, в случае, если вы используете более обычный диапазон 192.168.1.x, этот адрес был бы 192.168.1.255. |
224.0.0.0 |
Это адрес групповой передачи Windows. |
255.255.255.255 |
Это адрес ограниченной широковещательной рассылки Windows . |
Как вы видите, некоторые из адресов в таблице выше относятся к конкретной сети. Если вам нужна помощь в понимании предназначения этих адресов, вы можете использовать команду IPCONFIG /all, чтобы узнать, как настроен TCP/IP для каждого сетевого адаптера. Вы сможете использовать эту информацию, чтобы определить адреса, которые нужно использовать в таблицах маршрутизации.
Нужно помнить также, что если ваша система использует несколько сетевых адаптеров, вам нужно иметь несколько записей для каждого конкретного сетевого адаптера. К примеру, если вы посмотрите на рисунок выше, вы заметите несколько записей в диапазоне 196.254.x.x. Эти адреса соответствуют второму сетевому адаптеру моей системы.
Теперь, когда вы знаете, чего ожидать от таблиц маршрутизации, встает вопрос, что нужно делать в том случае, если информация в ваших таблицах маршрутизации неверна или неполна. В такой ситуации у вас два выхода. Вы можете либо удалить и переустановить сетевые компоненты Windows, либо вручную исправить таблицу маршрутизации.
Если вас заинтересовала реконструкция таблиц маршрутизации, или вам просто хочется узнать больше об этих таблицах, о том, что означают различные колонки в этих таблицах, я рекомендую прочитать мою статью Making Sense of Windows Routing Tables.
Заключение
В этой серии статей я объяснил, что, хотя много чего было предпринято Microsoft для упрощения сетевого взаимодействия, при этом все еще могут возникать ошибки. Затем я рассказал, как вы можете использовать встроенные в Windows средства для решения различного типа проблем с соединениями.