Вход/Регистрация
TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)
вернуться

Фейт Сидни М.

Шрифт:

Рис. 15.4. Поиск порта службы через portmapper

Portmapper (или rpcbind) отслеживает запросы к общеизвестному порту 111. Когда клиенту требуется доступ к службе, он посылает запрос в сообщении RPC на порт 111 (т.е. к portmapper). В запросе указывается номер программы требуемой службы, ее версия и протокол пересылки (UDP или TCP). В ответе от portmapper клиенту возвращается текущий номер порта требуемой службы.

Кроме того, portmapper обеспечивает отдельные функции RPC через широковещательные рассылки. В этом случае клиент отправляет запрос RPC по одной из своих связей. Например, команда rusers из RPC через широковещательную рассылку запрашивает каждую из машин локальной сети о зарегистрированных на ней пользователях.

Отметим, что программа rusers на каждом из хостов может работать через различные порты. Какой номер порта должен поместить клиент в сообщение запроса для оправки в широковещательную рассылку?

Дело в том, что клиент вставляет свой запрос в специальный вызов косвенного запроса (indirect request) к portmapper и посылает такой запрос на порт 111. Portmapper пересылает полученный запрос к службе и затем возвращает ответ службы клиенту. Номер порта службы включается в ответ, чтобы последующие запросы клиента могли быть посланы непосредственно к службе, а не к portmapper.

15.6.2 Процедуры portmapper

Выполняемые программой portmapper процедуры перечислены в таблице 15.2.

Таблица 15.2 Процедуры portmapper

Процедура Описание
PMAPPROC_NULL Возвращает ответ, указывающий на активное состояние portmapper.
PMAPPROC_SET Используется при регистрации службы (т.е. при включении в список активных служб сервера локальной программы, ее версии, протокола и номера порта).
PMAPPROC_UNSET Применяется для отмены регистрации службы (например, при удалении локальной программы из списка активных служб сервера).
PMAPPROC_GETPORT Используется клиентом для поиска номера порта сервера. Входными параметрами являются специальный номер программы, версия программы и транспортный протокол (UDP или TCP).
PMAPPROC_DUMP Возвращает список всех локальных программ RPC, их версий, коммуникационных протоколов и портов (используется в rpcinfo -p).
PMAPPROC_CALLIT Пересылка поступающего от клиента косвенного запроса к локальной программе RPC. При успешном завершении процедуры возвращает ответ, включая номер порта программы. Предназначен для использования при широковещательных запросах.

15.6.3 Просмотр служб RPC через portmapper

Команда rpcinfo из Unix выводит полезную информацию о программах RPC, посылая запрос RPC к portmapper. Аналогичную программу обеспечивают и другие операционные системы с поддержкой клиентов RPC.

Приведенный ниже результат работы rpcinfo -p содержит сведения о программах RPC, работающих на хосте bulldog.cs.yale.edu (т.е. был послан запрос к процедуре PMAPPROC_DUMP программы portmapper).

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

> rpcinfo -p bulldog.cs.yale.edu

Program vers proto port

100000 2 tcp 111 portmapper

100000 2 udp 111 portmapper

100029 1 udp 657 keyserv

100005 1 udp 746 mountd

100005 2 udp 746 mountd

100005 1 tcp 749 mountd

100003 2 udp 2049 nfs

100005 2 tcp 749 mountd

100026 1 udp 761 bootparam

100024 1 udp 764 status

100024 1 tcp 766 status

100021 1 tcp 767 nlockmgr

100021 1 udp 1033 nlockmgr

100021 3 tcp 771 nlockmgr

100021 3 udp 1034 nlockmgr

100020 1 udp 1035 llockmqr

100020 1 tcp 776 llockmgr

100021 2 tcp 779 nlockmgr

100021 2 udp 1036 nlockmgr

100011 1 udp 1070 rquotad

100001 2 udp 1111 rstatd

100001 3 udp 1111 rstatd

100001 4 udp 1111 rstatd

  • Читать дальше
  • 1
  • ...
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: