Работа в сети с использованием TCP/IP
Netstat
Используйте netstat для вывода на экран соединений TCP/IP, которые используются на данный момент компьютером, а также статистики обмена данных для данного сетевого интерфейса и для протоколов IP, TCP и UDP. Утилита netstat имеет следующий синтаксис.
netstat [-a] [-e] [-n] [-o] [-p протокол] [-r] [-s] [интервал]
где
-a – вывод списка активных TCP-соединений вместе с портами TCP и UDP, по которым компьютер следит за соединениями.
-e – вывод статистики Ethernet, например, количество отправленных и полученных байтов и пакетов (вы можете также объединять параметр -e с параметром -s).
-n – вывод списка активных соединений TCP с адресами и номерами портов, показанными в числовом порядке (не делается никаких попыток определения имен).
-o – вывод списка активных соединений TCP с идентификатором процесса (PID) для каждого соединения. Вы можете найти приложение, соответствующее этому PID, во вкладке Processes Диспетчера задач (Task Manager). (Этот параметр можно объединять с параметрами -a, -n и -p.)
-p протокол – вывод соединений для указанного протокола (tcp или udp). Если вы объединяете этот параметр с параметром -s, то протоколом может быть tcp, udp, icmp или ip.
-r – вывод содержимого таблицы IP-маршрутизации.
-s – вывод статистики, упорядоченной по протоколам. По умолчанию статистика выводится для протоколов tcp, udp, icmp и ip.
интервал – повторяющийся вывод выбранной информации через указанный временной интервал (в секундах). Чтобы прекратить вывод, введите CTRL-C.
ARP
Утилита ARP выводит на экран текущее содержимое кэша ARP (Address Resolution Protocol). Этот кэш содержит MAC-адреса и IP-адреса компьютеров вашей локальной сети, которые недавно участвовали в обмене данных TCP/IP. ARP имеет следующий синтаксис.
arp [-a [InetAddr] [-N IfaceAddr]] [-g [InetAddr] [-N IfaceAddr]] [-d InetAddr [IfaceAddr]] [-s InetAddr EtherAddr [IfaceAddr]]
где
-a [InetAddr] [-N IfaceAddr] – вывод списка текущих таблиц кэша ARP для всех интерфейсов. Чтобы вывести запись кэша ARP для определенного IP-адреса, используйте arp -a с параметром InetAddr (этот IP-адрес). Чтобы вывести таблицу кэша ARP для определенного интерфейса, используйте параметр -NIfaceAddr, где IfaceAddr – IP-адрес, назначенный для этого интерфейса.
-g [ InetAddr ] [ -N IfaceAddr ] – то же самое, что и -a.
-d InetAddr [IfaceAddr] – удаление записи с определенным IP-адресом, где InetAddr – этот IP-адрес. Чтобы удалить запись из таблицы для определенного интерфейса, используйте параметр IfaceAddr, где IfaceAddr – IP-адрес, назначенный для этого интерфейса. Чтобы удалить все записи, используйте символ "звездочка" ( * ) вместо InetAddr.
-s InetAddr EtherAddr [IfaceAddr] – добавление в кэш ARP статической записи, которая используется для разрешения (преобразования) InetAddr в EtherAddr.
Кэш содержит записи для компьютера, с которым устанавливала соединение ваша рабочая станция, а также другие рабочие станции, поскольку ответные пакеты, генерируемые компьютерами в ответ на ARP-запросы, передаются как широковещательные сообщения. Это позволяет всем компьютерам в сети использовать результаты запроса, направленного с одной машины.
Кэш ARP периодически очищается, чтобы данные соответствовали текущим изменениям. Однако использование параметра -s для добавления записей в таблицу ARP делает эти записи постоянными.
Route
Ваш компьютер Windows Server 2003 поддерживает таблицу, в которой записываются сведения о маршрутизации, полученные от других компьютеров, в форме пакетов ICMP Redirect. Вы можете использовать команду route для просмотра или изменения таблиц маршрутизации. Например, вы можете указать, что для передачи данных в определенный узел должен использоваться какой-либо шлюз, отличный от шлюза по умолчанию. Команда route имеет следующий синтаксис.
route [-f] [-p] [Команда [Цель]] [mask Сетевая маска] [Шлюз] [metric Метрика]] [if Интерфейс]
где
-f – очистка таблицы маршрутизации для всех записей, которые не попадают в следующие категории
- Маршруты к хостам (маршруты с сетевой маской 255.255.255.255).
- Закольцованный (loopback) сетевой маршрут (маршруты с целевым адресом 127.0.0.0 и сетевой маской 255.0.0.0).
- Групповые (multicast) маршруты (маршруты с целевым адресом 224.0.0.0 и сетевой маской 240.0.0.0).
-p используется с параметром Команда следующим образом:
- Используйте -p с командой add, чтобы добавить указанный маршрут в реестр. Эти записи реестра инициализируют таблицу IP-маршрутизации при запуске протокола TCP/IP. (По умолчанию добавляемые маршруты не являются постоянными.)
- Используйте -p с командой print, чтобы вывести на экран список постоянных маршрутов.
- Постоянные маршруты сохраняются в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes.
Команда указывает одну из следующих команд.
- add – добавление маршрута.
- change – изменение существующего маршрута.
- delete – удаление маршрута.
- print – печать маршрута.
Цель – указывает для данного маршрута цель в сети. Этот IP-адрес сети (где биты хоста в сетевом адресе равны нулю), IP-адрес для маршрута к хосту или 0.0.0.0 для маршрута по умолчанию.
mask Сетевая маска – указывает сетевую маску (маску подсети), связанную с указанным целевым адресом. Маска подсети может быть нужной сетевой маской для IP-адреса сети, 255.255.255.255 для маршрута к хосту или 0.0.0.0 для маршрута по умолчанию.
Шлюз указывает промежуточный IP-адрес, через который происходит доступ к набору адресов, определенных адресом целевой сети и маской подсети (в следующем сегменте).
metric Метрика – целое значение "стоимости" данного маршрута (от 1 до 9999). Значения метрики используются для выбора между несколькими маршрутами в таблице маршрутизации (система выбирает маршрут с минимальной метрикой).
if Интерфейс указывает индекс интерфейса для интерфейса, через который можно попасть к цели. Если этот параметр опущен, то интерфейс определяется из адреса шлюза.
nbtstat
Команда nbtstat используется для вывода статистики работы NetBT (NetBIOS over TCP/IP) на каком-либо компьютере. С помощью nbtstat вы можете выводить содержимое кэша имен NetBIOS, получать список текущих сеансов NetBT, выводить статистику протоколов через определенные интервалы времени и даже перезагружать кэш путем обработки файла LMHOSTS (вы можете вносить в этот файл изменения, которые применяются сразу).
nbtstat имеет следующий синтаксис.
nbtstat [-a Имя-удаленного-компьютера] [-A IP-адрес] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [Интервал]
где
-a Имя-удаленного-компьютера – вывод на экран таблицы имен NetBIOS удаленного компьютера (в качестве Имя-удаленного-компьютера указывается NetBIOS-имя этого компьютера).
-A IP-адрес – вывод на экран таблицы имен NetBIOS удаленного компьютера с использованием IP-адреса этого удаленного компьютера.
-c – вывод содержимого кэша имен NetBIOS, таблицы имен NetBIOS и соответствующих разрешенных IP-адресов.
-n – вывод таблицы имен NetBIOS локального компьютера. Состояние Registered (Зарегистрировано) означает, что имя зарегистрировано с помощью широковещательного сообщения или с помощью сервера WINS.
-r – вывод статистики разрешения имен NetBIOS. На компьютере Windows Server 2003/XP Professional, сконфигурированном для использования WINS, этот параметр дает количество имен, разрешенных и зарегистрированных с помощью широковещательных сообщений и WINS.
-R – удаление содержимого кэша имен NetBIOS и последующая перезагрузка записей с тегом #PRE из файла LMHOSTS.
-RR – освобождение занятых имен NetBIOS и последующее обновление имен, которые были зарегистрированы локальным компьютером.
-s – показ сеансов клиента и сервера NetBIOS и попытка преобразовать целевой IP-адрес в имя.
-S – показ сеансов клиента и сервера NetBIOS с выводом сведений для этих удаленных компьютеров только по целевому IP-адресу.
Интервал – повторяющийся вывод выбранной статистики через указанный временной Интервал (в секундах). Чтобы прекратить вывод, введите CTRL-C.
Значительная часть сведений, которые вы почерпнули в этой лекции, бесполезна, если вы не знаете, каким образом могли бы использовать средства TCP/IP на своем предприятии: DHCP и DNS. В следующих лекциях дается описание этих важных средств.