Мюллер Джон Поль
Шрифт:
Поддержка удаленного вызова процедур
В начале этой главы мы говорили о сетевой транспортировке и способе, при помощи которого Microsoft ее осуществляет. Я отмечал, насколько сложной может стать эта функция с добавлением нескольких свойств. Удаленный вызов процедур (Remote Procedure Call – RPC) является устоявшейся процедурой для Windows XP; Microsoft добавила эту функцию в Windows NT 4. Windows XP применяет ее в качестве сетевого транспортного механизма, использующего именованные каналы, NetBIOS или WinSock, для установления соединения между клиентом и сервером. Удаленные вызовы процедур реализуются в соответствии с техническими требованиями среды обмена данными (Data Communication Exchange) консорциума OSF (Open Software Foundation).
Итак, в чем же состоит функция RPC? К примеру, их использует OLE. На самом деле OLE применяет разновидность RPC под названием Light RPC (LRPC) для осуществления соединений, обычно недоступных. Однако LRPC – это только вершина айсберга.
Наиболее распространенной функцией RPC является запуск кода на других машинах. Без RPC весь этот код будет появляться на вашей машине в том месте, где Windows его обнаружит. В случае, если сетевой администратор соберется обновить программное обеспечение, для выполнения этой задачи ему придется проводить поиск по всем машинам сети. Проще «позаимствовать» DLL с чьей-нибудь машины. RPC дает возможность приложению взять то, что ему необходимо, в форме исполняемого кода на любом компьютере сети.
Поддержка сокетов Windows
Создание сокетов Windows – WinSock (Windows Sockets) – явилось попыткой группы разработчиков навести порядок в скоплении гнездовых интерфейсов, основанных на протоколе TCP/IP. Первоначально программисты переносили свои реализации этого протокола в Windows, результатом чего стала их полная несовместимость. Гнездовой интерфейс был впервые реализован как сетевой механизм межпроцессного взаимодействия для версии 4.2 ОС UNIX, разработанной в Беркли. Windows XP требует, чтобы все приложения, не использующие сетевую базовую систему ввода-вывода NetBIOS, для доступа к сервисам TCP/IP применяли WinSock. При желании можно также создавать приложения IPX/ SPX для этого стандарта. Microsoft включила в Windows XP два приложения WinSock: SNMP и FTP.
Прежде чем двигаться далее, я хотел бы дать краткое определение некоторым терминам, встретившимся в предыдущем абзаце. Вы узнали, что раньше представлял собой протокол, – набор правил. TCP/IP – это общая реализация набора правил. Сокет легко рассматривать как держатель трубки, применявшийся в старых телевизорах или радио. Приложение вправе вставить запрос (трубку) какой-либо службы в гнездо и отправить его какому-нибудь хосту. Этот хост может быть файловым сервером, мини-компьютером, мэйнфреймом и даже другим PC.
Приложение в состоянии также использовать сокет для обращения к серверу базы данных. К примеру, оно может запросить статистику сбыта за прошлый год. В случае, если каждый хост работает с сокетом другого размера, приложениям потребуется различный набор трубок, соответствующих этим сокетам. WinSock решает проблему путем стандартизации сокетов, служащих для запроса сервисов и осуществления запросов.
Помимо упрощения интерфейса, WinSock предоставляет еще одно преимущество. Обычно приложение добавляет заголовок сетевой базовой системы ввода-вывода NetBIOS к каждому пакету, отправляемому с рабочей станции. Станции на другом конце не нужен такой заголовок, тем не менее он присутствует. Дополнительная обработка служебных данных снижает производительность сети. При установке WinSock необходимость в заголовке отпадает, а пользователи получают выигрыш в производительности.
Сокеты являются старым (по крайней мере, в компьютерной области), но далеко не устаревшим принципом. Проект WinSock оказался таким успешным, что Microsoft начала применять его в других транспортных схемах. Например, Windows XP включает модуль WinSock в протокол IPX/SPX.
Конечно, на сегодняшний день WinSock – всего лишь временная замена. В конечном счете компании откажутся от модели клиент-сервер для некоторых приложений и будут использовать распределенный подход. Такие технологии, как XML (extensible Markup Language – язык расширяемой разметки, универсальный формат структурированных данных в Internet) и протокол SOAP (Simple Object Access Protocol – протокол упрощенного доступа к объектам; стандарт RPC в Internet), – это лишь часть огромного количества новых технологий, основанных на передаче информации в Internet. Распределенные приложения требуют интерфейс RPC, а не WinSock.
Конфигурирование TCP/IP – упрощенное представление
Гибкость, так упрощающая применение TCP/IP в Windows XP, делает его конфигурирование непосильным для неопытного пользователя. Учитывая это, я решил рассмотреть очень быстрый и простой метод конфигурирования TCP/IP для локальной сети. Допустим, вы будете использовать Web-сервер, работающий в локальной сети, однако принципы, описываемые в данном разделе, также справедливы и для других схем.
Сначала следует изменить параметры TCP/IP вашего компьютера таким образом, чтобы другие компьютеры могли его видеть. Щелкните правой кнопкой мыши по ярлыку Сетевое окружение и из контекстного меню выберите пункт Свойства. Щелкните правой кнопкой мыши по ярлыку Подключение по локальной сети и из контекстного меню снова выберите пункт Свойства. На вкладке Общие (General) диалогового окна Подключение по локальной сети – свойства (Local Area Connection) укажите опцию Протокол Интернета [TCP/ IP] – Internet Protocol (TCP/IP). После этого щелкните по кнопке Свойства, и на экране появится диалоговое окно Свойства: Протокол Интернета (TCP/IP) – Internet Protocol (TCP/IP) Properties (рис. 21.8).
Рисунок 21.8. Для конфигурирования сетевых настроек компьютера служит вкладка Общие диалогового окна Свойства: Протокол Интернета (TCP/IP)
Рассмотрим, как я установил параметры на вкладке Общие в указанном окне. В одноранговой сети необходимо настроить всего два поля: IP-адрес (IP Address) и Маска подсети (Subnet Mask), работающие вместе. IP-адрес состоит из двух частей: первая определяет организацию, вторая – сегмент сети, в котором функционирует компьютер.
Обратите внимание, что IP-адрес в действительности представляет собой 32-разрядное значение, состоящее из октетов – четырех десятичных чисел, разделенных точками. Для наименования организации используется от одного до трех октетов. Остальные октеты характеризуют компьютер. Каждый октет может содержать значение от 0 до 255. Четыре октета вместе составляют IP-адрес. Если вы подключены к Internet, для получения IP-адреса вам придется обратиться за регистрацией в InterNIC (Internet Network Information Center – Информационный центр Internet). Однако в локальной сети вы устанавливаете связь только с вашей организацией. Необходимо лишь убедиться, что все машины имеют уникальные IP-адреса и используют один и тот же адрес подсети.
Работая в локальной сети, применяйте зарезервированный для вашей сети стандартный рекомендованный диапазон чисел. Windows XP обычно выбирает эти числа автоматически, однако вы можете столкнуться с ситуацией, когда вам придется вводить их вручную. Сеть Windows XP обычно использует в качестве IP-адреса либо 192.168.0.ХХХ, либо 169.254.ХХХ.ХХХ (замените ХХХ на номер индивидуального компьютера). Сети на основе ICS (Internet Connection Sharing – служба управления доступом в Internet) всегда применяют последовательность 192.168.0.ХХХ, поскольку этот диапазон адресов жестко прописан в службе ICS. Ничто не запрещает вам взять другие числа, однако числа стандартного диапазона гарантируют совместимость с Internet.
Теперь возникает вопрос о том, как компьютер читает адреса. Здесь нам понадобится маска подсети, показанная на рис. 21.8. Как и IP-адрес, маска подсети содержит четыре десятичных числа, разделенных точками, каждый из которых принимает значение от 0 до 255. Как видно из рисунка, первые три числа имеют значение 255, так как я использовал их для представления своей организации. Я назначил последней позиции значение 0, поскольку оно служит для представления моей рабочей станции.
Последним шагом является установление связи между компьютерами. Все компьютеры в сети должны применять одно и то же значение организации; в противном случае они не увидят другие компьютеры. Кроме того, все компьютеры обязаны иметь уникальный номер узла. Поскольку число 113 уже используется машиной, конфигурация которой показана на рис. 21.8, я задал для следующего узла значение 114. Необходимо сконфигурировать все компьютеры в сети, прежде чем они смогут взаимодействовать через Internet с сервером вашей рабочей станции.
Проверить эти соединения относительно просто. Windows XP имеет утилиту PING (Packet InterNet Groper – отправитель пакетов Internet), предназначенную для проверки связи компьютера с другими рабочими станциями TCP/IP. Вам нужно ввести в командной строке PING <Имя рабочей станции> или PING <1Р-адрес>. Чтобы проверить, правильно ли сконфигурирована рабочая станция, используйте команду PING; например, впишите PING 192.168.0.113, где 192.168.0.113 определяет вашу рабочую станцию. Вы также можете задать PING <имя_конечного_компьютера> (<PING LocalHost>), поскольку имя_конечного_компьютера – это IP-адрес 127.0.0.1. PING передает три пакета и ждет ответа на свой запрос. Если вы получите три ответа от определенной рабочей станции, значит, она сконфигурирована правильно.
Еще одной полезной утилитой является TraceRT (Trace Route), определяющая точный путь пакета от текущего места до места назначения. Зная маршрут, по которому проходит пакет, можно найти и устранить неисправности сети, такие как вышедший из строя маршрутизатор. TraceRT также поможет понять, почему доступ к определенному адресу в Internet занимает так много времени. Пакеты, проходящие через множество маршрутизаторов, доходят до места назначения гораздо позже, чем проходящие через несколько маршрутизаторов. Каждый маршрутизатор обеспечивает прохождение пакета повторителем (Repeator) по сети в один прогон (в одну передачу или пересылку – hop). Чтобы воспользоваться утилитой, наберите в командной строке TraceRT <Имя_рабочей станции> или TraceRT <IP-адрес>.
Работа с учетными записями пользователей
Для того чтобы сетью можно было пользоваться, необходимо добавить несколько учетных записей. Допустимо добавить учетные записи во время процесса установки, однако многие изменения вносятся после инсталляции Windows XP. Вам придется добавлять новых пользователей в систему и удалять записи в случае ухода сотрудников из вашей организации. Короче говоря, работа с учетными записями пользователей – никогда не прекращающийся процесс.
Windows XP предлагает два подхода к учетным записям. Опция Учетные записи пользователей (User Accounts) на панели управления обеспечивает упрощенный интерфейс, хорошо взаимодействующий с небольшими сетями, но не предоставляет полного доступа ко всем установкам учетных записей пользователей. Оснастка Локальные пользователи и группы (Local Users and Groups snap-in) консоли Управление компьютером (Computer Management) более сложная, чем опция Учетные записи пользователей, но дает полный доступ к информации об учетных записях. Этот подход удобен при обслуживании сетей и рабочих групп малого и среднего размера в пределах организации.
Также необходимо контролировать политику входа в систему для учетных записей пользователей, например обеспечить регулярное обновление паролей через определенные промежутки времени и применение надежных паролей, содержащих достаточно длинный набор разнотипных знаков (цифр, букв, разделителей и т. п.). Важно обеспечить политику управления доступом к данным, которая бы помогала поддерживать безопасность вашей сети.
Опция Учетные записи пользователей
После активизации опции Учетные записи пользователей вы увидите одноименное диалоговое окно, схожее с показанным на рис. 21.9. Здесь содержится список учетных записей пользователей локального компьютера. Я отключил учетную запись Гость (Guest) из соображений безопасности (это встроенная учетная запись, которую нельзя удалить, поэтому единственным выходом будет ее отключение). Для каждой учетной записи устанавливается ее тип и уровень защиты с помощью пароля. Если вы не включите защиту с помощью пароля для учетной записи, она будет доступна для всех.